1 Summary: Relax-and-Recover is a Linux disaster recovery and system migration tool
5 License: GPL-2.0+ and GPL-3.0
6 Group: Applications/File
7 # as GitHub stopped with download section we need to go back to Sourceforge for downloads
8 Source0: https://sourceforge.net/projects/rear/files/rear/%{version}/%{name}-%{version}.tar.gz
9 # Source0-md5: ce12c1c036207e71750d64d89c072b55
11 URL: http://relax-and-recover.org/
12 # rear contains only bash scripts plus documentation so that on first glance it could be "BuildArch: noarch"
13 # but actually it is not "noarch" because it only works on those architectures that are explicitly supported.
14 # Of course the rear bash scripts can be installed on any architecture just as any binaries can be installed on any architecture.
15 # But the meaning of architecture dependent packages should be on what architectures they will work.
16 # Therefore only those architectures that are actually supported are explicitly listed.
17 # This avoids that rear can be "just installed" on architectures that are actually not supported (e.g. ARM or IBM z Systems):
18 ExclusiveArch: %{ix86} %{x8664} x32 ppc ppc64 ppc64le
19 # Furthermore for some architectures it requires architecture dependent packages (like syslinux for x86 and x86_64)
20 # so that rear must be architecture dependent because ifarch conditions never match in case of "BuildArch: noarch"
21 # see the GitHub issue https://github.com/rear/rear/issues/629
22 %ifarch %{ix86} %{x8664}
25 # In the end this should tell the user that rear is known to work only on ix86 x86_64 ppc ppc64 ppc64le
26 # and on ix86 x86_64 syslinux is explicitly required to make the bootable ISO image
27 # (in addition to the default installed bootloader grub2) while on ppc ppc64 the
28 # default installed bootloader yaboot is also useed to make the bootable ISO image.
29 ### Dependencies on all distributions
39 ### If you require NFS, you may need the below packages
40 #Requires: nfsclient portmap rpcbind
41 ### We drop LSB requirements because it pulls in too many dependencies
42 ### The OS is hardcoded in /etc/rear/os.conf instead
44 ### Required for Bacula/MySQL support
45 #Requires: bacula-mysql
47 #Requires: lsscsi sg3_utils
48 ### Optional requirement
50 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
53 Relax-and-Recover is the leading Open Source disaster recovery and
54 system migration solution. It comprises of a modular frame-work and
55 ready-to-go workflows for many common situations to produce a bootable
56 image and restore from backup using this image. As a benefit, it
57 allows to restore to different hardware and can therefore be used as a
58 migration tool as well.
60 Currently Relax-and-Recover supports various boot media (incl. ISO,
61 PXE, OBDR tape, USB or eSATA storage), a variety of network protocols
62 (incl. sftp, ftp, http, nfs, cifs) as well as a multitude of backup
63 strategies (incl. IBM TSM, HP DataProtector, Symantec NetBackup, EMC
64 NetWorker, Bacula, Bareos, rsync).
66 Relax-and-Recover was designed to be easy to set up, requires no
67 maintenance and is there to assist when disaster strikes. Its
68 setup-and-forget nature removes any excuse for not having a disaster
69 recovery solution implemented.
71 Professional services and support are available.
76 ### Add a specific os.conf so we do not depend on LSB dependencies
77 cat <<EOF> etc/rear/os.conf
79 OS_VERSION=%{pld_release}
83 rm -rf $RPM_BUILD_ROOT
85 DESTDIR="$RPM_BUILD_ROOT"
87 install -d $RPM_BUILD_ROOT/etc/cron.d/rear
88 cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/cron.d/rear
91 rm -rf $RPM_BUILD_ROOT
94 if [ $1 -gt 1 ] ; then
95 # during upgrade remove obsolete directories
96 %{__rm} -rf %{_datadir}/rear/output/NETFS
100 %defattr(644,root,root,755)
101 %doc AUTHORS COPYING README.adoc doc/*.txt
102 %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/rear
103 %dir %{_sysconfdir}/%{name}
104 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/local.conf
105 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/os.conf
106 %attr(755,root,root) %{_sbindir}/rear
107 %{_mandir}/man8/rear.8*
109 %{_localstatedir}/lib/%{name}