-#
# TODO:
# - update desktop files, think about su-wrappers for console
# - package web admin
+# - fix log file permissions
#
# Conditional build:
%bcond_without console_wx # wx-console program
Summary: Bacula - The Network Backup Solution
Summary(pl): Bacula - rozwi±zanie do wykonywania kopii zapasowych po sieci
Name: bacula
-Version: 1.38.3
+Version: 2.0.0
Release: 0.1
Epoch: 0
-Group: Networking/Utilities
License: extended GPL v2
+Group: Networking/Utilities
Source0: http://dl.sourceforge.net/bacula/%{name}-%{version}.tar.gz
-# Source0-md5: e67f63cd19f1a2e2800f9f07aaaeb580
+# Source0-md5: fbf990e64eb895a674c52c0de5acf0cd
Source1: %{name}-manpages.tar.bz2
# Source1-md5: e4dae86d6574b360e831efd3913e7f4c
Source2: http://dl.sourceforge.net/bacula/%{name}-docs-%{version}.tar.gz
-# Source2-md5: 7649a8dedd55f1cb3e40d9a706bfbc0d
-#Source3: http://dl.sourceforge.net/bacula/%{name}-gui-%{version}.tar.gz
-## Source3-md5: 5fb575ceed9dee0cdf8bc7f81ef60f54
-Source4: http://dl.sourceforge.net/bacula/%{name}-rescue-1.8.1.tar.gz
-# Source4-md5: a5833354917125127b4a1f5e68521834
+# Source2-md5: 9fe0efdf50c82f40f15b3ea6c7ad7ed6
+Source3: http://dl.sourceforge.net/bacula/%{name}-gui-%{version}.tar.gz
+# Source3-md5: c46b03dbdd9becfd56e109badcad3593
+Source4: http://dl.sourceforge.net/bacula/%{name}-rescue-%{version}.tar.gz
+# Source4-md5: 4a21381f16355193771a34fc2eb4e806
Source10: %{name}-dir.init
Source11: %{name}-fd.init
Source12: %{name}-sd.init
Source15: %{name}-fd.sysconfig
Source16: %{name}-sd.sysconfig
Patch0: %{name}-dvd-handler_path.patch
+Patch1: %{name}-dvd_append.patch
+Patch2: %{name}-link.patch
+Patch3: %{name}-compile.patch
+Patch4: %{name}-wx28.patch
URL: http://www.bacula.org/
BuildRequires: acl-static
BuildRequires: automake
BuildRequires: pkgconfig
%{?with_python:BuildRequires: python-static}
BuildRequires: readline-devel
-BuildRequires: rpmbuild(macros) >= 1.202
+BuildRequires: rpmbuild(macros) >= 1.268
BuildRequires: sed >= 4.0
BuildRequires: sqlite-devel
%if %{with console_wx}
%define _sysconfdir /etc/%{name}
%define _localstatedir /var/lib/%{name}
+# dependency section is broken. ccache usage is instead to makefiles
+%undefine with_ccache
+
%description
Bacula - It comes by night and sucks the vital essence from your
computers.
Requires(post): openssl-tools
Requires(post): sed >= 4.0
Requires(post,preun): /sbin/chkconfig
+Requires(postun): /usr/sbin/groupdel
+Requires(postun): /usr/sbin/userdel
Requires(pre): /usr/sbin/groupadd
Requires(pre): /usr/sbin/useradd
Conflicts: bacula-console < 0:1.34.6
This package installs scripts for disaster recovery and builds rescue
floppy disk for bare metal recovery.
-To make the bacula rescue disk run "./make_rescue_disk --copy-static-bacula
-- --copy-etc-files" from the %{_sysconfdir}/rescue directory. To recreate the
-rescue information for this system run ./getdiskinfo again.
+To make the bacula rescue disk run "./make_rescue_disk
+--copy-static-bacula
+- --copy-etc-files" from the %{_sysconfdir}/rescue directory. To
+ recreate the rescue information for this system run ./getdiskinfo
+ again.
%description rescue -l pl
Bacula - przychodzi noc± i wysysa ¿ywotny ekstrakt z komputerów.
Bacula to zbiór programów umo¿liwiaj±cych administratorowi na
-zarz±dzanie kopiami zapasowymi, odzyskiwaniem i weryfikacj± danych
-w sieci komputerów ró¿nego rodzaju. W terminologii technicznej jest to
+zarz±dzanie kopiami zapasowymi, odzyskiwaniem i weryfikacj± danych w
+sieci komputerów ró¿nego rodzaju. W terminologii technicznej jest to
program do kopii zapasowych pracuj±cy w architekturze klient-serwer.
Bacula jest stosunkowo ³atwa w u¿yciu i wydajna, oferuj±c przy tym
wiele zaawansowanych mo¿liwo¶ci przy zarz±dzaniu no¶nikami,
%prep
%setup -q -a 1 -a 2
%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
#tar -xf %{SOURCE3}
tar -xf %{SOURCE4} && ln -s bacula-rescue-* rescue
sed -i -e 's#wx-config#wx-gtk2-ansi-config#g' configure*
--enable-smartalloc \
%{?with_console_wx:--enable-wx-console} \
--enable-tray-monitor \
+ %{?with_python:--with-python} \
--with-readline \
--with-tcp-wrappers \
--with-working-dir=%{_var}/lib/%{name} \
strip -R.comment -R.note src/filed/static-bacula-fd
install src/filed/static-bacula-fd $RPM_BUILD_ROOT%{_sysconfdir}/rescue/bacula-fd
-# tray-monitor is for regular users
-mv $RPM_BUILD_ROOT%{_sbindir}/bacula-tray-monitor $RPM_BUILD_ROOT%{_bindir}
-
install %{SOURCE10} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-dir
install %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-fd
install %{SOURCE12} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-sd
install %{SOURCE15} $RPM_BUILD_ROOT/etc/sysconfig/bacula-fd
install %{SOURCE16} $RPM_BUILD_ROOT/etc/sysconfig/bacula-sd
+%if %{with console_wx}
+# tray-monitor is for regular users
+mv $RPM_BUILD_ROOT%{_sbindir}/bacula-tray-monitor $RPM_BUILD_ROOT%{_bindir}
+
install scripts/bacula.png $RPM_BUILD_ROOT%{_pixmapsdir}/bacula.png
install src/tray-monitor/generic.xpm $RPM_BUILD_ROOT%{_pixmapsdir}/bacula-tray-monitor.xpm
install scripts/bacula.desktop.gnome2 $RPM_BUILD_ROOT%{_desktopdir}/bacula.desktop
scripts/bacula.desktop.gnome2 > $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop
sed -e 's#%{_sbindir}#%{_bindir}#' \
scripts/bacula-tray-monitor.desktop > $RPM_BUILD_ROOT%{_desktopdir}/bacula-tray-monitor.desktop
+%endif
%if %{with rescue}
# install the rescue stuff, these are the rescue scripts
rm -f $RPM_BUILD_ROOT%{_libexecdir}/%{name}/{gconsole,startmysql,stopmysql,bacula,bconsole,fd}
rm -f $RPM_BUILD_ROOT%{_sbindir}/static-bacula-fd
rm -f $RPM_BUILD_ROOT%{_mandir}/man1/gnome*
-%if %{without console_wx}
+%if !%{with console_wx}
rm -f $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop
rm -f $RPM_BUILD_ROOT%{_mandir}/man1/wx-console*
%endif
%{_libexecdir}/%{name}/grant_bacula_privileges > dev/null
%{_libexecdir}/%{name}/create_bacula_database > dev/null
%{_libexecdir}/%{name}/make_bacula_tables > dev/null
-elif [ "$DB_VER" -lt "8" ]; then
+elif [ "$DB_VER" -lt "9" ]; then
echo "Backing up bacula tables"
echo ".dump" | sqlite %{_localstatedir}/bacula.db | bzip2 > %{_localstatedir}/bacula_backup.sql.bz2
type=sqlite
echo "Upgrading bacula tables"
- if [ "$DB_VER" -lt "8" ]; then
- if [ "$DB_VER" -lt "7" ]; then
- if [ "$DB_VER" -lt "6" ]; then
- if [ "$DB_VER" -lt "5" ]; then
- %{_libexecdir}/%{name}/update_${type}_tables_4_to_5
+ if [ "$DB_VER" -lt "9" ]; then
+ if [ "$DB_VER" -lt "8" ]; then
+ if [ "$DB_VER" -lt "7" ]; then
+ if [ "$DB_VER" -lt "6" ]; then
+ if [ "$DB_VER" -lt "5" ]; then
+ %{_libexecdir}/%{name}/update_${type}_tables_4_to_5
+ fi
+ %{_libexecdir}/%{name}/update_${type}_tables_5_to_6
fi
- %{_libexecdir}/%{name}/update_${type}_tables_5_to_6
+ %{_libexecdir}/%{name}/update_${type}_tables_6_to_7
fi
- %{_libexecdir}/%{name}/update_${type}_tables_6_to_7
+ %{_libexecdir}/%{name}/update_${type}_tables_7_to_8
fi
- %{_libexecdir}/%{name}/update_${type}_tables_7_to_8
+ %{_libexecdir}/%{name}/update_${type}_tables_8_to_9
fi
%{_libexecdir}/%{name}/update_bacula_tables
echo "If bacula works correctly you can remove the backup file %{_localstatedir}/bacula_backup.sql.bz2"
sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
/sbin/chkconfig --add bacula-dir
-if [ -f /var/lock/subsys/bacula-dir ]; then
- /etc/rc.d/init.d/bacula-dir restart 1>&2
-else
- echo "Run \"/etc/rc.d/init.d/bacula-dir start\" to start Bacula Director daemon."
-fi
+%service bacula-dir restart "Bacula Director daemon"
%preun dir
if [ "$1" = "0" ]; then
- if [ -f /var/lock/subsys/bacula-dir ]; then
- /etc/rc.d/init.d/bacula-dir stop 1>&2
- fi
+ %service bacula-dir stop
/sbin/chkconfig --del bacula-dir
fi
sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
/sbin/chkconfig --add bacula-fd
-if [ -f /var/lock/subsys/bacula-fd ]; then
- /etc/rc.d/init.d/bacula-fd restart 1>&2
-else
- echo "Run \"/etc/rc.d/init.d/bacula-fd start\" to start Bacula File daemon."
-fi
+%service bacula-fd restart "Bacula File daemon"
%preun fd
if [ "$1" = "0" ]; then
- if [ -f /var/lock/subsys/bacula-fd ]; then
- /etc/rc.d/init.d/bacula-fd stop 1>&2
- fi
+ %service bacula-fd stop
/sbin/chkconfig --del bacula-fd
fi
sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
/sbin/chkconfig --add bacula-sd
-if [ -f /var/lock/subsys/bacula-sd ]; then
- /etc/rc.d/init.d/bacula-sd restart 1>&2
-else
- echo "Run \"/etc/rc.d/init.d/bacula-sd start\" to start Bacula Storage daemon."
-fi
+%service bacula-sd restart "Bacula Storage daemon"
%preun sd
if [ "$1" = "0" ]; then
- if [ -f /var/lock/subsys/bacula-sd ]; then
- /etc/rc.d/init.d/bacula-sd stop 1>&2
- fi
+ %service bacula-sd stop
/sbin/chkconfig --del bacula-sd
fi
%files dir
%defattr(644,root,root,755)
%doc ChangeLog CheckList ReleaseNotes kernstodo LICENSE
-%doc examples %{name}-docs-%{version}/manual/{*.pdf,bacula}
+%doc examples %{name}-docs-%{version}-1/manual/{*.pdf,bacula}
%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-dir.conf
%ghost %{_sysconfdir}/.pw.sed
%attr(640,root,root) %config(noreplace) /etc/logrotate.d/bacula-dir
%attr(754,root,root) /etc/rc.d/init.d/bacula-dir
-%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-dir
+%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-dir
%attr(755,root,root) %{_sbindir}/bacula-dir
+%attr(755,root,root) %{_sbindir}/bregex
+%attr(755,root,root) %{_sbindir}/bwild
%attr(755,root,root) %{_sbindir}/dbcheck
%{_mandir}/man8/bacula-dir.8*
%{_mandir}/man1/dbcheck.1*
%doc LICENSE
%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-fd.conf
%attr(754,root,root) /etc/rc.d/init.d/bacula-fd
-%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-fd
+%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-fd
%attr(755,root,root) %{_sbindir}/bacula-fd
%{_mandir}/man8/bacula-fd.8*
%dir %{_sysconfdir}
%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-sd.conf
%attr(754,root,root) /etc/rc.d/init.d/bacula-sd
-%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-sd
+%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-sd
%attr(755,root,root) %{_sbindir}/bacula-sd
%attr(755,root,root) %{_sbindir}/bcopy
%attr(755,root,root) %{_sbindir}/bextract
%attr(755,root,root) %{_sbindir}/bscan
%attr(755,root,root) %{_sbindir}/btape
%attr(755,root,root) %{_libexecdir}/%{name}/mtx-changer
+%attr(755,root,root) %{_libexecdir}/%{name}/disk-changer
%attr(755,root,root) %{_libexecdir}/%{name}/dvd-handler
%{_mandir}/man8/bacula-sd.8*
%{_mandir}/man1/bcopy.1*
#%{_mandir}/man1/gnome-console.1*
%endif
+%if %{with console_wx}
%files tray-monitor
%defattr(644,root,root,755)
%doc LICENSE
%{_pixmapsdir}/%{name}-tray-monitor.xpm
%{_desktopdir}/%{name}-tray-monitor.desktop
-%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tray-monitor.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tray-monitor.conf
%attr(755,root,root) %{_bindir}/bacula-tray-monitor
#%{_mandir}/man1/bacula-tray-monitor.1*
+%endif
%if %{with rescue}
%files rescue