Blame SPECS/rear.spec

3adda6
3adda6
Summary:    Relax-and-Recover is a Linux disaster recovery and system migration tool
3adda6
Name:       rear
3adda6
Version:    2.4
3adda6
Release:    11%{?dist}
3adda6
License:    GPLv3
3adda6
Group:      Applications/File
3adda6
URL:        http://relax-and-recover.org/
3adda6
3adda6
Source0:    https://github.com/rear/rear/archive/%{version}.tar.gz#/rear-%{version}.tar.gz
3adda6
Patch4:  rear-bz1492177-warning.patch
3adda6
Patch6:  rear-rhbz1610638.patch
3adda6
Patch7:  rear-rhbz1610647.patch
3adda6
Patch8:  rear-bz1652828-bz1652853.patch
3adda6
Patch9:  rear-bz1631183.patch
3adda6
Patch10: rear-bz1639705.patch
3adda6
Patch11: rear-bz1653214.patch
3adda6
Patch12: rear-bz1659137.patch
3adda6
Patch14: rear-bz1672938.patch
3adda6
Patch15: rear-bz1685166.patch
3adda6
Patch16: rear-bz1655956.patch
3adda6
Patch17: rear-bz1732328.patch
3adda6
Patch18: rear-bz1726982.patch
3adda6
Patch19: rear-bz1693608.patch
3adda6
Patch20: rear-bz1700807.patch
3adda6
Patch21: rear-bz1711123.patch
3adda6
Patch22: rear-bz1692575.patch
3adda6
Patch23: rear-sfdc02343208.patch
3adda6
3adda6
ExcludeArch: s390x
3adda6
ExcludeArch: s390
3adda6
3adda6
### Dependencies on all distributions
3adda6
BuildRequires:   asciidoc
3adda6
Requires:   binutils
3adda6
Requires:   ethtool
3adda6
Requires:   gzip
3adda6
Requires:   iputils
3adda6
Requires:   parted
3adda6
Requires:   tar
3adda6
Requires:   openssl
3adda6
Requires:   gawk
3adda6
Requires:   attr
3adda6
Requires:   bc
3adda6
3adda6
### If you require NFS, you may need the below packages
3adda6
#Requires:  nfsclient portmap rpcbind
3adda6
3adda6
### We drop LSB requirements because it pulls in too many dependencies
3adda6
### The OS is hardcoded in /etc/rear/os.conf instead
3adda6
#Requires:  redhat-lsb
3adda6
3adda6
### Required for Bacula/MySQL support
3adda6
#Requires:  bacula-mysql
3adda6
3adda6
### Required for OBDR
3adda6
#Requires:  lsscsi sg3_utils
3adda6
3adda6
### Optional requirement
3adda6
#Requires:  cfg2html
3adda6
3adda6
%ifarch x86_64 i686
3adda6
Requires:   syslinux
3adda6
%endif
3adda6
%ifarch ppc ppc64
3adda6
Requires:   yaboot
3adda6
%endif
3adda6
3adda6
Requires:   crontabs
3adda6
Requires:   iproute
3adda6
Requires:   xorriso
3adda6
3adda6
# mingetty is not available anymore with RHEL 7 (use agetty instead via systemd)
3adda6
# Note that CentOS also has %rhel defined so there is no need to use %centos
3adda6
%if 0%{?rhel} && 0%{?rhel} > 6
3adda6
Requires:   util-linux
3adda6
%else
3adda6
Requires:   mingetty
3adda6
Requires:   util-linux
3adda6
%endif
3adda6
3adda6
### The rear-snapshot package is no more
3adda6
#Obsoletes: rear-snapshot
3adda6
3adda6
%description
3adda6
Relax-and-Recover is the leading Open Source disaster recovery and system
3adda6
migration solution. It comprises of a modular
3adda6
frame-work and ready-to-go workflows for many common situations to produce
3adda6
a bootable image and restore from backup using this image. As a benefit,
3adda6
it allows to restore to different hardware and can therefore be used as
3adda6
a migration tool as well.
3adda6
3adda6
Currently Relax-and-Recover supports various boot media (incl. ISO, PXE,
3adda6
OBDR tape, USB or eSATA storage), a variety of network protocols (incl.
3adda6
sftp, ftp, http, nfs, cifs) as well as a multitude of backup strategies
3adda6
(incl.  IBM TSM, HP DataProtector, Symantec NetBackup, EMC NetWorker,
3adda6
Bacula, Bareos, BORG, Duplicity, rsync).
3adda6
3adda6
Relax-and-Recover was designed to be easy to set up, requires no maintenance
3adda6
and is there to assist when disaster strikes. Its setup-and-forget nature
3adda6
removes any excuse for not having a disaster recovery solution implemented.
3adda6
3adda6
Professional services and support are available.
3adda6
3adda6
%pre
3adda6
if [ $1 -gt 1 ] ; then
3adda6
# during upgrade remove obsolete directories
3adda6
%{__rm} -rf %{_datadir}/rear/output/NETFS
3adda6
fi
3adda6
3adda6
%prep
3adda6
%setup 
3adda6
%patch4 -p1
3adda6
%patch6 -p1
3adda6
%patch7 -p1
3adda6
%patch8 -p1
3adda6
%patch9 -p1
3adda6
%patch10 -p1
3adda6
%patch11 -p1
3adda6
%patch12 -p1
3adda6
%patch14 -p1
3adda6
%patch15 -p1
3adda6
%patch16 -p1
3adda6
%patch17 -p1
3adda6
%patch18 -p1
3adda6
%patch19 -p1
3adda6
%patch20 -p1
3adda6
%patch21 -p1
3adda6
%patch22 -p1
3adda6
%patch23 -p1
3adda6
3adda6
echo "30 1 * * * root /usr/sbin/rear checklayout || /usr/sbin/rear mkrescue" >rear.cron
3adda6
3adda6
### Add a specific os.conf so we do not depend on LSB dependencies
3adda6
%{?fedora:echo -e "OS_VENDOR=Fedora\nOS_VERSION=%{?fedora}" >etc/rear/os.conf}
3adda6
%{?rhel:echo -e "OS_VENDOR=RedHatEnterpriseServer\nOS_VERSION=%{?rhel}" >etc/rear/os.conf}
3adda6
3adda6
%build
3adda6
# asciidoc writes a timestamp to files it produces, based on the last
3adda6
# modified date of the source file, but is sensible to the timezone.
3adda6
# This makes the results differ according to the timezone of the build machine
3adda6
# and spurious changes will be seen.
3adda6
# Set the timezone to UTC as a workaround.
3adda6
# https://wiki.debian.org/ReproducibleBuilds/TimestampsInDocumentationGeneratedByAsciidoc
3adda6
TZ=UTC %{__make} -C doc
3adda6
3adda6
%install
3adda6
%{__rm} -rf %{buildroot}
3adda6
%{__make} install DESTDIR="%{buildroot}"
3adda6
%{__install} -Dp -m0644 rear.cron %{buildroot}%{_sysconfdir}/cron.d/rear
3adda6
#%{__install} -Dp -m0644 etc/udev/rules.d/62-rear-usb.rules %{buildroot}%{_sysconfdir}/udev/rules.d/62-rear-usb.rules
3adda6
3adda6
%files
3adda6
%defattr(-, root, root, 0755)
3adda6
%doc MAINTAINERS COPYING README.adoc doc/*.txt doc/user-guide/relax-and-recover-user-guide.html
3adda6
%doc %{_mandir}/man8/rear.8*
3adda6
%config(noreplace) %{_sysconfdir}/cron.d/rear
3adda6
%config(noreplace) %{_sysconfdir}/rear/
3adda6
#%config(noreplace) %{_sysconfdir}/udev/rules.d/62-rear-usb.rules
3adda6
%{_datadir}/rear/
3adda6
%{_localstatedir}/lib/rear/
3adda6
%{_sbindir}/rear
3adda6
3adda6
%changelog
3adda6
* Tue Aug 27 2019 Pavel Cahyna <pcahyna@redhat.com> - 2.4-11
3adda6
- Apply upstream PR2122: add additional NBU library path to fix support for
3adda6
  NetBackup 8.
3adda6
  Resolves: rhbz1700807
3adda6
- Apply upstream PR212: Be safe against empty docker_root_dir (issue 1989)
3adda6
  Resolves: rhbz1711123, where ReaR can not create a backup in rescue mode,
3adda6
  because it thinks that the Docker daemon is running and hits the problem
3adda6
  with empty docker_root_dir.
3adda6
- Apply upstream PR2223 and commit 36cf20e to avoid an empty string in the
3adda6
  list of users to clone, which can lead to bash overflow with lots of users
3adda6
  and groups per user and to wrong passwd/group files in the rescue system.
3adda6
  Resolves: rhbz1692575
3adda6
- Backport of Upstream fix for issue 2035: /run is not mounted in the rescue
3adda6
  chroot, which causes LVM to hang, especially if rebuilding initramfs.
3adda6
  Resolves: rhbz1697815
3adda6
- Backport upstream PR 2218: avoid keeping build dir on errors
3adda6
  by default when used noninteractively
3adda6
  Resolves: rhbz1693608
3adda6
3adda6
* Wed Jul 31 2019 Pavel Cahyna <pcahyna@redhat.com> - 2.4-9
3adda6
- Apply upstream PR2173 - Cannot restore using Bacula method
3adda6
  due to "bconsole" not showing its prompt
3adda6
  Resolves: rhbz1726982
3adda6
3adda6
* Tue Jul 30 2019 Pavel Cahyna <pcahyna@redhat.com> - 2.4-8
3adda6
- Backport fix for upstream issue 2187 (disklayout.conf file contains
3adda6
  duplicate lines, breaking recovery in migration mode or when
3adda6
  thin pools are used). PR2194, 2196.
3adda6
  Resolves: rhbz1732328
3adda6
3adda6
* Tue Mar 26 2019 Pavel Cahyna <pcahyna@redhat.com> - 2.4-7
3adda6
- Backport fix for upstream bug 1913 (backup succeeds in case of tar error)
3adda6
  Resolves: rhbz1631183
3adda6
- Apply upstream patch PR1885
3adda6
  Partition information recorded is unexpected when disk has 4K block size
3adda6
  Resolves: rhbz1610638
3adda6
- Apply upstream patch PR1887
3adda6
  LPAR/PPC64 bootlist is incorrectly set when having multiple 'prep' partitions
3adda6
  Resolves: rhbz1610647
3adda6
- Apply upstream patch PR1993
3adda6
  Automatically exclude $BUILD_DIR from the backup
3adda6
  Resolves: rhbz1655956
3adda6
- Require xorriso instead of genisoimage, it is now the preferred method
3adda6
  and supports files over 4GB in size.
3adda6
  Resolves: rhbz1462189
3adda6
3adda6
* Wed Mar 13 2019 Pavel Cahyna <pcahyna@redhat.com> - 2.4-5
3adda6
- Apply upstream PR2065 (record permanent MAC address for team members)
3adda6
  Resolves: rhbz1685166
3adda6
3adda6
* Tue Feb 26 2019 Pavel Cahyna <pcahyna@redhat.com> - 2.4-4
3adda6
- Apply upstream PR2034 (multipath optimizations for lots of devices)
3adda6
3adda6
* Thu Jan 03 2019 Pavel Cahyna <pcahyna@redhat.com> - 2.4-3
3adda6
- Backport fixes for upstream bugs 1974 and 1975
3adda6
- Apply upstream PR1954 (record permanent MAC address for bond members)
3adda6
- Apply upstream PR2004 (support for custom network interface naming)
3adda6
- Backport fix for upstream bug 1926 (support for LACP bonding and teaming)
3adda6
3adda6
* Wed Jul 18 2018 Pavel Cahyna <pcahyna@redhat.com> - 2.4-2
3adda6
- Build and install the HTML user guide. #1418459
3adda6
3adda6
* Wed Jun 27 2018 Pavel Cahyna <pcahyna@redhat.com> - 2.4-1
3adda6
- Rebase to version 2.4, drop patches integrated upstream
3adda6
  Resolves #1534646 #1484051 #1498828 #1571266 #1496518
3adda6
3adda6
* Wed Feb 14 2018 Pavel Cahyna <pcahyna@redhat.com> - 2.00-6
3adda6
- Ensure that NetBackup is started automatically upon recovery (PR#1544)
3adda6
  Also do not kill daemons spawned by sysinit.service at the service's end
3adda6
  (PR#1610, applies to NetBackup and also to dhclient)
3adda6
  Resolves #1506231
3adda6
- Print a warning if grub2-mkimage is about to fail and suggest what to do.
3adda6
  bz#1492177
3adda6
- Update the patch for #1388653 to the one actually merged upstream (PR1418)
3adda6
3adda6
* Fri Jan 12 2018 Pavel Cahyna <pcahyna@redhat.com> - 2.00-5
3adda6
- cd to the correct directory before md5sum to fix BACKUP_INTEGRITY_CHECK.
3adda6
  Upstream PR#1685, bz1532676
3adda6
3adda6
* Mon Oct 23 2017 Pavel Cahyna <pcahyna@redhat.com> - 2.00-4
3adda6
- Retry get_disk_size to fix upstream #1370, bz1388653
3adda6
3adda6
* Wed Sep 13 2017 Pavel Cahyna <pcahyna@redhat.com> - 2.00-3
3adda6
- Fix rear mkrescue on systems w/o UEFI. Upstream PR#1481 issue#1478
3adda6
- Resolves: #1479002
3adda6
3adda6
* Wed May 17 2017 Jakub Mazanek <jmazanek@redhat.com> - 2.00-2
3adda6
- Excluding Archs s390 and s390x
3adda6
- Related #1355667
3adda6
3adda6
* Mon Feb 20 2017 Jakub Mazanek <jmazanek@redhat.com> - 2.00-1
3adda6
- Rebase to version 2.00 
3adda6
- Resolves #1355667
3adda6
3adda6
* Tue Jul 19 2016 Petr Hracek <phracek@redhat.com> - 1.17.2-6
3adda6
- Replace experimental grep -P with grep -E
3adda6
Resolves: #1290205
3adda6
3adda6
* Wed Mar 23 2016 Petr Hracek <phracek@redhat.com> - 1.17.2-5
3adda6
- Remove backuped patched files
3adda6
Related: #1283930
3adda6
3adda6
* Wed Mar 23 2016 Petr Hracek <phracek@redhat.com> - 1.17.2-4
3adda6
- Rear recovery over teaming interface will not work
3adda6
Resolves: #1283930
3adda6
3adda6
* Tue Mar 08 2016 Petr Hracek <phracek@redhat.com> - 1.17.2-3
3adda6
- Replace experimental grep -P with grep -E
3adda6
Resolves: #1290205
3adda6
3adda6
* Tue Feb 23 2016 Petr Hracek <phracek@redhat.com> - 1.17.2-2
3adda6
- rear does not require syslinux
3adda6
- changing to arch package so that syslinux is installed
3adda6
- Resolves: #1283927
3adda6
3adda6
* Mon Sep 14 2015 Petr Hracek <phracek@redhat.com> - 1.17.2-1
3adda6
- New upstream release 1.17.2
3adda6
Related: #1059196
3adda6
3adda6
* Wed May 13 2015 Petr Hracek <phracek@redhat.com> 1.17.0-2
3adda6
- Fix Source tag
3adda6
Related: #1059196
3adda6
3adda6
* Mon May 04 2015 Petr Hracek <phracek@redhat.com> 1.17.0-1
3adda6
- Initial package for RHEL 7
3adda6
Resolves: #1059196
3adda6
3adda6
* Fri Oct 17 2014 Gratien D'haese <gratien.dhaese@gmail.com>
3adda6
- added the suse_version lines to identify the corresponding OS_VERSION
3adda6
3adda6
* Fri Jun 20 2014 Gratien D'haese <gratien.dhaese@gmail.com>
3adda6
- add %%pre section
3adda6
3adda6
* Thu Apr 11 2013 Gratien D'haese <gratien.dhaese@gmail.com>
3adda6
- changes Source
3adda6
3adda6
* Thu Jun 03 2010 Dag Wieers <dag@wieers.com>
3adda6
- Initial package. (using DAR)