From a071ef2edd516f82ec3c7277a121ec1730774b12 Mon Sep 17 00:00:00 2001 From: Thomas Constans Date: Tue, 7 Apr 2026 17:02:51 +0200 Subject: [PATCH] burp3 solution --- Readme.md | 12 ++ burp3.spec | 324 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 336 insertions(+) create mode 100644 burp3.spec diff --git a/Readme.md b/Readme.md index fa62114..48e3f0c 100644 --- a/Readme.md +++ b/Readme.md @@ -1,3 +1,15 @@ # Pkg build Adapter le fichier spec permettant la création de burp2 à la nouvelle version stable de burp : la 3.2.0 + +Télécharger les source correspondantes dans ~/rpmbuild/SOURCES + +Copier burp2.spec en burp3.spec + +Adapter le fichier burp3.spec: + + 1. modifier Version ligne12 + 1. supprimer commenter ligne 20 (Patch) et 104 + 1. remplacer les versions dans les lignes provides, requires et conflictk + 1. supprimer / commenter les lignes 186 et 187 (man8/bsig et man8/bsparse) + 1. optionel: rajouter une ligne de changelog diff --git a/burp3.spec b/burp3.spec new file mode 100644 index 0000000..6198273 --- /dev/null +++ b/burp3.spec @@ -0,0 +1,324 @@ + +Name: burp3 +Summary: A Network-based backup and restore program +Version: 3.2.0 +Release: 2%{?dist} +Group: Backup Server +License: AGPLv3 and BSD and GPLv2+ and LGPLv2+ +URL: http://burp.grke.org/ +Source0: https://github.com/grke/burp/releases/download/%{version}/burp-%{version}.tar.bz2 +Source1: burp.init +Source2: burp.service + +%if 0%{?rhel} < 7 +BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) +%endif + +BuildRequires: libtool +BuildRequires: librsync-devel +BuildRequires: zlib-devel +BuildRequires: openssl-devel +BuildRequires: ncurses-devel +BuildRequires: libacl-devel +BuildRequires: uthash-devel +BuildRequires: yajl-devel + +%if 0%{?fedora} >= 36 || 0%{?rhel} >= 9 +BuildRequires: systemd-rpm-macros +%elif 0%{?fedora} >= 19 || 0%{?rhel} >= 7 +BuildRequires: systemd-units +%endif + + +%description +Burp is a network backup and restore program, using client and server. +It uses librsync in order to save network traffic and to save on the +amount of space that is used by each backup. +It also uses VSS (Volume Shadow Copy Service) to make snapshots when +backing up Windows computers. + +%package client +Summary: burp backup client +Group: Backup Server +Requires: librsync >= 1.0 +Provides: burp = %{version}-%{release} +Provides: burp3-client = %{version}-%{release} + +# burp 1.x (burp-) and 2.x (burp3-*) are both available. +# Put conflicts on -client package since -server package relies on it. +Conflicts: burp-client +# for burp < 1.4.40 (package name changed) +Conflicts: burp < 3.2 + + +%description client +Burp is a network backup and restore program, using client and server. +It uses librsync in order to save network traffic and to save on the +amount of space that is used by each backup. +It also uses VSS (Volume Shadow Copy Service) to make snapshots when +backing up Windows computers. + + +%package doc +Summary: Documentation and samples for Burp backup +Group: Backup Server +# RHEL 5 does not support noarch subpackages +%if 0%{?fedora} || 0%{?rhel} >= 6 +BuildArch: noarch +%endif + +%description doc +Burp is a network backup and restore program, using client and server. +It uses librsync in order to save network traffic and to save on the +amount of space that is used by each backup. +It also uses VSS (Volume Shadow Copy Service) to make snapshots when +backing up Windows computers. + + +%package server +Summary: burp backup server +Group: Backup Server +Requires: burp3-client%{?_isa} = %{version}-%{release} +Requires: openssl-perl +Provides: bedup = %{version}-%{release} +Provides: vss_strip = %{version}-%{release} + + +%description server +Burp is a network backup and restore program, using client and server. +It uses librsync in order to save network traffic and to save on the +amount of space that is used by each backup. +It also uses VSS (Volume Shadow Copy Service) to make snapshots when +backing up Windows computers. + +%prep +%setup -q -n burp-%{version} + +%build +%configure --sysconfdir=%{_sysconfdir}/burp --docdir=%{_defaultdocdir}/%{name}-%{version} +make %{?_smp_mflags} + + +%install +# "install-all" target: also install config files and scripts +make install-all DESTDIR=%{buildroot} + +# service files (server) +%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 +mkdir -p %{buildroot}%{_unitdir} +install -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/ +%else +mkdir -p %{buildroot}%{_initrddir} +install -p -m 0755 %{SOURCE1} %{buildroot}%{_initrddir}/burp +%endif + +# -doc: add server scripts examples +%global mydocbuild %{buildroot}%{_defaultdocdir}/%{name}-%{version} +mkdir -p %{mydocbuild}/server/scripts +cp -p configs/server/cron.example %{mydocbuild}/server/. +cp -p configs/server/out_of_date_report_script \ + configs/server/offsite-backup \ + %{mydocbuild}/server/scripts/. + +# -doc: add server config examples (excluding -client's ones) +mkdir -p %{mydocbuild}/server/config/autoupgrade +cp -p configs/server/autoupgrade/*.script %{mydocbuild}/server/config/autoupgrade/. +cp -pr %{buildroot}%{_sysconfdir}/burp/. %{mydocbuild}/server/config/. +rmdir %{mydocbuild}/server/config/CA-client +rm %{mydocbuild}/server/config/burp.conf + +# -doc: add client scripts and config examples +mkdir -p %{mydocbuild}/client +cp -p configs/client/cron.example \ + configs/client/zfs_script \ + %{buildroot}%{_sysconfdir}/burp/burp.conf \ + %{mydocbuild}/client/. + +# -server: do not provide a (test)client +rm %{buildroot}%{_sysconfdir}/burp/clientconfdir/testclient + +%files doc +%{_defaultdocdir}/%{name}-%{version}/ + + +%files client +%defattr(-,root,root,-) +%doc README CHANGELOG DONATIONS TODO CONTRIBUTORS UPGRADING +%if 0%{?rhel} <= 6 + %doc LICENSE +%else + %license LICENSE +%endif +%config(noreplace) %{_sysconfdir}/burp/burp.conf +%dir %{_sysconfdir}/burp/CA-client +%dir %{_sysconfdir}/burp +%{_sbindir}/burp +# yes, burp_ca is needed in client package +%{_sbindir}/burp_ca +%{_mandir}/man8/burp.8* +%{_mandir}/man8/burp_ca.8* + + +%files server +%{_datadir}/burp +%config(noreplace) %{_sysconfdir}/burp/CA.cnf +%config(noreplace) %{_sysconfdir}/burp/burp-server.conf +%config(noreplace) %{_sysconfdir}/burp/clientconfdir/incexc/example +%dir %{_sysconfdir}/burp/clientconfdir/incexc +%dir %{_sysconfdir}/burp/clientconfdir +%dir %{_localstatedir}/spool/burp %attr(750 root root) +%{_bindir}/vss_strip +%{_sbindir}/bsigs +%{_sbindir}/bedup +%{_sbindir}/bsparse +%{_mandir}/man8/vss_strip.8* +%{_mandir}/man8/bedup.8* +%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 +%{_unitdir}/burp.service +%else +%{_initrddir}/burp +%endif + +%post server +%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 +%systemd_post burp.service +%else +/sbin/chkconfig --add burp +%endif + +%preun server +%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 +%systemd_preun burp.service +%else +if [ $1 = 0 ]; then + /sbin/service burp stop > /dev/null 2>&1 + /sbin/chkconfig --del burp +fi +%endif + +%postun server +%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 +%systemd_postun_with_restart burp.service +%else +if [ $1 -eq 2 ]; then + /sbin/service burp upgrade || : +fi +%endif + + +%changelog +* Tuesday Apr 7 2026 Thomas C - 3.2.0 +- up version +* Sun Oct 9 2022 Pierre Bourgin - 2.4.0-2 +- Added build support for el9 and fedora 36+ +- Fix build for fedora 37 + +* Sat May 22 2021 Pierre Bourgin - 2.4.0-1 +- Updated to stable version + +* Thu Mar 07 2019 Pierre Bourgin - 2.2.18-1 +- Updated to stable version + +* Wed Feb 13 2019 Pierre Bourgin - 2.2.16-1 +- Updated to stable version + +* Sat Apr 07 2018 Pierre Bourgin - 2.1.32-1 +- Updated to stable version + +* Tue Jan 03 2017 Pierre Bourgin - 2.0.54-1 +- Updated to latest released version + +* Wed Nov 09 2016 Pierre Bourgin - 2.0.52-1 +- Updated to latest released version + +* Thu Nov 03 2016 Pierre Bourgin - 2.0.50-1 +- Updated to latest released version + +* Sat Oct 01 2016 Pierre Bourgin - 2.0.48-1 +- Updated to latest released version + +* Tue Sep 06 2016 Pierre Bourgin - 2.0.46-1 +- Updated to latest released version + +* Mon Aug 15 2016 Pierre Bourgin - 2.0.44-2 +- Removed 'Provides: burp-server' property (fix https://github.com/yopito/fedora-epel-pkg/issues/2) + +* Thu Aug 04 2016 Pierre Bourgin - 2.0.44-1 +- Updated to latest released version + +* Sun Jul 03 2016 Pierre Bourgin - 2.0.42-1 +- Updated to latest released version + +* Sat Jun 04 2016 Pierre Bourgin - 2.0.40-1 +- Updated to latest released version +- merge spec with el5 branch +- do not use autoreconf anymore +- include fix on status monitor +- do not provide a (test)client configuration + +* Wed May 04 2016 Pierre Bourgin - 2.0.38-2 +- fix ncurses monitoring for a given client ("-C" option) + +* Mon May 02 2016 Pierre Bourgin - 2.0.38-1 +- Bumped to 2.0.38 +- Updated source location to SourceForge + +* Mon Apr 04 2016 Pierre Bourgin - 2.0.36-1 +- Updated to latest released version + +* Wed Mar 02 2016 Pierre Bourgin - 2.0.34-1 +- Initial spec file for burp2 package (forked from burp 1.x) +- Mark conflicts with burp* 1.x packages +- Added burp2-doc package: documentation, config samples +- burp2-server: flag 'testclient' as config file + +* Wed Feb 03 2016 Fedora Release Engineering - 1.4.40-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jul 08 2015 Pierre Bourgin - 1.4.40-1 +- bumped to 1.4.40 +- provides burp-{client,server} packages now. +- rewrite to match EPEL SPEC file (http://pkgs.fedoraproject.org/cgit/burp.git/tree/burp.spec) + +* Wed Jun 17 2015 Fedora Release Engineering - 1.4.36-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Fri May 15 2015 Andrew Niemantsverdriet - 1.4.36.6 +- Added two configuration files so they would not be overwritten on update + +* Wed May 13 2015 Andrew Niemantsverdriet - 1.4.36.5 +- Only use license with compatible operating systems +- Fixed typo _initrdir -> _initddir and made sure the file gets the correct name + +* Wed May 13 2015 Andrew Niemantsverdriet - 1.4.36.4 +- Made systemd-units a conditional BuildRequire + +* Tue May 12 2015 Andrew Niemantsverdriet - 1.4.36-3 +- Updated licence field + +* Sat May 09 2015 Andrew Niemantsverdriet - 1.4.36-2 +- Added systemd-units as a build require + +* Sat May 09 2015 Andrew Niemantsverdriet - 1.4.36-1 +- Updated to latest stable version + +* Fri May 08 2015 Andrew Niemantsverdriet - 1.3.48-6 +- Changed the build require from uthash to uthash-devel + +* Tue Mar 17 2015 Andrew Niemantsverdriet - 1.3.48-5 +- Fixed scriptlets to correctly handle systemd + +* Tue Feb 17 2015 Andrew Niemantsverdriet - 1.3.48-4 +- Added scriptlets to handle systemd + +* Mon Feb 09 2015 Andrew Niemantsverdriet - 1.3.48-3 +- Split BuildRequires into one per line +- Moved the LICENSE file to the license macro +- Fixed spacing issue + +* Mon Feb 02 2015 Andrew Niemantsverdriet - 1.3.48-2 +- removed clean section of spec file +- changed install and files to conform to packaging guideline + +* Tue Nov 25 2014 Andrew Niemantsverdriet - 1.3.48-1 +- Initial spec file