mirror of
https://github.com/duplicati/duplicati.git
synced 2025-11-29 12:00:25 +08:00
This PR updates the RPM spec file to mark the config files as such. This ensures that files will not be replaced during updates if they are modified. Also updated the description slightly to not mention now-defunct services in the description. Also applied this to Debian packages. The agent based installation has been updated slightly to better differentiate it from the the CLI/GUI package. Fixed a bug that prevented the preset file from being installed for the agent. This fixes #6099
164 lines
5.6 KiB
Text
164 lines
5.6 KiB
Text
%define _build_id_links none
|
|
|
|
# Set up some defaults
|
|
%global namer duplicati
|
|
%global installname %{namer}%SERVICENAME%
|
|
%global debug_package %{nil}
|
|
%global alphatag .git
|
|
%global _builddate %BUILDDATE%
|
|
%global _buildversion %BUILDVERSION%
|
|
%global _buildtag %BUILDTAG%
|
|
|
|
# All lines starting with #GUI_ONLY# are removed in CLI builds
|
|
|
|
Name: %{installname}
|
|
Version: %{_buildversion}
|
|
Release: %{_buildtag}
|
|
Icon: duplicati.xpm
|
|
|
|
# Disable auto dependencies as it picks up .Net 2.0 profile
|
|
# and does not support supplying them with 4.5
|
|
# Also, all thirdparty libraries are given as "provides" but they
|
|
# are not installed for use externally
|
|
AutoReqProv: no
|
|
|
|
Summary: Backup client for encrypted online backups
|
|
License: MIT
|
|
URL: https://duplicati.com
|
|
Source0: duplicati-%{_buildversion}.tar.bz2
|
|
Source1: %{namer}-install-recursive.sh
|
|
Source2: %{namer}-install-binaries.sh
|
|
Source3: %{installname}.service
|
|
Source4: %{installname}.default
|
|
#GUI_ONLY#Source5: %{namer}.png
|
|
#GUI_ONLY#Source6: %{namer}.desktop
|
|
#AGENT_ONLY#Source5: %{installname}.preset
|
|
|
|
#GUI_ONLY#BuildRequires: desktop-file-utils
|
|
BuildRequires: systemd
|
|
|
|
Requires: bash
|
|
%DEPENDS%
|
|
|
|
%PROVIDES%
|
|
|
|
%description
|
|
Duplicati is a free backup client that securely stores encrypted,
|
|
incremental, compressed backups on cloud storage services and remote file
|
|
servers. It supports targets like Amazon S3, Backblaze B2,
|
|
Microsoft OneDrive, WebDAV, SSH, FTP (and many more).
|
|
|
|
Duplicati has built-in AES-256 encryption and backups be can signed using
|
|
GNU Privacy Guard. A built-in scheduler makes sure that backups are always
|
|
up-to-date. Last but not least, Duplicati provides various options and
|
|
tweaks like filters, deletion rules, transfer and bandwidth options to run
|
|
backups for specific purposes.
|
|
|
|
%prep
|
|
%setup -q -n %{installname}-%{_buildversion}
|
|
|
|
%build
|
|
|
|
# Build is expected to be complete
|
|
# so no build action is performed
|
|
|
|
%install
|
|
|
|
#GUI_ONLY#install -d %{buildroot}%{_datadir}/pixmaps/
|
|
install -d %{buildroot}%{_exec_prefix}/lib/%{installname}/
|
|
install -d %{buildroot}%{_exec_prefix}/lib/%{installname}/licenses/
|
|
install -d %{buildroot}%{_exec_prefix}/lib/%{installname}/webroot/
|
|
install -d %{buildroot}%{_exec_prefix}/lib/%{installname}/lvm-scripts/
|
|
install -d %{buildroot}%{_exec_prefix}/bin/
|
|
install -d %{buildroot}%{_unitdir}
|
|
install -d %{buildroot}%{_sysconfdir}/sysconfig/
|
|
|
|
|
|
# Remove packaging artifacts
|
|
find . -type f -name ._\* | xargs rm -rf
|
|
|
|
# Install all files, but the list is too long to be in the script itself :/
|
|
/bin/bash %{_topdir}/SOURCES/%{namer}-install-recursive.sh "." "%{buildroot}%{_exec_prefix}/lib/%{installname}/"
|
|
|
|
# Move the icon in to place
|
|
#GUI_ONLY#install -p %{_topdir}/SOURCES/%{namer}.png %{buildroot}%{_datadir}/pixmaps/
|
|
|
|
# Fix executable permissions and install symlinks
|
|
/bin/bash %{_topdir}/SOURCES/%{namer}-install-binaries.sh "%{buildroot}" "%{_exec_prefix}" "%{installname}"
|
|
|
|
#GUI_ONLY#desktop-file-install %{_topdir}/SOURCES/%{namer}.desktop
|
|
|
|
# Install the service:
|
|
install -p -D -m 644 %{_topdir}/SOURCES/%{namer}%SERVICENAME%.service %{buildroot}%{_unitdir}
|
|
install -p -D -m 644 %{_topdir}/SOURCES/%{namer}%SERVICENAME%.default %{buildroot}%{_sysconfdir}/sysconfig/%{installname}
|
|
#AGENT_ONLY#install -p -D -m 644 %{_topdir}/SOURCES/%{installname}.preset %{buildroot}%{_presetdir}/50-%{installname}.preset
|
|
|
|
%post
|
|
#GUI_ONLY#/bin/touch --no-create %{_datadir}/icons/hicolor || :
|
|
#GUI_ONLY#%{_bindir}/gtk-update-icon-cache \
|
|
#GUI_ONLY# --quiet %{_datadir}/icons/hicolor 2> /dev/null|| :
|
|
%systemd_post %{installname}.service
|
|
|
|
%preun
|
|
%systemd_preun %{installname}.service
|
|
|
|
%postun
|
|
#GUI_ONLY#/bin/touch --no-create %{_datadir}/icons/hicolor || :
|
|
#GUI_ONLY#%{_bindir}/gtk-update-icon-cache \
|
|
#GUI_ONLY# --quiet %{_datadir}/icons/hicolor 2> /dev/null|| :
|
|
%systemd_postun_with_restart %{installname}.service
|
|
|
|
%posttrans
|
|
#GUI_ONLY#/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
|
|
|
|
|
%files
|
|
%doc changelog.txt licenses/license.txt
|
|
#GUI_ONLY#%{_datadir}/*/*
|
|
%{_exec_prefix}/lib/*
|
|
%{_exec_prefix}/bin/*
|
|
%config(noreplace) %{_sysconfdir}/sysconfig/%{installname}
|
|
#AGENT_ONLY#%{_presetdir}/50-%{installname}.preset
|
|
|
|
%changelog
|
|
* Mon May 19 2025 Kenneth Skovhede <kenneth@duplicati.com> - 2.0.0-0.20250519.git
|
|
- Fixed config files not being overwritten
|
|
- Moved agent files into separate folder to allow cli and agent to co-exist
|
|
|
|
* Wed May 22 2024 Kenneth Skovhede <kenneth@duplicati.com> - 2.0.0-0.20240522.git
|
|
- Split for CLI and GUI package
|
|
|
|
* Tue Apr 9 2024 Kenneth Skovhede <kenneth@duplicati.com> - 2.0.0-0.20240409.git
|
|
- Fix package binaries installing and systemd service
|
|
|
|
* Mon Mar 25 2024 Kenneth Skovhede <kenneth@duplicati.com> - 2.0.0-0.20240325.git
|
|
- Updated to build from arch-specific .Net8 binaries
|
|
|
|
* Wed Jun 21 2017 Kenneth Skovhede <kenneth@duplicati.com> - 2.0.0-0.20170621.git
|
|
- Added the service file to the install
|
|
|
|
* Thu Apr 28 2016 Kenneth Skovhede <kenneth@duplicati.com> - 2.0.0-0.20160423.git
|
|
- Made a binary version of the spec file
|
|
|
|
* Sat Apr 23 2016 Kenneth Skovhede <kenneth@duplicati.com> - 2.0.0-0.20160423.git
|
|
- Updated list of dependencies
|
|
|
|
* Thu Mar 27 2014 Kenneth Skovhede <kenneth@duplicati.com> - 2.0.0-0.20140326.git
|
|
- Moved to /usr/lib
|
|
- Fixed minor build issues
|
|
|
|
* Wed Mar 26 2014 Kenneth Skovhede <kenneth@duplicati.com> - 2.0.0-0.20140326.git
|
|
- Updated patch files
|
|
- Fixed minor build issues
|
|
|
|
* Wed May 29 2013 Ismael Olea <ismael@olea.org> - 2.0.0-0.20130529.git
|
|
- removed MacOSX support and deps
|
|
- first compiler building spec
|
|
|
|
* Mon May 13 2013 Ismael Olea <ismael@olea.org> - 1.3.4-1
|
|
- removing desktop contents
|
|
|
|
* Sun May 12 2013 Ismael Olea <ismael@olea.org> - 1.3.4-0
|
|
- first dirty package for upstream compiled binary
|
|
|
|
|