mirror of
https://github.com/narrrl/proton-drive-linux.git
synced 2026-11-04 00:47:00 +01:00
The About dialog's website link, the README, and the package metadata (Cargo, PKGBUILDs, AUR .SRCINFO, .deb, .rpm) now use the project homepage. Source code, issue, and release links stay on GitHub.
108 lines
3.8 KiB
RPMSpec
108 lines
3.8 KiB
RPMSpec
# Local in-tree RPM (mirrors packaging/PKGBUILD).
|
|
# From the repository root:
|
|
# rpmbuild -bb packaging/proton-drive-linux.spec --define "git_dir $PWD" ...
|
|
# %build needs network so cargo can fetch crates.io (same trade-off as the Arch PKGBUILD).
|
|
|
|
%global debug_package %{nil}
|
|
# Match Arch PKGBUILD `!lto` — LTO has broken some GTK/Rust links in practice.
|
|
%global _lto_cflags %{nil}
|
|
|
|
%{!?version: %global version 0.4.0}
|
|
|
|
Name: proton-drive-linux
|
|
Version: %{version}
|
|
Release: 1%{?dist}
|
|
Summary: Unofficial Proton Drive client for Linux (FUSE, CLI, GTK4 app + tray)
|
|
License: MIT
|
|
URL: https://proton-drive.narl.io
|
|
ExclusiveArch: x86_64
|
|
|
|
BuildRequires: cargo
|
|
BuildRequires: rust
|
|
BuildRequires: pkgconf-pkg-config
|
|
BuildRequires: fuse3-devel
|
|
BuildRequires: gtk4-devel
|
|
BuildRequires: libadwaita-devel
|
|
BuildRequires: libsecret-devel
|
|
BuildRequires: dbus-devel
|
|
BuildRequires: glib2-devel
|
|
BuildRequires: webkitgtk6.0-devel
|
|
BuildRequires: gettext
|
|
|
|
Requires: fuse3
|
|
Requires: gtk4
|
|
Requires: libadwaita
|
|
Requires: libsecret
|
|
Requires: webkitgtk6.0
|
|
Requires: perl-Image-ExifTool
|
|
Requires: xdg-utils
|
|
|
|
# DE-specific; do not Require a single desktop environment.
|
|
Recommends: gnome-keyring
|
|
Recommends: iso-codes
|
|
Recommends: gnome-shell-extension-appindicator
|
|
Recommends: kwallet
|
|
|
|
# Only for `pdfs-prompt --fzf`; every other front end works without them.
|
|
Suggests: fzf
|
|
Suggests: foot
|
|
|
|
Provides: pdfs = %{version}-%{release}
|
|
|
|
%description
|
|
Files-on-demand Proton Drive for the Linux desktop: a FUSE virtual mount with
|
|
block-level caching, a scriptable CLI, and a GTK4/Libadwaita desktop app with
|
|
system tray and search launcher. Unofficial and not affiliated with Proton AG.
|
|
|
|
%prep
|
|
# In-tree build: no Source tarball. Pass --define "git_dir /path/to/checkout".
|
|
test -n "%{?git_dir}" || (echo 'Pass --define "git_dir $PWD" from the repo root' >&2; exit 1)
|
|
test -f %{git_dir}/Cargo.toml
|
|
cp -a %{git_dir}/LICENSE .
|
|
%build
|
|
# The release workflow has already built target/release and passes --define "prebuilt 1".
|
|
# rpmbuild exports its own compiler flags, which would make cargo rebuild everything.
|
|
%if 0%{?prebuilt}
|
|
test -x %{git_dir}/target/release/pdfs
|
|
%else
|
|
cd %{git_dir}
|
|
cargo build --release --locked \
|
|
--bin pdfs \
|
|
--bin pdfs-tray \
|
|
--bin pdfs-app \
|
|
--bin pdfs-prompt
|
|
%endif
|
|
|
|
%install
|
|
rel=%{git_dir}/target/release
|
|
install -D -m0755 "$rel/pdfs" %{buildroot}%{_bindir}/pdfs
|
|
install -D -m0755 "$rel/pdfs-tray" %{buildroot}%{_bindir}/pdfs-tray
|
|
install -D -m0755 "$rel/pdfs-app" %{buildroot}%{_bindir}/pdfs-app
|
|
install -D -m0755 "$rel/pdfs-prompt" %{buildroot}%{_bindir}/pdfs-prompt
|
|
|
|
install -D -m0644 %{git_dir}/packaging/io.narl.proton-drive-linux.desktop \
|
|
%{buildroot}%{_datadir}/applications/io.narl.proton-drive-linux.desktop
|
|
install -D -m0644 %{git_dir}/packaging/io.narl.proton-drive-linux-tray.desktop \
|
|
%{buildroot}%{_sysconfdir}/xdg/autostart/io.narl.proton-drive-linux-tray.desktop
|
|
install -D -m0644 %{git_dir}/packaging/io.narl.proton-drive-linux.svg \
|
|
%{buildroot}%{_datadir}/icons/hicolor/scalable/apps/io.narl.proton-drive-linux.svg
|
|
install -D -m0644 %{git_dir}/packaging/proton-drive.service \
|
|
%{buildroot}/usr/lib/systemd/user/proton-drive.service
|
|
%{git_dir}/po/build.sh %{buildroot}%{_datadir}/locale
|
|
|
|
%files
|
|
%license LICENSE
|
|
%{_bindir}/pdfs
|
|
%{_bindir}/pdfs-tray
|
|
%{_bindir}/pdfs-app
|
|
%{_bindir}/pdfs-prompt
|
|
%{_datadir}/applications/io.narl.proton-drive-linux.desktop
|
|
%{_sysconfdir}/xdg/autostart/io.narl.proton-drive-linux-tray.desktop
|
|
%{_datadir}/icons/hicolor/scalable/apps/io.narl.proton-drive-linux.svg
|
|
/usr/lib/systemd/user/proton-drive.service
|
|
%{_datadir}/locale/*/LC_MESSAGES/pdfs.mo
|
|
|
|
%changelog
|
|
* Sun Jul 19 2026 Local Packager - 0.4.0-1
|
|
- Initial Fedora local package (in-tree cargo build).
|