]> git.pld-linux.org Git - packages/amanda.git/blobdiff - amanda.spec
- many small fixes, mostly inpired by kloczek
[packages/amanda.git] / amanda.spec
index 2ce0c7f96912054fcc36d82a381e8cb2f656bb93..e9d0027fb399bf66d5611782e362e782e4322af2 100644 (file)
@@ -1,24 +1,28 @@
+#
+# Conditional build:
+# _with_xfs    - with support for xfsdump
+#
 Summary:       A network-capable tape backup solution
 Summary(pl):   Sieciowo zorientowany system tworzenia kopii zapasowych
 Name:          amanda
-Version:       2.4.2p2
-Release:       4
+Version:       2.4.4
+Release:       1
 License:       BSD
 Group:         Networking/Utilities
-Group(de):     Netzwerkwesen/Werkzeuge
-Group(pl):     Sieciowe/Narzêdzia
-Source0:       ftp://ftp.amanda.org/pub/amanda/%{name}-%{version}.tar.gz
+Source0:       http://dl.sourceforge.net/amanda/%{name}-%{version}.tar.gz
+# Source0-md5: 1f5f0c636707994eb7b5e74b19528323
 Source1:       %{name}-srv.crontab
 Source2:       %{name}.inetd
 Source3:       %{name}idx.inetd
 Source4:       amidxtape.inetd
 Source5:       %{name}.conf
 Patch0:                %{name}-no_libnsl.patch
-Patch1:                %{name}-am_fixes.patch
-Patch2:                %{name}-bug18322.patch
-Patch3:                %{name}-build_tapetype.patch
-Patch4:                %{name}-no_private_libtool.m4.patch
-BuildRequires: autoconf
+Patch1:                %{name}-bug18322.patch
+Patch2:                %{name}-no_private_libtool.m4.patch
+Patch3:                %{name}-ac25x.patch
+Patch4:                %{name}-chg-zd-mtx-sh.patch
+URL:           http://www.amanda.org/
+BuildRequires: autoconf >= 2.53
 BuildRequires: automake
 BuildRequires: cpio
 BuildRequires: dump
@@ -27,15 +31,14 @@ BuildRequires:      gnuplot
 BuildRequires: libtool
 BuildRequires: readline-devel >= 4.2
 BuildRequires: tar
-Prereq:                /sbin/ldconfig
-URL:           http://www.amanda.org/
+%{?_with_xfs:BuildRequires:    xfsdump}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _sysconfdir     /etc
-%define                _localstatedir  /var
+%define                _localstatedir  /var/lib
 %define                _libexecdir     %{_libdir}/amanda
 
-%description 
+%description
 AMANDA, the Advanced Maryland Automatic Network Disk Archiver, is a
 backup system that allows the administrator of a LAN to set up a
 single master backup server to back up multiple hosts to a single
@@ -62,49 +65,52 @@ amanda-client i amanda-server!
 Summary:       Amanda shared libraries
 Summary(pl):   Biblioteki wspó³dzielone pakietu amanda
 Group:         Networking/Utilities
-Group(de):     Netzwerkwesen/Werkzeuge
-Group(pl):     Sieciowe/Narzêdzia
+Requires(pre): /usr/bin/getgid
+Requires(pre): /bin/id
+Requires(pre): /usr/sbin/groupadd
+Requires(pre): /usr/sbin/useradd
+Requires(postun):      /usr/sbin/groupdel
+Requires(postun):      /usr/sbin/userdel
+Requires(postun):      /sbin/ldconfig
 
 %description libs
 Amanda shared libraries.
 
-%description -l pl libs
+%description libs -l pl
 Biblioteki wspó³dzielone pakietu amanda.
 
 %package client
 Summary:       The client side of Amanda
 Summary(pl):   Klient Amandy
 Group:         Networking/Utilities
-Group(de):     Netzwerkwesen/Werkzeuge
-Group(pl):     Sieciowe/Narzêdzia
-Prereq:                /sbin/ldconfig
-Prereq:                %{name}-libs = %{version}
+PreReq:                %{name}-libs = %{version}
+PreReq:                rc-inetd
+Requires(post,postun): /sbin/ldconfig
+Conflicts:     tar < 1.13
 
 %description client
 The Amanda-client package should be installed on any machine that will
 be backed up by AMANDA (including the server if it also needs to be
 backed up). You will also need to install the amanda package to each
-AMANDA client.
+AMANDA client. It requires at least one of dump and GNU tar installed.
 
-%description -l pl client
+%description client -l pl
 Ten pakiet powinien byæ zainstalowany ma maszynach, z których
-zawarto¶ci bêd± tworzone kopie zapasowe.
+zawarto¶ci bêd± tworzone kopie zapasowe. Wymaga zainstalowanego co
+najmniej jednego z pakietów dump i GNU tar.
 
 %package server
 Summary:       The server side of Amanda
 Summary(pl):   Serwer Amandy
 Group:         Networking/Utilities
-Group(de):     Netzwerkwesen/Werkzeuge
-Group(pl):     Sieciowe/Narzêdzia
-Prereq:                rc-inetd
-Prereq:                /sbin/ldconfig
+PreReq:                %{name}-libs = %{version}
+PreReq:                rc-inetd
+Requires(post,postun): /sbin/ldconfig
 Requires:      gnuplot
-Requires:      tar
-Requires:      cpio
-Requires:      dump
 Requires:      crondaemon
 Requires:      /etc/cron.d
-Prereq:                %{name}-libs = %{version}
+Requires:      mt-st
+Requires:      mtx
 
 %description server
 The amanda-server package should be installed on the AMANDA server,
@@ -113,7 +119,7 @@ backups will be written. You will also need to install the amanda
 package to the AMANDA server. And, if the server is also to be backed
 up, the server also needs to have the amanda-client package installed.
 
-%description -l pl server
+%description server -l pl
 Ten pakiet powinien byæ zainstalowanych na maszynach, na których bêd±
 magazynowane kopie zapasowe (lub do których podpiête s± urz±dzenia
 typu streamer).
@@ -127,12 +133,12 @@ typu streamer).
 %patch4 -p1
 
 %build
-libtoolize --copy --force
-aclocal
-autoconf
 touch COPYING
 rm -f missing
-automake -a -c
+%{__libtoolize}
+%{__aclocal}
+%{__autoconf}
+%{__automake}
 %configure \
        --disable-static \
        --enable-shared \
@@ -147,14 +153,17 @@ automake -a -c
        --with-bsd-security \
        --with-buffered-dump \
        --with-amandahosts \
-        --with-debugging=%{_localstatedir}/lib/amanda/debug
+        --with-debugging=%{_localstatedir}/amanda/debug \
+       --with-gnutar-listdir=%{_localstatedir}/amanda/gnutar-lists \
+       --with-tmpdir=/var/tmp
 
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{amanda,cron.d,sysconfig/rc-inetd} \
-       $RPM_BUILD_ROOT%{_localstatedir}/lib/amanda
+       $RPM_BUILD_ROOT%{_localstatedir}/amanda/gnutar-lists \
+       $RPM_BUILD_ROOT%{_mandir}/man1
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT \
@@ -166,9 +175,9 @@ install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/amandaidx
 install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/amidxtape
 
 install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/amanda
-install example/*.ps $RPM_BUILD_ROOT%{_localstatedir}/lib/amanda
+install example/*.ps $RPM_BUILD_ROOT%{_localstatedir}/amanda
 
-gzip -9nf docs/*
+> $RPM_BUILD_ROOT%{_sysconfdir}/amandates
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -176,17 +185,34 @@ rm -rf $RPM_BUILD_ROOT
 %triggerpostun -- amanda-libs < 2.4.2p2-3
 /usr/sbin/chsh -s /bin/sh amanda
 
+%triggerpostun -- amanda-libs < 2.4.2p2-12
+/usr/sbin/usermod -G disk amanda
+
 %pre libs
-/usr/sbin/groupadd -g 80 -r -f amanda
-/usr/sbin/useradd -u 80 -r -d /var/lib/amanda -s /bin/sh -c "Amanda Backup user" -g amanda amanda
+if [ -n "`/usr/bin/getgid amanda`" ]; then
+       if [ "`getgid amanda`" != "80" ]; then
+               echo "Error: group amanda doesn't have gid=80. Correct this before installing amanda-libs." 1>&2
+               exit 1
+       fi
+else
+       /usr/sbin/groupadd -g 80 -r -f amanda
+fi
+if [ -n "`/bin/id -u amanda 2>/dev/null`" ]; then
+       if [ "`/bin/id -u amanda`" != "80" ]; then
+               echo "Error: user amanda doesn't have uid=80. Correct this before installing amanda-libs." 1>&2
+               exit 1
+       fi
+else
+       /usr/sbin/useradd -u 80 -G disk -r -d /var/lib/amanda -s /bin/sh -c "Amanda Backup user" -g amanda amanda 1>&2
+fi
 
 %post   libs -p /sbin/ldconfig
 
-%preun libs
+%postun libs
 /sbin/ldconfig
 if [ "$1" = "0" ]; then
-       /usr/sbin/groupdel amanda
        /usr/sbin/userdel amanda
+       /usr/sbin/groupdel amanda
 fi
 
 %post client
@@ -194,7 +220,7 @@ fi
 if [ -f /var/lock/subsys/rc-inetd ]; then
        /etc/rc.d/init.d/rc-inetd restart 1>&2
 else
-       echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet server" 1>&2
+       echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet server." 1>&2
 fi
 
 %postun client
@@ -208,8 +234,9 @@ fi
 if [ -f /var/lock/subsys/rc-inetd ]; then
        /etc/rc.d/init.d/rc-inetd restart 1>&2
 else
-       echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet server" 1>&2
+       echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet server." 1>&2
 fi
+echo "Don't forget to edit /etc/cron.d/amanda-srv." 1>&2
 
 %postun server
 /sbin/ldconfig
@@ -222,20 +249,20 @@ fi
 %attr(755,root,root) %{_libdir}/libamanda*.so
 %attr(755,root,root) %{_libdir}/libamtape*.so
 %attr(770,root,amanda) %dir %{_libexecdir}
+%attr(770,root,amanda) %dir %{_localstatedir}/amanda
 
 %files server
 %defattr(644,root,root,755)
-%doc docs/*.gz
+%doc docs/*
 %config(noreplace) /etc/sysconfig/rc-inetd/amidxtape
 %config(noreplace) /etc/sysconfig/rc-inetd/amandaidx
 
-%attr(750,root,amanda) %dir %{_sysconfdir}/amanda
-%attr(640,root,amanda) %{_sysconfdir}/amanda/*
+%attr(750,amanda,amanda) %dir %{_sysconfdir}/amanda
+%config(noreplace) %attr(640,amanda,amanda) %{_sysconfdir}/amanda/*
 
-%attr(660,amanda,amanda) %dir %{_localstatedir}/lib/amanda
-%attr(664,amanda,amanda) %{_localstatedir}/lib/amanda/*
+%attr(664,amanda,amanda) %{_localstatedir}/amanda/*.ps
 
-%attr(640,root,root) /etc/cron.d/amanda-srv
+%config(noreplace) %attr(640,root,root) /etc/cron.d/amanda-srv
 
 %attr(755,root,root) %{_libdir}/libamserver*.so
 %attr(755,root,root) %{_libexecdir}/amindexd
@@ -253,13 +280,14 @@ fi
 %attr(755,root,root) %{_libexecdir}/amtrmlog
 %attr(755,root,root) %{_libexecdir}/chg-chio
 %attr(755,root,root) %{_libexecdir}/chg-chs
+%attr(755,root,root) %{_libexecdir}/chg-juke
 %attr(755,root,root) %{_libexecdir}/chg-manual
 %attr(755,root,root) %{_libexecdir}/chg-mtx
 %attr(755,root,root) %{_libexecdir}/chg-multi
+%attr(755,root,root) %{_libexecdir}/chg-rait
 %attr(755,root,root) %{_libexecdir}/chg-rth
 %attr(755,root,root) %{_libexecdir}/chg-scsi
 %attr(755,root,root) %{_libexecdir}/chg-zd-mtx
-%attr(755,root,root) %{_libexecdir}/selfcheck
 %attr(755,root,root) %{_libexecdir}/taper
 %attr(755,root,root) %{_sbindir}/amadmin
 %attr(4754,root,amanda) %{_sbindir}/amcheck
@@ -271,31 +299,38 @@ fi
 %attr(755,root,root) %{_sbindir}/amlabel
 %attr(755,root,root) %{_sbindir}/amoverview
 %attr(755,root,root) %{_sbindir}/amplot
-%attr(755,root,root) %{_sbindir}/amrmtape
 %attr(755,root,root) %{_sbindir}/amreport
+%attr(755,root,root) %{_sbindir}/amrmtape
 %attr(755,root,root) %{_sbindir}/amstatus
 %attr(755,root,root) %{_sbindir}/amtape
+%attr(755,root,root) %{_sbindir}/amtapetype
 %attr(755,root,root) %{_sbindir}/amtoc
 %attr(755,root,root) %{_sbindir}/amverify
-%attr(755,root,root) %{_sbindir}/tapetype
+%attr(755,root,root) %{_sbindir}/amverifyrun
 %{_mandir}/man8/amadmin.8*
-%{_mandir}/man8/amrmtape.8*
-%{_mandir}/man8/amtape.8*
-%{_mandir}/man8/amtoc.8*
 %{_mandir}/man8/amanda.8*
 %{_mandir}/man8/amcheck.8*
+%{_mandir}/man8/amcheckdb.8*
 %{_mandir}/man8/amcleanup.8*
 %{_mandir}/man8/amdump.8*
 %{_mandir}/man8/amflush.8*
+%{_mandir}/man8/amgetconf.8*
 %{_mandir}/man8/amlabel.8*
+%{_mandir}/man8/amoverview.8*
 %{_mandir}/man8/amplot.8*
 %{_mandir}/man8/amreport.8*
+%{_mandir}/man8/amrmtape.8*
 %{_mandir}/man8/amstatus.8*
+%{_mandir}/man8/amtape.8*
+%{_mandir}/man8/amtapetype.8*
+%{_mandir}/man8/amtoc.8*
+%{_mandir}/man8/amverify.8*
+%{_mandir}/man8/amverifyrun.8*
 
 %files client
 %defattr(644,root,root,755)
 %config(noreplace) /etc/sysconfig/rc-inetd/amanda
-
+%attr(664,root,amanda) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/amandates
 %attr(755,root,root) %{_libdir}/libamclient*.so
 %attr(755,root,root) %{_libexecdir}/versionsuffix
 %attr(755,root,root) %{_libexecdir}/amandad
@@ -307,7 +342,12 @@ fi
 %attr(755,root,root) %{_libexecdir}/sendsize
 %attr(755,root,root) %{_libexecdir}/patch-system
 %attr(4754,root,amanda) %{_libexecdir}/killpgrp
+%attr(755,root,root) %{_sbindir}/amdd
+%attr(755,root,root) %{_sbindir}/ammt
 %attr(755,root,root) %{_sbindir}/amrecover
 %attr(755,root,root) %{_sbindir}/amrestore
+%attr(770,amanda,amanda) %dir %{_localstatedir}/amanda/gnutar-lists
+%{_mandir}/man8/amdd.8*
+%{_mandir}/man8/ammt.8*
 %{_mandir}/man8/amrecover.8*
 %{_mandir}/man8/amrestore.8*
This page took 0.044171 seconds and 4 git commands to generate.