]> git.pld-linux.org Git - packages/bacula.git/blobdiff - bacula.spec
- openssl1.path is back, now to actually enable the openssl1-compatibility-workaround...
[packages/bacula.git] / bacula.spec
index 45702285b816862c4e8ecf7cd5a428378b708922..338ee501b4bbaaf7becd495998c7ae5a471742c8 100644 (file)
@@ -1,7 +1,11 @@
 # TODO:
-#      - update desktop files, think about su-wrappers for console
+#      - update desktop files, think about su-wrappers for console (with .desktop files)
 #      - package web admin
 #      - fix log file permissions
+#      - no longer builds:
+#make[1]: *** No rule to make target `../lib/libbac.la', needed by `bacula-dir'.  Stop.
+#make[1]: *** Waiting for unfinished jobs....
+#make[1]: Leaving directory `/home/users/glen/rpm/BUILD.x86_64-linux/bacula-5.0.2/src/dird'
 #
 # Conditional build:
 %bcond_without console_wx              # wx-console program
 %bcond_without pgsql                   # use PostgreSQL
 %bcond_without sqlite3                 # use SQLite3
 %bcond_without python
+%bcond_with    nagios          # build nagios plugin
 %bcond_with    rescue
 %bcond_with    sqlite3_sync_off        # makes SQLite3 backend much faster, but less reliable
-#
+
 %if %{without sqlite3}
 %undefine       with_sqlite3_sync_off
 %endif
-#
+
 Summary:       Bacula - The Network Backup Solution
 Summary(pl.UTF-8):     Bacula - rozwiązanie do wykonywania kopii zapasowych po sieci
 Name:          bacula
-Version:       5.0.1
-Release:       1
-Epoch:         0
+Version:       5.0.2
+Release:       0.1
 License:       extended GPL v2
 Group:         Networking/Utilities
-Source0:       http://dl.sourceforge.net/bacula/%{name}-%{version}.tar.gz
-# Source0-md5: beb9f8da196b3c9ffb0356f087dbdb99
-Source1:       http://dl.sourceforge.net/bacula/%{name}-docs-%{version}.tar.bz2
-# Source1-md5: ce2ef0dca50ab916fd6701b53b7bb4df
-Source2:       http://dl.sourceforge.net/bacula/%{name}-rescue-5.0.0.tar.gz
+Source0:       http://downloads.sourceforge.net/bacula/%{name}-%{version}.tar.gz
+# Source0-md5: e9204d2e772f12662de28da3327853de
+Source1:       http://downloads.sourceforge.net/bacula/%{name}-docs-%{version}.tar.bz2
+# Source1-md5: 7a6afbf592dde4fae0240d82ed3cb10d
+Source2:       http://downloads.sourceforge.net/bacula/%{name}-rescue-5.0.0.tar.gz
 # Source2-md5: 349623581cfe0bcd798dd137abac959a
 Source10:      %{name}-dir.init
 Source11:      %{name}-fd.init
@@ -48,6 +52,7 @@ Patch5:               %{name}-desktop.patch
 Patch6:                %{name}-64bitbuild_fix.patch
 Patch7:                %{name}-dbi_fixes.patch
 Patch8:                %{name}-dbi_dbcheck.patch
+Patch9:                %{name}-openssl1.patch
 URL:           http://www.bacula.org/
 BuildRequires: acl-devel
 BuildRequires: autoconf
@@ -88,6 +93,7 @@ BuildRoot:    %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _sysconfdir     /etc/%{name}
 %define                _localstatedir  /var/lib/%{name}
+%define                nagiosplugindir %{_prefix}/lib/nagios/plugins
 
 # from 'the worst' to 'the best'
 %define        databases %{?with_dbi:dbi} %{?with_sqlite3:sqlite3} %{?with_mysql:mysql} %{?with_pgsql:postgresql}
@@ -164,8 +170,8 @@ Summary:    Bacula Director and Catalog services
 Summary(pl.UTF-8):     Usługi Bacula Director i Catalog
 Group:         Networking/Utilities
 Requires(post):        sed >= 4.0
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
-Requires:      bacula(db) = %{epoch}:%{version}-%{release}
+Requires:      %{name}-common = %{version}-%{release}
+Requires:      bacula(db) = %{version}-%{release}
 Obsoletes:     bacula-updatedb
 
 %description dir
@@ -200,7 +206,7 @@ Summary:    Bacula Console
 Summary(pl.UTF-8):     Konsola Baculi
 Group:         Networking/Utilities
 Requires(post):        sed >= 4.0
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
+Requires:      %{name}-common = %{version}-%{release}
 
 %description console
 Bacula - It comes by night and sucks the vital essence from your
@@ -222,7 +228,7 @@ Summary:    Bacula wxWidgets Console
 Summary(pl.UTF-8):     Konsola Baculi oparta na wxWidgets
 Group:         Networking/Utilities
 Requires(post):        sed >= 4.0
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
+Requires:      %{name}-common = %{version}-%{release}
 
 %description console-wx
 Bacula - It comes by night and sucks the vital essence from your
@@ -244,7 +250,7 @@ Summary:    Bacula Qt4 Console
 Summary(pl.UTF-8):     Konsola Baculi oparta na Qt4
 Group:         Networking/Utilities
 Requires(post):        sed >= 4.0
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
+Requires:      %{name}-common = %{version}-%{release}
 
 %description console-qt4
 Bacula - It comes by night and sucks the vital essence from your
@@ -264,7 +270,7 @@ interfejs graficzny oparty na Qt4.
 Summary:       Bacula Tray Monitor
 Group:         Networking/Utilities
 Requires(post):        sed >= 4.0
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
+Requires:      %{name}-common = %{version}-%{release}
 
 %description tray-monitor
 Bacula - It comes by night and sucks the vital essence from your
@@ -281,7 +287,7 @@ Summary:    Bacula File services (Client)
 Summary(pl.UTF-8):     Usługi Bacula File (klient)
 Group:         Networking/Utilities
 Requires(post):        sed >= 4.0
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
+Requires:      %{name}-common = %{version}-%{release}
 
 %description fd
 Bacula - It comes by night and sucks the vital essence from your
@@ -316,7 +322,7 @@ Summary:    Bacula Storage services
 Summary(pl.UTF-8):     Usługi Bacula Storage
 Group:         Networking/Utilities
 Requires(post):        sed >= 4.0
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
+Requires:      %{name}-common = %{version}-%{release}
 Conflicts:     dvd+rw-tools <= 5.21.4.10.8-1
 
 %description sd
@@ -346,8 +352,8 @@ Summary:    PostgreSQL database driver for Bacula
 Summary(pl.UTF-8):     Sterownik bazy PostgreSQL dla Baculi
 Group:         Networking/Utilities
 Requires(post):        /sbin/ldconfig
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
-Provides:      bacula(db) = %{epoch}:%{version}-%{release}
+Requires:      %{name}-common = %{version}-%{release}
+Provides:      bacula(db) = %{version}-%{release}
 Obsoletes:     bacula(db)
 
 %description db-postgresql
@@ -361,8 +367,8 @@ Summary:    MySQL database driver for Bacula
 Summary(pl.UTF-8):     Sterownik bazy MySQL dla Baculi
 Group:         Networking/Utilities
 Requires(post):        /sbin/ldconfig
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
-Provides:      bacula(db) = %{epoch}:%{version}-%{release}
+Requires:      %{name}-common = %{version}-%{release}
+Provides:      bacula(db) = %{version}-%{release}
 Obsoletes:     bacula(db)
 
 %description db-mysql
@@ -376,8 +382,8 @@ Summary:    SQLite database driver for Bacula
 Summary(pl.UTF-8):     Sterownik bazy SQLite dla Baculi
 Group:         Networking/Utilities
 Requires(post):        /sbin/ldconfig
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
-Provides:      bacula(db) = %{epoch}:%{version}-%{release}
+Requires:      %{name}-common = %{version}-%{release}
+Provides:      bacula(db) = %{version}-%{release}
 Obsoletes:     bacula(db)
 
 %description db-sqlite3
@@ -391,8 +397,8 @@ Summary:    libdbi database driver for Bacula
 Summary(pl.UTF-8):     Sterownik bazy libdbi dla Baculi
 Group:         Networking/Utilities
 Requires(post):        /sbin/ldconfig
-Requires:      %{name}-common = %{epoch}:%{version}-%{release}
-Provides:      bacula(db) = %{epoch}:%{version}-%{release}
+Requires:      %{name}-common = %{version}-%{release}
+Provides:      bacula(db) = %{version}-%{release}
 Obsoletes:     bacula(db)
 
 %description db-dbi
@@ -405,7 +411,7 @@ Sterownik baz libdbi dla Baculi.
 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 = %{epoch}:%{version}-%{release}
+Requires:      %{name}-fd = %{version}-%{release}
 Requires:      coreutils
 Requires:      util-linux
 
@@ -439,17 +445,26 @@ 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
+Requires:      nagios-common
+
+%description -n nagios-plugin-check_bacula
+Nagios plugin to check bacula.
+
 %prep
 %setup -q -a 1
 %patch0 -p1
 %patch1 -p1
-%patch2 -p1
+#%patch2 -p1 CHECKME
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
 #%patch6 -p1
 %patch7 -p1
 %patch8 -p1
+%patch9 -p1
 
 tar -xf %{SOURCE2} && ln -s bacula-rescue-* rescue
 
@@ -476,7 +491,7 @@ CPPFLAGS="-I/usr/include/ncurses -I%{_includedir}/readline"
 
 # we wan't the 'base' build built with the last database in the list,
 # to make sure it is full-featured
-for database in %{databases} ; do
+for database in %{databases}; do
        WXCONFIG=%{_bindir}/wx-gtk2-unicode-config \
        %configure \
                --with-scriptdir=%{_libexecdir}/%{name} \
@@ -522,6 +537,11 @@ cd ../..
 
 %{__make}
 
+%if %{with nagios}
+# nagios plugin
+%{__make} -C examples/nagios/check_bacula
+%endif
+
 %if %{with rescue}
 cd rescue
 %configure \
@@ -542,7 +562,7 @@ install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_mandir},%{_bindir},/
 
 # install libraries for all the database backends
 # ldconfig will add the soname symlinks when one of the packages is installed
-for database in %{databases} ; do
+for database in %{databases}; do
        for libfile in libbacsql/$database%{_libdir}/lib*-*.so; do
                orig_name=${libfile##*/}
                file_prefix=${orig_name%%-*.so}
@@ -565,7 +585,7 @@ cp -a %{SOURCE16} $RPM_BUILD_ROOT/etc/sysconfig/bacula-sd
 # 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
+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/bacula.desktop.gnome2 > $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop
@@ -574,22 +594,24 @@ sed -e 's/gnome-console/wx-console/g;s/Console/Wx Console/g' \
 %endif
 
 %if %{with bat}
+# TODO: libtool install
+#libtool --silent --mode=install install src/qt-console/bat $RPM_BUILD_ROOT%{_bindir}
 install src/qt-console/.libs/bat $RPM_BUILD_ROOT%{_bindir}
-install scripts/bat.desktop $RPM_BUILD_ROOT%{_desktopdir}
+cp -a scripts/bat.desktop $RPM_BUILD_ROOT%{_desktopdir}
 %endif
 
 %if %{with rescue}
 # install the rescue stuff, these are the rescue scripts
-install rescue/linux/floppy/backup.etc.list $RPM_BUILD_ROOT%{_sysconfdir}/rescue
-install rescue/linux/floppy/*_* $RPM_BUILD_ROOT%{_sysconfdir}/rescue
-install rescue/linux/floppy/getdiskinfo $RPM_BUILD_ROOT%{_sysconfdir}/rescue
-install rescue/linux/floppy/sfdisk.bz2 $RPM_BUILD_ROOT%{_sysconfdir}/rescue
+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
-install updatedb/update_sqlite* $RPM_BUILD_ROOT%{_libexecdir}/%{name}
+install -p updatedb/update_sqlite* $RPM_BUILD_ROOT%{_libexecdir}/%{name}
 
 # place for site passwords
 touch $RPM_BUILD_ROOT%{_sysconfdir}/{dir-password,fd-password,sd-password}
@@ -633,6 +655,11 @@ for f in create_bacula_database drop_bacula_database drop_bacula_tables \
        ln -sf /dev/null $RPM_BUILD_ROOT%{_libexecdir}/%{name}/$f
 done
 
+%if %{with nagios}
+%{__make} -C examples/nagios/check_bacula install \
+       sbindir=%{nagiosplugindir} \
+       DESTDIR=$RPM_BUILD_ROOT
+%endif
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -721,6 +748,9 @@ fi
 %post console-wx
 %update_configs
 
+%triggerpostun common -- %{name}-common < 5.0.1-2
+find /etc/bacula/bat.conf* -perm /007 -print0 | xargs -0 -r chmod 600 || :
+
 %post console-qt4
 %update_configs
 
@@ -750,18 +780,18 @@ fi
 
 %define db_post() \
 /sbin/ldconfig \
-for name in "create database" "drop tables" "drop database" "grant privileges" "make tables" "update tables" ; do \
+for name in "create database" "drop tables" "drop database" "grant privileges" "make tables" "update tables"; do \
        prefix="${name%% *}" \
        suffix="${name#* }" \
-       ln -sf "${prefix}_%{1}_${suffix}" %{_libexecdir}/%{name}/"${prefix}_bacula_${suffix}" || :  \
+       ln -sf "${prefix}_%{1}_${suffix}" %{_libexecdir}/%{name}/"${prefix}_bacula_${suffix}" || : \
 done \
 %service bacula-dir restart "Bacula Director daemon"
 
 %define db_postun() \
 /sbin/ldconfig \
 if [ "$1" = "0" ]; then \
-       for f in %{_libexecdir}/%{name}/*_bacula_* ; do \
-               if [ -L "$f" -a ! -e "$f" ] ; then \
+       for f in %{_libexecdir}/%{name}/*_bacula_*; do \
+               if [ -L "$f" -a ! -e "$f" ]; then \
                        rm "$f" \
                fi \
        done \
@@ -914,7 +944,6 @@ fi
 
 %ghost %attr(755,root,root) %{_libdir}/libbacsql-%{version}.so
 
-
 %files fd
 %defattr(644,root,root,755)
 %doc LICENSE
@@ -961,7 +990,7 @@ fi
 %doc LICENSE
 %{_pixmapsdir}/%{name}.png
 %{_desktopdir}/bacula-wx.desktop
-%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bwx-console.conf
+%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
@@ -973,7 +1002,7 @@ fi
 %{_pixmapsdir}/%{name}.png
 %{_desktopdir}/bat.desktop
 # Do not make this file world-readable or any user will get full access to the
-# backup system 
+# backup system
 %attr(640,root,bacula) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bat.conf
 %attr(755,root,root) %{_bindir}/bat
 %{_mandir}/man1/bat.1*
@@ -1007,3 +1036,9 @@ fi
 %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)
+%attr(755,root,root) %{nagiosplugindir}/check_bacula
+%endif
This page took 0.304011 seconds and 4 git commands to generate.