]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/platforms/redhat/bacula.spec.in
- Remove warning message about multiple saves of hardlinked files
[bacula/bacula] / bacula / platforms / redhat / bacula.spec.in
index 1aa03c00885f17f85da8bd3005c6ec49cf6e35eb..9743d8c8e156ccd95b80b25777e24a787cac032a 100644 (file)
@@ -1,11 +1,18 @@
+# Bacula RPM spec file
+# Copyright (C) 2000-2005 Kern Sibbald
+
 # Platform Build Configuration
 
 # basic defines for every build
 %define depkgs ../depkgs
-%define depkgs_version 24Jul03
-%define tomsrtbt tomsrtbt-2.0.103
-%define sqlite_bindir /usr/lib/sqlite
+%define depkgs_version 22Jun05
+%define sqlite_bindir /usr/lib/bacula/sqlite
 %define working_dir /var/bacula
+%define daemon_user root
+%define daemon_group bacula
+%define group_file /etc/group
+%define groupadd /usr/sbin/groupadd
+%define _rescuever 1.8.1
 
 # platform defines - set one below or define the build_xxx on the command line
 # RedHat builds
 %{?build_rh8:%define rh8 1}
 %define rh9 0
 %{?build_rh9:%define rh9 1}
-# Fedora Core build
+# Fedora Core build
 %define fc1 0
 %{?build_fc1:%define fc1 1}
+%define fc3 0
+%{?build_fc3:%define fc3 1}
+%define fc4 0
+%{?build_fc4:%define fc4 1}
 # Whitebox Enterprise build
 %define wb3 0
 %{?build_wb3:%define wb3 1}
-# SuSE 9.0 build
+# RedHat Enterprise builds
+%define rhel3 0
+%{?build_rhel3:%define rhel3 1}
+%{?build_rhel3:%define wb3 1}
+%define rhel4 0
+%{?build_rhel4:%define rhel4 1}
+%{?build_rhel4:%define fc4 1}
+# CentOS build
+%define centos4 0
+%{?build_centos4:%define centos4 1}
+%{?build_centos4:%define fc4 1}
+# SuSE build
 %define su9 0
 %{?build_su9:%define su9 1}
+# Mandrake build
+%define mdk 0
+%{?build_mdk:%define mdk 1}
+
+# test for a platform definition
+%if ! %{rh7} && ! %{rh8} && ! %{rh9} && ! %{fc1} && ! %{fc3} && ! %{fc4} && ! %{wb3} && ! %{su9} && ! %{mdk}
+%{error: You must specify a platform. Please examine the spec file.}
+exit 1
+%endif
 
 # database defines
-# set for database support desired
+# set for database support desired or define the build_xxx on the command line
 %define mysql 0
 %{?build_mysql:%define mysql 1}
+# if using mysql 4.x define this and mysql above
+# currently: Mandrake 10.1, SuSE 9.2, RHEL4 and Fedora Core 4
+%define mysql4 0
+%{?build_mysql4:%define mysql4 1}
 %define sqlite 0
 %{?build_sqlite:%define sqlite 1}
 %define postgresql 0
 %{?build_postgresql:%define postgresql 1}
 
+# test for a database definition
+%if ! %{mysql} && ! %{sqlite} && ! %{postgresql}
+%{error: You must specify database support. Please examine the spec file.}
+exit 1
+%endif
+
+# 64 bit support
+%define x86_64 0
+%{?build_x86_64:%define x86_64 1}
+
+# check what distribution we are
+%if %{rh7} || %{rh8} || %{rh9} || %{rhel3} || %{rhel4}
+%define _dist %(grep Red /etc/redhat-release)
+%endif
+%if %{fc1}
+%define _dist %(grep Fedora /etc/redhat-release)
+%endif
+%if %{centos4}
+%define _dist %(grep CentOS /etc/redhat-release)
+%endif
+%if %{fc3} || %{fc4} && ! %{rhel4} && ! %{centos4}
+%define _dist %(grep Fedora /etc/redhat-release)
+%endif
+%if %{wb3} && ! %{rhel3}
+%define _dist %(grep White /etc/whitebox-release)
+%endif
+%if %{su9}
+%define _dist %(grep -i SuSE /etc/SuSE-release)
+%endif
+%if %{mdk}
+%define _dist %(grep Mandrake /etc/mandrake-release)
+%endif
+
 Summary: Bacula - The Network Backup Solution
 Name: bacula
 Version: @VERSION@
 Release: 1
 Group: System Environment/Daemons
-Copyright: GPL v2
+License: GPL v2
 Source0:http://www.prdownloads.sourceforge.net/bacula/%{name}-%{version}.tar.gz
 Source1:http://www.prdownloads.sourceforge.net/bacula/depkgs-%{depkgs_version}.tar.gz
-Source2:http://www.tux.org/pub/distributions/tinylinux/tomsrtbt/%{tomsrtbt}.tar.gz
+Source2: Release_Notes-%{version}-%{release}.tar.gz
+Source3:http://www.prdownloads.sourceforge.net/bacula/%{name}-docs-%{version}.tar.gz
+Source4:http://www.prdownloads.sourceforge.net/bacula/%{name}-rescue-%{_rescuever}.tar.gz
 BuildRoot: %{_tmppath}/%{name}-root
 URL: http://www.bacula.org/
 Vendor: The Bacula Team
-Distribution: The Bacula Team
+Distribution: %{_dist}
 Packager: D. Scott Barninger <barninger@fairfieldcomputers.com>
-BuildRequires: readline-devel, atk-devel, ncurses-devel, pango-devel
-BuildRequires: libstdc++-devel, libxml2-devel, zlib-devel
+
+%define _docsrc ../%{name}-docs-%{version}
+%define _rescuesrc ../%{name}-rescue-%{_rescuever}
+
+BuildRequires: atk-devel, ncurses-devel, pango-devel, perl
+BuildRequires: libstdc++-devel, libxml2-devel, zlib-devel, pkgconfig
 %if %{rh7}
 BuildRequires: libtermcap-devel
 BuildRequires: gtk+-devel >= 1.2
@@ -58,9 +132,11 @@ BuildRequires: glibc-devel >= 2.2
 BuildRequires: ORBit-devel
 BuildRequires: bonobo-devel
 BuildRequires: GConf-devel
+BuildRequires: freetype-devel
 %endif
 %if %{su9}
 BuildRequires: termcap
+BuildRequires: libgnome >= 2.0
 BuildRequires: gtk2-devel >= 2.0
 BuildRequires: libgnomeui-devel >= 2.0
 BuildRequires: glibc-devel >= 2.3
@@ -71,8 +147,37 @@ BuildRequires: libbonoboui-devel >= 2.0
 BuildRequires: bonobo-activation-devel
 BuildRequires: gconf2-devel
 BuildRequires: linc-devel
+BuildRequires: freetype2-devel
 %endif
-%if ! %{rh7} && ! %{su9}
+%if %{mdk}
+BuildRequires: libtermcap-devel
+BuildRequires: gtk2-devel >= 2.0
+BuildRequires: libgnomeui2-devel >= 2.0
+BuildRequires: glibc-devel >= 2.3
+BuildRequires: libORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.0
+BuildRequires: libbonobo2_0-devel
+BuildRequires: libbonoboui2_0-devel
+BuildRequires: libbonobo-activation-devel
+BuildRequires: libGConf2-devel
+BuildRequires: libstdc++-static-devel
+BuildRequires: glibc-static-devel
+BuildRequires: freetype2-devel
+%endif
+%if %{fc3} || %{fc4}
+BuildRequires: libtermcap-devel
+BuildRequires: gtk2-devel >= 2.4
+BuildRequires: libgnomeui-devel >= 2.8
+BuildRequires: glibc-devel >= 2.3
+BuildRequires: ORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.3
+BuildRequires: libbonobo-devel >= 2.8
+BuildRequires: libbonoboui-devel >= 2.8
+BuildRequires: bonobo-activation-devel
+BuildRequires: GConf2-devel
+BuildRequires: freetype-devel
+%endif
+%if ! %{rh7} && ! %{su9} && ! %{mdk} && ! %{fc3} && !%{fc4}
 BuildRequires: libtermcap-devel
 BuildRequires: gtk2-devel >= 2.0
 BuildRequires: libgnomeui-devel >= 2.0
@@ -84,12 +189,17 @@ BuildRequires: libbonoboui-devel >= 2.0
 BuildRequires: bonobo-activation-devel
 BuildRequires: GConf2-devel
 BuildRequires: linc-devel
+BuildRequires: freetype-devel
 %endif
 
-%if %{mysql}
+%if %{mysql} && ! %{mysql4}
 BuildRequires: mysql-devel >= 3.23
 %endif
 
+%if %{mysql} && %{mysql4}
+BuildRequires: mysql-devel >= 4.0
+%endif
+
 %if %{postgresql} && %{wb3}
 BuildRequires: rh-postgresql-devel >= 7
 %endif
@@ -122,52 +232,50 @@ Bacula source code has been released under the GPL version 2 license.
 Summary: Bacula - The Network Backup Solution
 Group: System Environment/Daemons
 Provides: bacula-dir, bacula-sd, bacula-fd, bacula-server
-Conflicts: bacula-client, bacula-gconsole
-Requires: readline, perl, atk, ncurses, pango, libstdc++
-Requires: libxml2, zlib
+Conflicts: bacula-client
+Obsoletes: bacula-rescue
+Requires: ncurses, libstdc++, zlib
+
 %if %{rh7}
-Requires: gtk+ >= 1.2
-Requires: gnome-libs >= 1.4
 Requires: glibc >= 2.2
-Requires: ORBit
-Requires: bonobo
-Requires: GConf
 Requires: libtermcap
 %endif
 %if %{su9}
-Requires: gtk2 >= 2.0
-Requires: libgnomeui >= 2.0
 Requires: glibc >= 2.3
-Requires: ORBit2
-Requires: libart_lgpl >= 2.0
-Requires: libbonobo >= 2.0
-Requires: libbonoboui >= 2.0
-Requires: bonobo-activation
-Requires: gconf2
-Requires: linc
 Requires: termcap
 %endif
 %if ! %{rh7} && ! %{su9}
-Requires: gtk2 >= 2.0
-Requires: libgnomeui >= 2.0
 Requires: glibc >= 2.3
-Requires: ORBit2
-Requires: libart_lgpl >= 2.0
-Requires: libbonobo >= 2.0
-Requires: libbonoboui >= 2.0
-Requires: bonobo-activation
-Requires: GConf2
-Requires: linc
 Requires: libtermcap
 %endif
-%if %{mysql} && ! %{su9}
+
+%if %{mysql} && ! %{su9} && ! %{mdk} && ! %{mysql4}
 Requires: mysql >= 3.23
 Requires: mysql-server >= 3.23
 %endif
-%if %{mysql} && %{su9}
+%if %{mysql} && ! %{su9} && ! %{mdk} && %{mysql4}
+Requires: mysql >= 4.0
+Requires: mysql-server >= 4.0
+%endif
+
+%if %{mysql} && %{su9} && ! %{mysql4}
+Requires: mysql >= 3.23
+Requires: mysql-client >= 3.23
+%endif
+%if %{mysql} && %{su9} && %{mysql4}
+Requires: mysql >= 4.0
+Requires: mysql-client >= 4.0
+%endif
+
+%if %{mysql} && %{mdk} && ! %{mysql4}
 Requires: mysql >= 3.23
 Requires: mysql-client >= 3.23
 %endif
+%if %{mysql} && %{mdk} && %{mysql4}
+Requires: mysql >= 4.0
+Requires: mysql-client >= 4.0
+%endif
+
 %if %{postgresql} && %{wb3}
 Requires: rh-postgresql >= 7
 Requires: rh-postgresql-server >= 7
@@ -211,7 +319,8 @@ This build incorporates sqlite as the catalog database, statically compiled.
 Summary: Bacula - The Network Backup Solution
 Group: System Environment/Daemons
 Provides: bacula-fd
-Requires: readline, perl, libstdc++, zlib
+Obsoletes: bacula-rescue
+Requires: libstdc++, zlib
 
 %if %{rh7}
 Requires: glibc >= 2.2
@@ -240,40 +349,6 @@ Bacula source code has been released under the GPL version 2 license.
 This is the File daemon (Client) only package. It includes the command line 
 console program.
 
-%package rescue
-
-Summary: Bacula - The Network Backup Solution
-Group: System Environment/Daemons
-Requires: coreutils, util-linux, libc5, bacula-fd
-
-%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. 
-Bacula source code has been released under the GPL version 2 license.
-
-This package installs scripts for disaster recovery and builds rescue 
-floppy disks for bare metal recovery. This package includes tomsrtbt
-(http://www.toms.net/rb/, by Tom Oehser, Tom@Toms.NET) to provide a tool
-to build a boot floppy disk.
-
-You need to have the bacula-sqlite, bacula-mysql, bacula-postgresql or 
-bacula-client package for your platform installed and configured before 
-installing this package.
-
-To create a boot disk run "./getdiskinfo" from the /etc/bacula/rescue
-directory (this is done when the package is first installed), 
-then run "./install.s" from the /etc/bacula/rescue/tomsrtbt/
-directory. To make the bacula rescue disk run
-"./make_rescue_disk --copy-static-bacula --copy-etc-files"
-from the /etc/bacula/rescue directory. To recreate the rescue
-information for this system run ./getdiskinfo again.
-
 %package updatedb
 
 Summary: Bacula - The Network Backup Solution
@@ -296,8 +371,7 @@ database.
 %package gconsole
 Summary: Bacula - The Network Backup Solution
 Group: System Environment/Daemons
-Requires: readline, libstdc++, zlib, pango, bacula-client
-Conflicts: bacula-server
+Requires: atk, libstdc++, zlib, pango, libxml2, bacula-fd
 
 %if %{rh7}
 Requires: gtk+ >= 1.2
@@ -306,9 +380,11 @@ Requires: glibc >= 2.2
 Requires: ORBit
 Requires: bonobo
 Requires: GConf
+Requires: freetype
 %endif
 %if %{su9}
 Requires: gtk2 >= 2.0
+Requires: libgnome >= 2.0
 Requires: libgnomeui >= 2.0
 Requires: glibc >= 2.3
 Requires: ORBit2
@@ -318,8 +394,32 @@ Requires: libbonoboui >= 2.0
 Requires: bonobo-activation
 Requires: gconf2
 Requires: linc
+Requires: freetype2
 %endif
-%if ! %{rh7} && ! %{su9}
+%if %{mdk}
+Requires: gtk2 >= 2.0
+Requires: libgnomeui2
+Requires: glibc >= 2.3
+Requires: ORBit2
+Requires: libart_lgpl >= 2.0
+Requires: libbonobo >= 2.0
+Requires: libbonoboui >= 2.0
+Requires: GConf2
+Requires: freetype2
+%endif
+%if %{fc3} || %{fc4}
+Requires: gtk2 >= 2.4
+Requires: libgnomeui >= 2.8
+Requires: glibc >= 2.3
+Requires: ORBit2
+Requires: libart_lgpl >= 2.3
+Requires: libbonobo >= 2.8
+Requires: libbonoboui >= 2.8
+Requires: bonobo-activation
+Requires: GConf2
+Requires: freetype
+%endif
+%if ! %{rh7} && ! %{su9} && ! %{mdk} && ! %{fc3} && ! %{fc4}
 Requires: gtk2 >= 2.0
 Requires: libgnomeui >= 2.0
 Requires: glibc >= 2.3
@@ -330,6 +430,12 @@ Requires: libbonoboui >= 2.0
 Requires: bonobo-activation
 Requires: GConf2
 Requires: linc
+Requires: freetype
+%endif
+%if %{su9}
+Requires: xsu
+%else
+Requires: usermode
 %endif
 
 %description gconsole
@@ -343,12 +449,16 @@ easy to use and efficient, while offering many advanced storage management
 features that make it easy to find and recover lost or damaged files. 
 Bacula source code has been released under the GPL version 2 license.
 
-This is the Gnome Console package. It is an add-on to the client package.
+This is the Gnome Console package. It is an add-on to the client or
+server packages.
 
 %prep
 
-%setup -b 1
-%setup -b 2
+%setup
+%setup -T -D -b 1
+%setup -T -D -b 2
+%setup -T -D -b 3
+%setup -T -D -b 4
 
 %build
 
@@ -365,19 +475,34 @@ make mtx
 cd ${cwd}
 
 # patches for the bundled sqlite scripts
+# as of 1.38.0 first 3 patches no longer needed
 
 # patch the make_sqlite_tables script for installation bindir
-patch src/cats/make_sqlite_tables.in src/cats/make_sqlite_tables.in.patch
+patch src/cats/make_sqlite_tables.in src/cats/make_sqlite_tables.in.patch
 
 # patch the create_sqlite_database script for installation bindir
-patch src/cats/create_sqlite_database.in src/cats/create_sqlite_database.in.patch
+#patch src/cats/create_sqlite_database.in src/cats/create_sqlite_database.in.patch
 
 # patch the make_catalog_backup script for installation bindir
-patch src/cats/make_catalog_backup.in src/cats/make_catalog_backup.in.patch
+#patch src/cats/make_catalog_backup.in src/cats/make_catalog_backup.in.patch
 
 # patch the update_sqlite_tables script for installation bindir
 patch src/cats/update_sqlite_tables.in src/cats/update_sqlite_tables.in.patch
 
+# patch the bacula-dir init script to remove sqlite service
+%if %{sqlite} && %{su9}
+patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
+%endif
+
+# 64 bit lib location hacks
+# this is the location on redhat type platforms, don't know about others yet
+%if %{x86_64}
+export LDFLAGS=-L/usr/lib64
+%endif
+%if %{mysql} && %{x86_64}
+export LDFLAGS=-L/usr/lib64/mysql
+%endif
+
 %configure \
         --prefix=/usr \
         --sbindir=/usr/sbin \
@@ -385,37 +510,50 @@ patch src/cats/update_sqlite_tables.in src/cats/update_sqlite_tables.in.patch
         --with-scriptdir=/etc/bacula \
         --enable-smartalloc \
         --enable-gnome \
-          --enable-static-fd \
+%if ! %{rh7} && ! %{rh8}
+        --enable-tray-monitor \
+%endif
 %if %{mysql}
         --with-mysql \
 %endif
 %if %{sqlite}
-        --with-sqlite=${cwd}/../depkgs/sqlite \
+        --with-sqlite=${cwd}/%{depkgs}/sqlite \
 %endif
 %if %{postgresql}
         --with-postgresql \
 %endif
         --with-working-dir=%{working_dir} \
         --with-pid-dir=/var/run \
-        --with-subsys-dir=/var/lock/subsys
+        --with-subsys-dir=/var/lock/subsys \
+        --with-dir-user=%{daemon_user} \
+        --with-dir-group=%{daemon_group} \
+        --with-sd-user=%{daemon_user} \
+        --with-sd-group=%{daemon_group} \
+        --with-fd-user=%{daemon_user} \
+        --with-fd-group=%{daemon_group}
 make
 
-cd src/filed
-strip static-bacula-fd
-cd ../../
-
 %install
  
 cwd=${PWD}
 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
 mkdir -p $RPM_BUILD_ROOT/etc/init.d
 mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d
+mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/logfiles
+mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/services
+mkdir -p $RPM_BUILD_ROOT/etc/log.d/scripts/services
 mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps
+%if %{rh7}
 mkdir -p $RPM_BUILD_ROOT/usr/share/gnome/apps/System
+%else
 mkdir -p $RPM_BUILD_ROOT/usr/share/applications
-mkdir -p $RPM_BUILD_ROOT/etc/bacula/rescue
-mkdir -p $RPM_BUILD_ROOT/etc/bacula/rescue/tomsrtbt
+%endif
 mkdir -p $RPM_BUILD_ROOT/etc/bacula/updatedb
+%if ! %{su9}
+mkdir -p $RPM_BUILD_ROOT/etc/pam.d
+mkdir -p $RPM_BUILD_ROOT/etc/security/console.apps
+mkdir -p $RPM_BUILD_ROOT/usr/bin
+%endif
 
 %if %{sqlite}
 mkdir -p $RPM_BUILD_ROOT%{sqlite_bindir}
@@ -457,7 +595,13 @@ rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
 cp -p platforms/suse/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
 cp -p platforms/suse/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
 cp -p platforms/suse/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
-%else
+%endif
+%if %{mdk}
+cp -p platforms/mandrake/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
+cp -p platforms/mandrake/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
+cp -p platforms/mandrake/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
+%endif
+%if ! %{su9} && ! %{mdk}
 cp -p platforms/redhat/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
 cp -p platforms/redhat/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
 cp -p platforms/redhat/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
@@ -465,44 +609,68 @@ cp -p platforms/redhat/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
 chmod 0754 $RPM_BUILD_ROOT/etc/init.d/*
 
 # install the menu stuff
+%if %{su9}
+cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
+cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
+cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
+cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
+%endif
+%if %{rh7}
 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
-cp -p scripts/bacula.desktop.gnome1 $RPM_BUILD_ROOT/usr/share/gnome/apps/System/bacula.desktop
-cp -p scripts/bacula.desktop.gnome2 $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
+cp -p scripts/bacula.desktop.gnome1.consolehelper $RPM_BUILD_ROOT/usr/share/gnome/apps/System/bacula.desktop
+cp -p scripts/gnome-console.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/gnome-console
+cp -p scripts/gnome-console.pamd $RPM_BUILD_ROOT/etc/pam.d/gnome-console
+ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/gnome-console
+%endif
+%if %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{fc3} || %{fc4} || %{mdk}
+cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
+cp -p scripts/bacula.desktop.gnome2.consolehelper $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
+cp -p scripts/gnome-console.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/gnome-console
+cp -p scripts/gnome-console.pamd $RPM_BUILD_ROOT/etc/pam.d/gnome-console
+ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/gnome-console
+%endif
+%if ! %{rh7} && ! %{rh8}
+cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
+cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
+%endif
 
 # install sqlite
 %if %{sqlite}
-cp -p ../depkgs/sqlite/sqlite $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite
-cp -p ../depkgs/sqlite/sqlite.h $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite.h
-cp -p ../depkgs/sqlite/libsqlite.a $RPM_BUILD_ROOT%{sqlite_bindir}/libsqlite.a
+cp -p %{depkgs}/sqlite/sqlite $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite
+cp -p %{depkgs}/sqlite/sqlite.h $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite.h
+cp -p %{depkgs}/sqlite/libsqlite.a $RPM_BUILD_ROOT%{sqlite_bindir}/libsqlite.a
 %endif
 
 # install the logrotate file
 cp -p scripts/logrotate $RPM_BUILD_ROOT/etc/logrotate.d/bacula
 
-# install the rescue stuff
-# these are the rescue scripts
-cp -p rescue/linux/backup.etc.list $RPM_BUILD_ROOT/etc/bacula/rescue/
-cp -p rescue/linux/format_floppy $RPM_BUILD_ROOT/etc/bacula/rescue/
-cp -p rescue/linux/getdiskinfo $RPM_BUILD_ROOT/etc/bacula/rescue/
-cp -p rescue/linux/make_rescue_disk $RPM_BUILD_ROOT/etc/bacula/rescue/
-cp -p rescue/linux/restore_bacula $RPM_BUILD_ROOT/etc/bacula/rescue/
-cp -p rescue/linux/restore_etc $RPM_BUILD_ROOT/etc/bacula/rescue/
-cp -p rescue/linux/run_grub $RPM_BUILD_ROOT/etc/bacula/rescue/
-cp -p rescue/linux/run_lilo $RPM_BUILD_ROOT/etc/bacula/rescue/
-cp -p rescue/linux/sfdisk.bz2 $RPM_BUILD_ROOT/etc/bacula/rescue/
-
-# this is the static file daemon
-cp -p src/filed/static-bacula-fd $RPM_BUILD_ROOT/etc/bacula/rescue/bacula-fd
-
-# this is the tom's root boot disk
-cp -p ../%{tomsrtbt}/* $RPM_BUILD_ROOT/etc/bacula/rescue/tomsrtbt/
-
 # install the updatedb scripts
 cp -p updatedb/* $RPM_BUILD_ROOT/etc/bacula/updatedb/
 
+# install the logwatch scripts
+cp -p scripts/logwatch/bacula $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
+cp -p scripts/logwatch/logfile.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
+cp -p scripts/logwatch/services.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
+chmod 755 $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
+chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
+chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
+
+# install the rescue files
+mkdir $RPM_BUILD_ROOT/etc/bacula/rescue
+cp -p %{_rescuesrc}/Makefile* $RPM_BUILD_ROOT/etc/bacula/rescue/
+cp -p %{_rescuesrc}/README $RPM_BUILD_ROOT/etc/bacula/rescue/
+cp -p %{_rescuesrc}/configure $RPM_BUILD_ROOT/etc/bacula/rescue/
+cp -p %{_rescuesrc}/version.h $RPM_BUILD_ROOT/etc/bacula/rescue/
+cp -pr %{_rescuesrc}/linux $RPM_BUILD_ROOT/etc/bacula/rescue/
+cp -pr %{_rescuesrc}/autoconf $RPM_BUILD_ROOT/etc/bacula/rescue/
+
 # now clean up permissions that are left broken by the install
 chmod o-r $RPM_BUILD_ROOT/etc/bacula/query.sql
 chmod o-rwx $RPM_BUILD_ROOT/var/bacula
+%if ! %{rh7} && ! %{rh8}
+chmod 755 $RPM_BUILD_ROOT/usr/sbin/bacula-tray-monitor
+chmod 644 $RPM_BUILD_ROOT/etc/bacula/tray-monitor.conf
+%endif
 
 %clean
 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
@@ -514,8 +682,6 @@ chmod o-rwx $RPM_BUILD_ROOT/var/bacula
 
 /etc/bacula/bacula
 /etc/bacula/bconsole
-/etc/bacula/fd
-/etc/bacula/gconsole
 /etc/bacula/create_mysql_database
 /etc/bacula/drop_mysql_database
 /etc/bacula/make_mysql_tables
@@ -533,45 +699,65 @@ chmod o-rwx $RPM_BUILD_ROOT/var/bacula
 /etc/bacula/startmysql
 /etc/bacula/stopmysql
 /etc/bacula/mtx-changer
+/etc/bacula/btraceback.dbx
+/etc/bacula/btraceback.gdb
+#/etc/bacula/dvd-freespace
+#/etc/bacula/dvd-writepart
+/etc/bacula/dvd-handler
 /etc/init.d/bacula-dir
 /etc/init.d/bacula-fd
 /etc/init.d/bacula-sd
+/etc/bacula/rescue
 
-%doc COPYING ChangeLog INSTALL README ReleaseNotes doc/*
+%doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
+%doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
 /usr/man/man1/*
-/usr/share/pixmaps/bacula.png
-/usr/share/gnome/apps/System/bacula.desktop
-/usr/share/applications/bacula.desktop
-%config(noreplace) /etc/bacula/gnome-console.conf
-/etc/logrotate.d/bacula
 
+/etc/logrotate.d/bacula
+/etc/log.d/scripts/services/bacula
 %config(noreplace) /etc/bacula/bacula-dir.conf
 %config(noreplace) /etc/bacula/bacula-fd.conf
 %config(noreplace) /etc/bacula/bacula-sd.conf
 %config(noreplace) /etc/bacula/bconsole.conf
+%config(noreplace) /etc/log.d/conf/logfiles/bacula.conf
+%config(noreplace) /etc/log.d/conf/services/bacula.conf
 /etc/bacula/query.sql
 %dir %{working_dir}
 
-/usr/sbin/*
-/etc/bacula/btraceback.gdb
+/usr/sbin/bacula-dir
+/usr/sbin/bacula-fd
+/usr/sbin/bacula-sd
+/usr/sbin/bcopy
+/usr/sbin/bextract
+/usr/sbin/bls
+/usr/sbin/bscan
+/usr/sbin/btape
+/usr/sbin/btraceback
+/usr/sbin/bconsole
+/usr/sbin/dbcheck
+/usr/sbin/loaderinfo
+/usr/sbin/mtx
+/usr/sbin/scsitape
+/usr/sbin/bsmtp
+/usr/sbin/tapeinfo
 
 %pre mysql
-# test for bacula database older than version 6
+# test for bacula database older than version 8
 # note: this ASSUMES no password has been set for bacula database
-DB_VER=`mysql bacula -e 'select * from Version;'|tail -n 1 2>/dev/null`
-
-if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "6" ]; then
-       echo "This bacula upgrade will update a bacula database from version 6 to 7."
-       echo "You appear to be running database version $DB_VER. You must first update"
-       echo "your database to version 6 and then install this upgrade. The alternative"
-       echo "is to use /etc/bacula/drop_mysql_tables to delete all your your current"
-       echo "catalog information, then do the upgrade. Information on updating a"
-       echo "database older than version 6 can be found in the release notes."
-       exit 1
+DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
+
+if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "8" ]; then
+        echo "This bacula upgrade will update a bacula database from version 8 to 9."
+        echo "You appear to be running database version $DB_VER. You must first update"
+        echo "your database to version 8 and then install this upgrade. The alternative"
+        echo "is to use /etc/bacula/drop_mysql_tables to delete all your your current"
+        echo "catalog information, then do the upgrade. Information on updating a"
+        echo "database older than version 8 can be found in the release notes."
+        exit 1
 fi
 # check for and copy /etc/bacula/console.conf to bconsole.conf
 if [ -s /etc/bacula/console.conf ];then
-       cp -p /etc/bacula/console.conf /etc/bacula/bconsole.conf
+        cp -p /etc/bacula/console.conf /etc/bacula/bconsole.conf
 fi
 
 %post mysql
@@ -585,27 +771,35 @@ fi
 
 # test for an existing database
 # note: this ASSUMES no password has been set for bacula database
-DB_VER=`mysql bacula -e 'select * from Version;'|tail -n 1 2>/dev/null`
+DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
 
 # grant privileges and create tables if they do not exist
 if [ -z "$DB_VER" ]; then
-       echo "Hmm, doesn't look like you have an existing database."
-       echo "Granting privileges for MySQL user bacula..."
-       /etc/bacula/grant_mysql_privileges
-       echo "Creating MySQL bacula database..."
-       /etc/bacula/create_mysql_database
-       echo "Creating bacula tables..."
-       /etc/bacula/make_mysql_tables
-
-# check to see if we need to upgrade a 1.32 or lower database
-elif [ "$DB_VER" -lt "7" ]; then
-       echo "This release requires an upgrade to your bacula database."
-       echo "Backing up your current database..."
-       mysqldump -f --opt bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
-       echo "Upgrading bacula database ..."
-       /etc/bacula/update_mysql_tables
-       echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
+        echo "Hmm, doesn't look like you have an existing database."
+        echo "Granting privileges for MySQL user bacula..."
+        /etc/bacula/grant_mysql_privileges
+        echo "Creating MySQL bacula database..."
+        /etc/bacula/create_mysql_database
+        echo "Creating bacula tables..."
+        /etc/bacula/make_mysql_tables
+
+# check to see if we need to upgrade a 1.36 or lower database
+elif [ "$DB_VER" -lt "9" ]; then
+        echo "This release requires an upgrade to your bacula database."
+        echo "Backing up your current database..."
+        mysqldump -f --opt bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
+        echo "Upgrading bacula database ..."
+        /etc/bacula/update_mysql_tables
+        echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
+
+fi
 
+# create the daemon group
+HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
+if [ -z $HAVE_BACULA ]; then
+        %{groupadd} -r %{daemon_group} > /dev/null 2>&1
+        echo "The group %{daemon_group} has been added to %{group_file}."
+        echo "See the manual chapter Running Bacula for details."
 fi
 
 %preun mysql
@@ -625,8 +819,6 @@ fi
 
 /etc/bacula/bacula
 /etc/bacula/bconsole
-/etc/bacula/fd
-/etc/bacula/gconsole
 /etc/bacula/create_bacula_database
 /etc/bacula/drop_bacula_database
 /etc/bacula/grant_bacula_privileges
@@ -642,48 +834,69 @@ fi
 /etc/bacula/make_catalog_backup
 /etc/bacula/delete_catalog_backup
 /etc/bacula/mtx-changer
+/etc/bacula/btraceback.dbx
+/etc/bacula/btraceback.gdb
+#/etc/bacula/dvd-freespace
+#/etc/bacula/dvd-writepart
+/etc/bacula/dvd-handler
 /etc/init.d/bacula-dir
 /etc/init.d/bacula-fd
 /etc/init.d/bacula-sd
+/etc/bacula/rescue
 
-%doc COPYING ChangeLog INSTALL README ReleaseNotes doc/*
+%doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
+%doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
 /usr/man/man1/*
-/usr/share/pixmaps/bacula.png
-/usr/share/gnome/apps/System/bacula.desktop
-/usr/share/applications/bacula.desktop
-%config(noreplace) /etc/bacula/gnome-console.conf
-/etc/logrotate.d/bacula
 
+/etc/logrotate.d/bacula
+/etc/log.d/scripts/services/bacula
 %config(noreplace) /etc/bacula/bacula-dir.conf
 %config(noreplace) /etc/bacula/bacula-fd.conf
 %config(noreplace) /etc/bacula/bacula-sd.conf
 %config(noreplace) /etc/bacula/bconsole.conf
+%config(noreplace) /etc/log.d/conf/logfiles/bacula.conf
+%config(noreplace) /etc/log.d/conf/services/bacula.conf
 /etc/bacula/query.sql
 %{sqlite_bindir}/libsqlite.a
 %{sqlite_bindir}/sqlite.h
 %dir %{working_dir}
 
-/usr/sbin/*
+/usr/sbin/bacula-dir
+/usr/sbin/bacula-fd
+/usr/sbin/bacula-sd
+/usr/sbin/bcopy
+/usr/sbin/bextract
+/usr/sbin/bls
+/usr/sbin/bscan
+/usr/sbin/btape
+/usr/sbin/btraceback
+/usr/sbin/bconsole
+/usr/sbin/dbcheck
+/usr/sbin/loaderinfo
+/usr/sbin/mtx
+/usr/sbin/scsitape
+/usr/sbin/bsmtp
+/usr/sbin/tapeinfo
 %{sqlite_bindir}/sqlite
-/etc/bacula/btraceback.gdb
+
 
 %pre sqlite
-# test for bacula database older than version 6
-if [ -s %{working_dir}/bacula.db ];then
-       DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite %{working_dir}/bacula.db | tail -n 1 2>/dev/null`
-       if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "6" ]; then
-               echo "This bacula upgrade will update a bacula database from version 6 to 7."
-               echo "You appear to be running database version $DB_VER. You must first update"
-               echo "your database to version 6 and then install this upgrade. The alternative"
-               echo "is to use /etc/bacula/drop_sqlite_tables to delete all your your current"
-               echo "catalog information, then do the upgrade. Information on updating a"
-               echo "database older than version 6 can be found in the release notes."
-               exit 1
-       fi
+# test for bacula database older than version 8
+if [ -s %{working_dir}/bacula.db ] && [ -s %{sqlite_bindir}/sqlite ];then
+        DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
+        if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "8" ]; then
+                echo "This bacula upgrade will update a bacula database from version 8 to 9."
+                echo "You appear to be running database version $DB_VER. You must first update"
+                echo "your database to version 8 and then install this upgrade. The alternative"
+                echo "is to use /etc/bacula/drop_sqlite_tables to delete all your your current"
+                echo "catalog information, then do the upgrade. Information on updating a"
+                echo "database older than version 8 can be found in the release notes."
+                exit 1
+        fi
 fi
 # check for and copy /etc/bacula/console.conf to bconsole.conf
 if [ -s /etc/bacula/console.conf ];then
-       cp -p /etc/bacula/console.conf /etc/bacula/bconsole.conf
+        cp -p /etc/bacula/console.conf /etc/bacula/bconsole.conf
 fi
 
 %post sqlite
@@ -696,23 +909,40 @@ fi
 
 # test for an existing database
 if [ -s %{working_dir}/bacula.db ]; then
-       DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite %{working_dir}/bacula.db | tail -n 1 2>/dev/null`
-       # check to see if we need to upgrade a 1.32 or lower database
-       if [ "$DB_VER" -lt "7" ]; then
-               echo "This release requires an upgrade to your bacula database."
-               echo "Backing up your current database..."
-               echo ".dump" | %{sqlite_bindir}/sqlite %{working_dir}/bacula.db | bzip2 > %{working_dir}/bacula_backup.sql.bz2
-               echo "Upgrading bacula database ..."
-               /etc/bacula/update_sqlite_tables
-               echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
-       fi
+        DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
+        # check to see if we need to upgrade a 1.36 or lower database
+        if [ "$DB_VER" -lt "8" ]; then
+                echo "This bacula upgrade requires a database update to version 9. You appear to"
+                echo "be running database version $DB_VER. You must update your database using the"
+                echo "upgrade scripts in the bacula-updatedb package. The alternative"
+                echo "is to use /etc/bacula/drop_sqlite_tables to delete all your your current"
+                echo "catalog information, then /etc/bacula/make_sqlite_tables. Information on updating a"
+                echo "database older than version 8 can be found in the release notes."
+        fi      
+        
+        if [ "$DB_VER" -lt "9" ] && [ "$DB_VER" -ge "8" ]; then
+                echo "This release requires an upgrade to your bacula database."
+                echo "Backing up your current database..."
+                echo ".dump" | %{sqlite_bindir}/sqlite %{working_dir}/bacula.db | bzip2 > %{working_dir}/bacula_backup.sql.bz2
+                echo "Upgrading bacula database ..."
+                /etc/bacula/update_sqlite_tables
+                echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
+        fi
 else
-       # create the database and tables
-       echo "Hmm, doesn't look like you have an existing database."
-       echo "Creating SQLite database..."
-       /etc/bacula/create_sqlite_database
-       echo "Creating the SQLite tables..."
-       /etc/bacula/make_sqlite_tables
+        # create the database and tables
+        echo "Hmm, doesn't look like you have an existing database."
+        echo "Creating SQLite database..."
+        /etc/bacula/create_sqlite_database
+        echo "Creating the SQLite tables..."
+        /etc/bacula/make_sqlite_tables
+fi
+
+# create the daemon group
+HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
+if [ -z $HAVE_BACULA ]; then
+        %{groupadd} -r %{daemon_group} > /dev/null 2>&1
+        echo "The group %{daemon_group} has been added to %{group_file}."
+        echo "See the manual chapter Running Bacula for details."
 fi
 
 %preun sqlite
@@ -732,8 +962,6 @@ fi
 
 /etc/bacula/bacula
 /etc/bacula/bconsole
-/etc/bacula/fd
-/etc/bacula/gconsole
 /etc/bacula/create_postgresql_database
 /etc/bacula/drop_postgresql_database
 /etc/bacula/make_postgresql_tables
@@ -749,27 +977,62 @@ fi
 /etc/bacula/make_catalog_backup
 /etc/bacula/delete_catalog_backup
 /etc/bacula/mtx-changer
+/etc/bacula/btraceback.dbx
+/etc/bacula/btraceback.gdb
+#/etc/bacula/dvd-freespace
+#/etc/bacula/dvd-writepart
+/etc/bacula/dvd-handler
 /etc/init.d/bacula-dir
 /etc/init.d/bacula-fd
 /etc/init.d/bacula-sd
+/etc/bacula/rescue
 
-%doc COPYING ChangeLog INSTALL README ReleaseNotes doc/*
+%doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
+%doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
 /usr/man/man1/*
-/usr/share/pixmaps/bacula.png
-/usr/share/gnome/apps/System/bacula.desktop
-/usr/share/applications/bacula.desktop
-%config(noreplace) /etc/bacula/gnome-console.conf
-/etc/logrotate.d/bacula
 
+/etc/logrotate.d/bacula
+/etc/log.d/scripts/services/bacula
 %config(noreplace) /etc/bacula/bacula-dir.conf
 %config(noreplace) /etc/bacula/bacula-fd.conf
 %config(noreplace) /etc/bacula/bacula-sd.conf
 %config(noreplace) /etc/bacula/bconsole.conf
+%config(noreplace) /etc/log.d/conf/logfiles/bacula.conf
+%config(noreplace) /etc/log.d/conf/services/bacula.conf
 /etc/bacula/query.sql
 %dir %{working_dir}
 
-/usr/sbin/*
-/etc/bacula/btraceback.gdb
+/usr/sbin/bacula-dir
+/usr/sbin/bacula-fd
+/usr/sbin/bacula-sd
+/usr/sbin/bcopy
+/usr/sbin/bextract
+/usr/sbin/bls
+/usr/sbin/bscan
+/usr/sbin/btape
+/usr/sbin/btraceback
+/usr/sbin/bconsole
+/usr/sbin/dbcheck
+/usr/sbin/loaderinfo
+/usr/sbin/mtx
+/usr/sbin/scsitape
+/usr/sbin/bsmtp
+/usr/sbin/tapeinfo
+
+%pre postgresql
+# test for bacula database older than version 8
+# note: this ASSUMES no password has been set for bacula database
+DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
+
+if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "8" ]; then
+        echo "This bacula upgrade will update a bacula database from version 8 to 9."
+        echo "You appear to be running database version $DB_VER. You must first update"
+        echo "your database to version 8 and then install this upgrade. The alternative"
+        echo "is to use /etc/bacula/drop_postgresql_tables to delete all your your current"
+        echo "catalog information, then do the upgrade. Information on updating a"
+        echo "database older than version 8 can be found in the release notes."
+        exit 1
+fi
 
 %post postgresql
 # add our links
@@ -781,17 +1044,37 @@ fi
 
 # test for an existing database
 # note: this ASSUMES no password has been set for bacula database
-DB_VER=`echo 'select * from Version;' | psql bacula | tail -3 | head -1 2>/dev/null`
+DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
 
 # grant privileges and create tables if they do not exist
 if [ -z "$DB_VER" ]; then
-       echo "Hmm, doesn't look like you have an existing database."
-       echo "Granting privileges for PostgreSQL user bacula..."
-       /etc/bacula/grant_postgresql_privileges
-       echo "Creating PostgreSQL bacula database..."
-       /etc/bacula/create_postgresql_database
-       echo "Creating bacula tables..."
-       /etc/bacula/make_postgresql_tables
+        echo "Hmm, doesn't look like you have an existing database."
+        echo "Creating PostgreSQL bacula database..."
+        /etc/bacula/create_postgresql_database
+        echo "Creating bacula tables..."
+        /etc/bacula/make_postgresql_tables
+        echo "Granting privileges for PostgreSQL user bacula..."
+        /etc/bacula/grant_postgresql_privileges
+
+# check to see if we need to upgrade a 1.36 or lower database
+elif [ "$DB_VER" -lt "9" ]; then
+        echo "This release requires an upgrade to your bacula database."
+        echo "Backing up your current database..."
+        pg_dump bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
+        echo "Upgrading bacula database ..."
+        /etc/bacula/update_postgresql_tables
+        echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
+        
+fi
+
+# create the daemon group
+HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
+if [ -z $HAVE_BACULA ]; then
+        %{groupadd} -r %{daemon_group} > /dev/null 2>&1
+        echo "The group %{daemon_group} has been added to %{groupfile}."
+        echo "See the manual chapter Running Bacula for details."
+fi
+        
 
 %preun postgresql
 # delete our links
@@ -806,11 +1089,13 @@ fi
 %files client
 %defattr(-,root,root)
 
-/etc/bacula/fd
 /etc/bacula/bconsole
 /etc/init.d/bacula-fd
+/etc/bacula/rescue
+
+%doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
+%doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
 
-%doc COPYING ChangeLog INSTALL README ReleaseNotes doc/*
 /etc/logrotate.d/bacula
 
 %config(noreplace) /etc/bacula/bacula-fd.conf
@@ -820,6 +1105,7 @@ fi
 /usr/sbin/bacula-fd
 /usr/sbin/btraceback
 /etc/bacula/btraceback.gdb
+/etc/bacula/btraceback.dbx
 /usr/sbin/bsmtp
 /usr/sbin/bconsole
 
@@ -830,45 +1116,20 @@ if [ "$1" -ge 1 ] ; then
 /sbin/chkconfig --add bacula-fd
 fi
 
+# create the daemon group
+HAVE_BACULA=`cat %{group_file} | grep %{daemon_group} 2>/dev/null`
+if [ -z $HAVE_BACULA ]; then
+        %{groupadd} -r %{daemon_group} > /dev/null 2>&1
+        echo "The group %{daemon_group} has been added to %{group_file}."
+        echo "See the manual chapter Running Bacula for details."
+fi
+
 %preun client
 # delete our link
 if [ $1 = 0 ]; then
 /sbin/chkconfig --del bacula-fd
 fi
 
-%files rescue
-%defattr(-,root,root)
-/etc/bacula/rescue/backup.etc.list
-/etc/bacula/rescue/format_floppy
-/etc/bacula/rescue/getdiskinfo
-/etc/bacula/rescue/make_rescue_disk
-/etc/bacula/rescue/restore_bacula
-/etc/bacula/rescue/restore_etc
-/etc/bacula/rescue/run_grub
-/etc/bacula/rescue/run_lilo
-/etc/bacula/rescue/sfdisk.bz2
-/etc/bacula/rescue/bacula-fd
-/etc/bacula/rescue/tomsrtbt/*
-
-%post rescue
-# link our current installed conf file to the rescue directory
-ln -s /etc/bacula-fd.conf /etc/bacula/rescue/bacula-fd.conf
-
-# run getdiskinfo
-echo "Creating rescue files for this system..."
-cd /etc/bacula/rescue
-./getdiskinfo
-
-%preun rescue
-# remove the files created after the initial rpm installation
-rm -f /etc/bacula/rescue/bacula-fd.conf
-rm -f /etc/bacula/rescue/partition.*
-rm -f /etc/bacula/rescue/format.*
-rm -f /etc/bacula/rescue/mount_drives
-rm -f /etc/bacula/rescue/start_network
-rm -f /etc/bacula/rescue/sfdisk
-rm -rf /etc/bacula/rescue/diskinfo/*
-
 %files updatedb
 %defattr(-,root,root)
 /etc/bacula/updatedb/*
@@ -882,13 +1143,135 @@ echo "The database update scripts were installed to /etc/bacula/updatedb"
 /etc/bacula/gconsole
 %config(noreplace) /etc/bacula/gnome-console.conf
 /usr/share/pixmaps/bacula.png
+
+%if %{rh7}
 /usr/share/gnome/apps/System/bacula.desktop
+%else
 /usr/share/applications/bacula.desktop
+%endif
 
-%post gconsole
+%if ! %{rh7} && ! %{rh8}
+/usr/sbin/bacula-tray-monitor
+%config(noreplace) /etc/bacula/tray-monitor.conf
+/usr/share/pixmaps/bacula-tray-monitor.xpm
+/usr/share/applications/bacula-tray-monitor.desktop
+%endif
+
+%if ! %{su9} 
+# add the console helper files
+%config(noreplace,missingok) /etc/pam.d/gnome-console
+%config(noreplace,missingok) /etc/security/console.apps/gnome-console
+/usr/bin/gnome-console
+%endif
 
 
 %changelog
+* Sun Nov 13 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- minor edit to _dist for SLES9 compatibility
+* Sat Nov 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 1.38.0 release
+- kern changed location of pdf files and html manual in docs package
+* Sun Oct 30 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 1.38.0 release
+- add docs (from prebuilt tarball) and rescue packages back in
+- remove dvd-freespace and dvd-writepart files, add dvd-handler
+- remove 3 of 4 sqlite script patches as not needed
+* Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- changes for 1.38
+- remove docs and rescue sections (remove static fd)
+- add dvd-freespace and dvd-writepart files
+- update depkgs to 22Jun05
+- change database update to 8 to 9
+* Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- minor cleanups before 1.38 changes
+- add popt and popt-devel build dependencies
+- add tetex and tetex-dvips dependencies for doc build
+- replace deprecated Copyright tag with License
+* Sat May 07 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- move sqlite installation bindir to /usr/lib/bacula/sqlite and remove
+- conflict with sqlite packages. remove readline dependency.
+* Sun Apr 17 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- release 1.36.3 update docs
+* Tue Apr 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add centos4 build tag
+- add x86_64 build tag
+* Sun Apr 03 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add rhel4 build tag
+- clean up for mysql4 which is now mdk-10.1, suse-9.2 and rhel4
+* Sun Mar 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add rhel3 build tag
+* Tue Mar 01 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- fix tray-monitor.conf for noreplace
+* Mon Feb 28 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- fix distribution check for Fedora and Whitebox
+* Sun Feb 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add logwatch script
+- add dvd scripts
+* Sat Jan 15 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add build for Fedora Core 3 (linc now included in ORDit2)
+- add mysql4 define for Mandrake 10.1
+* Fri Jan 14 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- fix {group_file} variable in post scripts
+* Thu Dec 30 2004 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add distribution checking and custom Distribution tag
+* Thu Dec 09 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- ASSIGNMENT OF COPYRIGHT
+- FOR VALUE RECEIVED, D. Scott Barninger hereby sells, transfers and 
+- assigns unto Kern Sibbald, his successors, assigns and personal representatives, 
+- all right, title and interest in and to the copyright in this software RPM
+- spec file. D. Scott Barninger warrants good title to said copyright, that it is 
+- free of all liens, encumbrances or any known claims against said copyright.
+* Sat Dec 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- bug 183 fixes
+- thanks to Daniel Widyono
+- update description for rescue package to describe cdrom creation
+* Thu Nov 18 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- update depkgs to 29Oct04
+* Fri Nov 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- add cdrom rescue to bacula-rescue package
+* Sun Oct 31 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- misc fixes from 1.36.0 suse feedback
+- fix situation where sqlite database exists but sqlite has been removed.
+* Fri Oct 22 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- remove tray-monitor from RH8 build
+- fix permissions on tray-monitor files
+* Wed Oct 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- add Mandrake support and tray-monitor, misc changes for 1.35.8/1.36.0,
+- change database update to 7 to 8 upgrade,
+- revert depkgs to 08Mar04 as there seems to be a bug in the sqlite
+- build in 30Jul04, add freetype dependancy to gnome package.
+* Sun Sep 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- add documentation to console for groupadd
+* Sat Sep 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- add support for running daemons as root.bacula
+- correct for change in location of floppy rescue files in 1.35.2
+- removed /etc/bacula/fd script from all packages as it has disappeared from 1.35.2
+- updated depgkgs to 30Jul04
+* Thu Jun 24 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- really, really fix symlink creation for gconsole
+* Thu Jun 17 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- fix symlink creation in gconsole post install
+* Sat Jun 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- fixed error in gconsole post script
+* Fri Apr 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- add check for gconsole symlink before trying to create it
+* Sun Apr 11 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- fix some minor permissions issues on doc files that CVS won't let us fix
+* Sun Apr 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- add pkgconfig to BuildRequires
+- clean up gnome1/2 menu entries for appropriate packages
+* Fri Apr 02 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- tightened up doc distribution
+* Tue Mar 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- added usermode (Redhat) and xsu (SuSE) support for gnome-console;
+- rpm's horrible bug that prevents nested conditional macros prevents me
+- from implementing these 2 separate approaches within the conditionals which
+- create the separate server packages.
+- the solution adopted is to remove the gnome-console files from the server packages
+- so bacula-gconsole is now an add on for both client and server packages.
+- this also now allows the server packages to be install on machines without
+- an X-server and we can still maintain a single spec file.
+- added tests to make sure we have defined platform and database macros.
 * Sat Mar 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
 - corrected mysql prerequisites for suse
 * Mon Mar 1 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>