# - check on upgrade (5.0 and 5.2 databases are NOT compatible)
#
# Conditional build:
-%bcond_with console_wx # wx-console program
%bcond_without bat # bat Qt4 GUI
%bcond_without mysql # use MySQL
%bcond_without pgsql # use PostgreSQL
%bcond_without sqlite3 # use SQLite3
-%bcond_without python # Python Scripting support, http://www.bacula.org/3.0.x-manuals/en/concepts/concepts/Python_Scripting.html
%bcond_without nagios # build nagios plugin
-%bcond_with rescue
%bcond_with sqlite3_sync_off # makes SQLite3 backend much faster, but less reliable
%if %{without sqlite3}
Summary: Bacula - The Network Backup Solution
Summary(pl.UTF-8): Bacula - rozwiązanie do wykonywania kopii zapasowych po sieci
Name: bacula
-Version: 5.2.13
-Release: 1
+Version: 7.0.4
+Release: 0.1
License: AGPL v3
Group: Networking/Utilities
Source0: http://downloads.sourceforge.net/bacula/%{name}-%{version}.tar.gz
-# Source0-md5: 43417bae0c221afb1f30a581c9e0f2fe
-Source1: http://downloads.sourceforge.net/bacula/%{name}-docs-%{version}.tar.bz2
-# Source1-md5: 0e7af41cc3b1c59662457679b02bf873
-Source2: http://downloads.sourceforge.net/bacula/%{name}-rescue-5.0.1.tar.gz
-# Source2-md5: bb194aed8e204f54bf2f61d7e721f257
+# Source0-md5: 219bde6b1f36625e69102c788bffa70b
+Source1: http://downloads.sourceforge.net/bacula/%{name}-docs-7.0.3.tar.bz2
+# Source1-md5: 5932a0aa1258d0f9e78d9fc9fac91d1f
Source10: %{name}-dir.init
Source11: %{name}-fd.init
Source12: %{name}-sd.init
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gettext-devel
-%{?with_console_wx:BuildRequires: gtk+2-devel}
BuildRequires: libcap-devel
BuildRequires: libtool >= 2:2.2
-%if %{with rescue}
-BuildRequires: fakeroot
-%endif
BuildRequires: libwrap-devel
BuildRequires: ncurses-devel
BuildRequires: openssl-devel
BuildRequires: pkgconfig
-%if %{with python}
BuildRequires: python-devel
BuildRequires: python-modules
-%endif
%if %{with bat}
BuildRequires: QtCore-devel
BuildRequires: QtGui-devel
BuildRequires: sed >= 4.0
%{?with_sqlite3:BuildRequires: sqlite3-devel}
BuildRequires: which
-%if %{with console_wx}
-BuildRequires: wxGTK2-unicode-devel >= 2.4.0
-%endif
BuildRequires: zlib-devel
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description db-sqlite3 -l pl.UTF-8
Sterownik bazy SQLite dla Baculi.
-%package rescue
-Summary: Bacula - The Network Backup Solution
-Summary(pl.UTF-8): Bacula - rozwiązanie do wykonywania kopii zapasowych po sieci
-Group: Networking/Utilities
-Requires: %{name}-fd = %{version}-%{release}
-Requires: coreutils
-Requires: util-linux
-
-%description rescue
-Bacula - It comes by night and sucks the vital essence from your
-computers.
-
-Bacula is a set of computer programs that permit you (or the system
-administrator) to manage backup, recovery, and verification of
-computer data across a network of computers of different kinds. In
-technical terms, it is a network client/server based backup program.
-Bacula is relatively easy to use and efficient, while offering many
-advanced storage management features that make it easy to find and
-recover lost or damaged files.
-
-This package installs scripts for disaster recovery and builds rescue
-floppy disk for bare metal recovery.
-
-%description rescue -l pl.UTF-8
-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
-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,
-ułatwiających znalezienie i odzyskanie utraconych lub uszkodzonych
-plików.
-
-Ten pakiet zawiera skrypty do odtwarzania po awarii i tworzy dyskietkę
-ratunkowe do odtwarzania systemu od zera.
-
%package -n nagios-plugin-check_bacula
Summary: Nagios plugin to check bacula
Group: Networking
%patch3 -p1
%patch4 -p1
-tar -xf %{SOURCE2} && ln -s bacula-rescue-* rescue
-
sed -i -e 's#bindir=.*#bindir=%{_bindir}#g' \
src/cats/create_* src/cats/delete_* src/cats/drop_* \
src/cats/grant_* src/cats/make_* src/cats/update_*
%{?with_bat:--enable-bat} \
--disable-conio \
--enable-smartalloc \
- %{?with_console_wx:--enable-bwx-console} \
- --enable-tray-monitor \
- %{?with_python:--with-python} \
--with-readline \
--with-tcp-wrappers \
--with-working-dir=%{_var}/lib/%{name} \
%{__make} -C examples/nagios/check_bacula
%endif
-%if %{with rescue}
-cd rescue
-%configure \
- --with-bacula=../
-cd linux/cdrom
-fakeroot %{__make}
-%endif
-
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,pam.d,sysconfig}
-install -d $RPM_BUILD_ROOT%{_sysconfdir}/rescue
install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_mandir},%{_bindir},/var/log/bacula}
%{__make} install \
cp -a %{SOURCE15} $RPM_BUILD_ROOT/etc/sysconfig/bacula-fd
cp -a %{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}
-
-cp -a scripts/bacula.png $RPM_BUILD_ROOT%{_pixmapsdir}/bacula.png
-#install src/tray-monitor/generic.xpm $RPM_BUILD_ROOT%{_pixmapsdir}/bacula-tray-monitor.xpm
-sed -e 's/gnome-console/wx-console/g;s/Console/Wx Console/g' \
- scripts/wxconsole.desktop.consolehelper > $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 bat}
# qmake somewhy does not always create install_bins target. install our own the bin
rm -f $RPM_BUILD_ROOT%{_sbindir}/bat
cp -a scripts/bat.desktop $RPM_BUILD_ROOT%{_desktopdir}
%endif
-%if %{with rescue}
-# install the rescue stuff, these are the rescue scripts
-cp -a rescue/linux/floppy/backup.etc.list $RPM_BUILD_ROOT%{_sysconfdir}/rescue
-cp -a rescue/linux/floppy/sfdisk.bz2 $RPM_BUILD_ROOT%{_sysconfdir}/rescue
-install -p rescue/linux/floppy/*_* $RPM_BUILD_ROOT%{_sysconfdir}/rescue
-install -p rescue/linux/floppy/getdiskinfo $RPM_BUILD_ROOT%{_sysconfdir}/rescue
-%endif
-
touch $RPM_BUILD_ROOT/var/log/bacula/log
# install the updatedb scripts for older versions that last full release
# some file changes
rm -f $RPM_BUILD_ROOT%{_libexecdir}/%{name}/{gconsole,startmysql,stopmysql,bacula,bconsole,fd}
-%if %{without console_wx}
-rm -f $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop
-%endif
touch $RPM_BUILD_ROOT%{_sysconfdir}/.pw.sed
rm $RPM_BUILD_ROOT%{_docdir}/bacula/ChangeLog
mv $RPM_BUILD_ROOT%{_mandir}/man8/{,bacula-}dbcheck.8.gz
# no -devel files packaged, so this is also useless
-rm $RPM_BUILD_ROOT%{_libdir}/libbac{,cfg,find,py,sql}.{so,la}
+rm $RPM_BUILD_ROOT%{_libdir}/libbac{,cfg,find,sql}.{so,la}
%if %{with nagios}
install -d $RPM_BUILD_ROOT%{nagiosplugindir}
%{__make} -C examples/nagios/check_bacula install \
sbindir=%{nagiosplugindir} \
- INSTALL_PROGRAM="libtool --mode=install install -p" \
DESTDIR=$RPM_BUILD_ROOT
%endif
%post tray-monitor
%update_configs
-%post rescue
-# link our current installed conf file to the rescue directory
-ln -sf %{_sysconfdir}/bacula-fd.conf %{_sysconfdir}/rescue/bacula-fd.conf
-
-# run getdiskinfo
-echo "Creating rescue files for this system..."
-cd %{_sysconfdir}/rescue
-./getdiskinfo
-
-%preun rescue
-# remove the files created after the initial rpm installation
-if [ "$1" = "0" ]; then
- rm -f %{_sysconfdir}/rescue/bacula-fd.conf
- rm -f %{_sysconfdir}/rescue/partition.*
- rm -f %{_sysconfdir}/rescue/format.*
- rm -f %{_sysconfdir}/rescue/mount_drives
- rm -f %{_sysconfdir}/rescue/start_network
- rm -f %{_sysconfdir}/rescue/sfdisk
- rm -rf %{_sysconfdir}/rescue/diskinfo/*
-fi
-
%define db_post() \
/sbin/ldconfig \
for name in "create database" "drop tables" "drop database" "grant privileges" "make tables" "update tables"; do \
%files common
%defattr(644,root,root,755)
%doc LICENSE
-%{?with_python:%doc examples/python}
%dir %{_sysconfdir}
%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*-password
# do not remove bsmtp from files. Fix build if it is not installed.
+%attr(755,root,root) %{_sbindir}/bpluginfo
%attr(755,root,root) %{_sbindir}/bsmtp
%attr(755,root,root) %{_sbindir}/btraceback
-%attr(755,root,root) %{_libdir}/libbac-5*.so
-%attr(755,root,root) %{_libdir}/libbaccfg-5*.so
-%attr(755,root,root) %{_libdir}/libbacfind-5*.so
-%attr(755,root,root) %{_libdir}/libbacpy-5*.so
-%attr(755,root,root) %{_libdir}/libbacsql-5*.so
+%attr(755,root,root) %{_libdir}/libbac-7*.so
+%attr(755,root,root) %{_libdir}/libbaccfg-7*.so
+%attr(755,root,root) %{_libdir}/libbacfind-7*.so
+#%attr(755,root,root) %{_libdir}/libbacpy-7*.so
+%attr(755,root,root) %{_libdir}/libbacsql-7*.so
%{_mandir}/man8/bacula.8*
+%{_mandir}/man8/bpluginfo.8*
%{_mandir}/man1/bsmtp.1*
%{_mandir}/man8/btraceback.8*
%dir %{_libexecdir}/%{name}
%files dir
%defattr(644,root,root,755)
-%doc ChangeLog CheckList ReleaseNotes LICENSE
+%doc ChangeLog ReleaseNotes LICENSE
#%doc examples %{name}-docs-%{version}/manual/{*.pdf,bacula}
%attr(640,root,bacula) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-dir.conf
%ghost %{_sysconfdir}/.pw.sed
%attr(755,root,root) %{_libexecdir}/%{name}/make_postgresql_tables
%attr(755,root,root) %{_libexecdir}/%{name}/update_postgresql_*
%attr(755,root,root) %{_libexecdir}/%{name}/make_postgresql_catalog_backup
-%attr(755,root,root) %{_libdir}/libbaccats-postgresql-5*.so
+%attr(755,root,root) %{_libdir}/libbaccats-postgresql-7*.so
-%ghost %attr(755,root,root) %{_libdir}/libbaccats-5*.so
+%ghost %attr(755,root,root) %{_libdir}/libbaccats-7*.so
%ghost %{_libexecdir}/%{name}/create_bacula_database
%ghost %{_libexecdir}/%{name}/drop_bacula_tables
%ghost %{_libexecdir}/%{name}/drop_bacula_database
%attr(755,root,root) %{_libexecdir}/%{name}/make_mysql_tables
%attr(755,root,root) %{_libexecdir}/%{name}/update_mysql_*
%attr(755,root,root) %{_libexecdir}/%{name}/make_mysql_catalog_backup
-%attr(755,root,root) %{_libdir}/libbaccats-mysql-5*.so
+%attr(755,root,root) %{_libdir}/libbaccats-mysql-7*.so
-%ghost %attr(755,root,root) %{_libdir}/libbaccats-5*.so
+%ghost %attr(755,root,root) %{_libdir}/libbaccats-7*.so
%ghost %{_libexecdir}/%{name}/create_bacula_database
%ghost %{_libexecdir}/%{name}/drop_bacula_tables
%ghost %{_libexecdir}/%{name}/drop_bacula_database
%attr(755,root,root) %{_libexecdir}/%{name}/make_sqlite3_tables
%attr(755,root,root) %{_libexecdir}/%{name}/update_sqlite3_*
%attr(755,root,root) %{_libexecdir}/%{name}/make_sqlite3_catalog_backup
-%attr(755,root,root) %{_libdir}/libbaccats-sqlite3-5*.so
+%attr(755,root,root) %{_libdir}/libbaccats-sqlite3-7*.so
-%ghost %attr(755,root,root) %{_libdir}/libbaccats-5*.so
+%ghost %attr(755,root,root) %{_libdir}/libbaccats-7*.so
%ghost %{_libexecdir}/%{name}/create_bacula_database
%ghost %{_libexecdir}/%{name}/drop_bacula_tables
%ghost %{_libexecdir}/%{name}/drop_bacula_database
%attr(755,root,root) %{_sbindir}/bconsole
%{_mandir}/man8/bconsole.8*
-%if %{with console_wx}
-%files console-wx
-%defattr(644,root,root,755)
-%doc LICENSE
-%{_pixmapsdir}/%{name}.png
-%{_desktopdir}/bacula-wx.desktop
-%attr(640,root,bacula) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bwx-console.conf
-%attr(755,root,root) %{_sbindir}/bwx-console
-%{_mandir}/man1/bacula-bwxconsole.1*
-%endif
-
%if %{with bat}
%files console-qt4
%defattr(644,root,root,755)
%{_docdir}/%{name}
%endif
-%if %{with console_wx}
-%files tray-monitor
-%defattr(644,root,root,755)
-%doc LICENSE
-%attr(755,root,root) %{_sbindir}/bacula-tray-monitor
-#%{_pixmapsdir}/%{name}-tray-monitor.xpm
-#%{_desktopdir}/%{name}-tray-monitor.desktop
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tray-monitor.conf
-%{_mandir}/man1/bacula-tray-monitor.1*
-%endif
-
-%if %{with rescue}
-%files rescue
-%defattr(644,root,root,755)
-%doc LICENSE
-%dir %{_sysconfdir}/rescue
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/backup.etc.list
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/bacula-fd
-%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/format_floppy
-%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/getdiskinfo
-%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/make_rescue_disk
-%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/restore_bacula
-%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/restore_etc
-%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/run_grub
-%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/run_lilo
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/sfdisk.bz2
-%endif
-
%if %{with nagios}
%files -n nagios-plugin-check_bacula
%defattr(644,root,root,755)