]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/platforms/mandrake/bacula.spec.in
Remove libtermcap dependency for fc9.
[bacula/bacula] / bacula / platforms / mandrake / bacula.spec.in
index 1b7e69d77f32b3a19ecff2c2ac8e2b04c8da8774..91fe879ce5dbd63062c6a4a2beac4d8e1b5c6aa3 100644 (file)
@@ -1,24 +1,82 @@
 # Bacula RPM spec file
 # Bacula RPM spec file
-# Copyright (C) 2000-2005 Kern Sibbald
+# Copyright (C) 2000-2008 Kern Sibbald
 
 # Platform Build Configuration
 
 # basic defines for every build
 
 # Platform Build Configuration
 
 # basic defines for every build
+%define _version @VERSION@
+%define _release 1
+%define depkgs_version 22Feb08
+%define _rescuever @VERSION@
+%define docs_version @VERSION@
+
+# any patches for this release
+# be sure to check the setup section for patch macros
+
+#--------------------------------------------------------------------------
+# it should not be necessary to change anything below here for a release
+# except for patch macros in the setup section
+#--------------------------------------------------------------------------
+
+# third party packagers
+%define _packager D. Scott Barninger <barninger@fairfieldcomputers.com>
+%{?contrib_packager:%define _packager %{contrib_packager}}
+
+Summary: Bacula - The Network Backup Solution
+Name: bacula
+Version: %{_version}
+Release: %{_release}
+Group: System Environment/Daemons
+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: Release_Notes-%{version}-%{release}.tar.gz
+Source3: http://www.prdownloads.sourceforge.net/bacula/%{name}-docs-%{docs_version}.tar.gz
+Source4: http://www.prdownloads.sourceforge.net/bacula/%{name}-rescue-%{_rescuever}.tar.gz
+Source5: bacula-2.2.7-postgresql.patch
+BuildRoot: %{_tmppath}/%{name}-root
+URL: http://www.bacula.org/
+Vendor: The Bacula Team
+Packager: %{_packager}
+
+# define the basic package description
+%define blurb Bacula - It comes by night and sucks the vital essence from your computers.
+%define blurb2 Bacula is a set of computer programs that permit you (or the system
+%define blurb3 administrator) to manage backup, recovery, and verification of computer
+%define blurb4 data across a network of computers of different kinds. In technical terms,
+%define blurb5 it is a network client/server based backup program. Bacula is relatively
+%define blurb6 easy to use and efficient, while offering many advanced storage management
+%define blurb7 features that make it easy to find and recover lost or damaged files.
+%define blurb8 Bacula source code has been released under the GPL version 2 license.
+
+# directory locations
+%define sqlite_bindir %_libdir/bacula/sqlite
+%define _docsrc ../%{name}-docs-%{docs_version}
+%define _rescuesrc ../%{name}-rescue-%{_rescuever}
 %define depkgs ../depkgs
 %define depkgs ../depkgs
-%define depkgs_version 22Jun05
-%define sqlite_bindir /usr/lib/bacula/sqlite
-%define working_dir /var/bacula
+%define _mandir /usr/share/man
+
+# directory locations for FHS-compatibility
+%define sysconf_dir /etc/bacula
+%define script_dir %_libdir/bacula
+%define working_dir /var/lib/bacula
+%define pid_dir /var/run
+
+# NOTE these defines are used in some rather complex useradd and groupadd
+# commands. If you change them examine the post scripts for consequences.
 %define director_daemon_user bacula
 %define storage_daemon_user bacula
 %define file_daemon_user root
 %define daemon_group bacula
 # group that has write access to tape devices, usually disk on Linux
 %define director_daemon_user bacula
 %define storage_daemon_user bacula
 %define file_daemon_user root
 %define daemon_group bacula
 # group that has write access to tape devices, usually disk on Linux
-%define device_group disk
+%define storage_daemon_group disk
 %define user_file /etc/passwd
 %define group_file /etc/group
 %define user_file /etc/passwd
 %define group_file /etc/group
+
+# program locations
 %define useradd /usr/sbin/useradd
 %define groupadd /usr/sbin/groupadd
 %define useradd /usr/sbin/useradd
 %define groupadd /usr/sbin/groupadd
-%define _rescuever 1.8.2
+%define usermod /usr/sbin/usermod
 
 # platform defines - set one below or define the build_xxx on the command line
 # RedHat builds
 
 # platform defines - set one below or define the build_xxx on the command line
 # RedHat builds
 %define fc3 0
 %{?build_fc3:%define fc3 1}
 %define fc4 0
 %define fc3 0
 %{?build_fc3:%define fc3 1}
 %define fc4 0
-%{?build_fc4:%define fc3 1}
+%{?build_fc4:%define fc4 1}
+%define fc5 0
+%{?build_fc5:%define fc5 1}
+%define fc6 0
+%{?build_fc6:%define fc6 1}
+%define fc7 0
+%{?build_fc7:%define fc7 1}
+%define fc8 0
+%{?build_fc8:%define fc8 1}
+%define fc9 0
+%{?build_fc9:%define fc9 1}
 # Whitebox Enterprise build
 %define wb3 0
 %{?build_wb3:%define wb3 1}
 # Whitebox Enterprise build
 %define wb3 0
 %{?build_wb3:%define wb3 1}
 %define rhel4 0
 %{?build_rhel4:%define rhel4 1}
 %{?build_rhel4:%define fc3 1}
 %define rhel4 0
 %{?build_rhel4:%define rhel4 1}
 %{?build_rhel4:%define fc3 1}
+%define rhel5 0
+%{?build_rhel5:%define rhel5 1}
+%{?build_rhel5:%define fc6 1}
 # CentOS build
 # CentOS build
+%define centos3 0
+%{?build_centos3:%define centos3 1}
+%{?build_centos3:%define wb3 1}
 %define centos4 0
 %{?build_centos4:%define centos4 1}
 %{?build_centos4:%define fc3 1}
 %define centos4 0
 %{?build_centos4:%define centos4 1}
 %{?build_centos4:%define fc3 1}
+%define centos5 0
+%{?build_centos5:%define centos5 1}
+%{?build_centos5:%define fc6 1}
+# SL build
+%define sl3 0
+%{?build_sl3:%define sl3 1}
+%{?build_sl3:%define wb3 1}
+%define sl4 0
+%{?build_sl4:%define sl4 1}
+%{?build_sl4:%define fc3 1}
+%define sl5 0
+%{?build_sl5:%define sl5 1}
+%{?build_sl5:%define fc6 1}
 # SuSE build
 %define su9 0
 %{?build_su9:%define su9 1}
 # SuSE build
 %define su9 0
 %{?build_su9:%define su9 1}
-# Mandrake build
+%define su10 0
+%{?build_su10:%define su10 1}
+%define su102 0
+%{?build_su102:%define su102 1}
+%define su103 0
+%{?build_su103:%define su103 1}
+%define su110 0
+%{?build_su110:%define su110 1}
+# Mandrake builds
 %define mdk 0
 %{?build_mdk:%define mdk 1}
 %define mdk 0
 %{?build_mdk:%define mdk 1}
+%define mdv 0
+%{?build_mdv:%define mdv 1}
+%{?build_mdv:%define mdk 1}
+
+# client only build
+%define client_only 0
+%{?build_client_only:%define client_only 1}
 
 # test for a platform definition
 
 # test for a platform definition
-%if ! %{rh7} && ! %{rh8} && ! %{rh9} && ! %{fc1} && ! %{fc3} && ! %{wb3} && ! %{su9} && ! %{mdk}
+%if !%{rh7} && !%{rh8} && !%{rh9} && !%{fc1} && !%{fc3} && !%{fc4} && !%{fc5} && !%{fc6} && !%{fc7} && !%{fc8} && !%{fc9} && !%{wb3} && !%{su9} && !%{su10} && !%{su102} && !%{su103} && !%{su110} && !%{mdk}
 %{error: You must specify a platform. Please examine the spec file.}
 exit 1
 %endif
 %{error: You must specify a platform. Please examine the spec file.}
 exit 1
 %endif
@@ -67,17 +169,22 @@ exit 1
 %define mysql 0
 %{?build_mysql:%define mysql 1}
 # if using mysql 4.x define this and mysql above
 %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
+# currently: Mandrake 10.1, SuSE 9.x & 10.0, RHEL4 and Fedora Core 4
 %define mysql4 0
 %{?build_mysql4:%define mysql4 1}
 %{?build_mysql4:%define mysql 1}
 %define mysql4 0
 %{?build_mysql4:%define mysql4 1}
 %{?build_mysql4:%define mysql 1}
+# if using mysql 5.x define this and mysql above
+# currently: SuSE 10.1 and Fedora Core 5
+%define mysql5 0
+%{?build_mysql5:%define mysql5 1}
+%{?build_mysql5:%define mysql 1}
 %define sqlite 0
 %{?build_sqlite:%define sqlite 1}
 %define postgresql 0
 %{?build_postgresql:%define postgresql 1}
 
 # test for a database definition
 %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}
+%if ! %{mysql} && ! %{sqlite} && ! %{postgresql} && ! %{client_only}
 %{error: You must specify database support. Please examine the spec file.}
 exit 1
 %endif
 %{error: You must specify database support. Please examine the spec file.}
 exit 1
 %endif
@@ -86,7 +193,7 @@ exit 1
 %define db_backend mysql
 %endif
 %if %{sqlite}
 %define db_backend mysql
 %endif
 %if %{sqlite}
-%define db_backend sqlite
+%define db_backend sqlite3
 %endif
 %if %{postgresql}
 %define db_backend postgresql
 %endif
 %if %{postgresql}
 %define db_backend postgresql
@@ -97,69 +204,132 @@ exit 1
 %{?build_x86_64:%define x86_64 1}
 
 # check what distribution we are
 %{?build_x86_64:%define x86_64 1}
 
 # check what distribution we are
-%if %{rh7} || %{rh8} || %{rh9} || %{rhel3} || %{rhel4}
+%if %{rh7} || %{rh8} || %{rh9} || %{rhel3} || %{rhel4} || %{rhel5}
 %define _dist %(grep Red /etc/redhat-release)
 %endif
 %define _dist %(grep Red /etc/redhat-release)
 %endif
-%if %{fc1}
+%if %{fc1} || %{fc4} || %{fc5} || %{fc7} || %{fc8} || %{fc9}
 %define _dist %(grep Fedora /etc/redhat-release)
 %endif
 %define _dist %(grep Fedora /etc/redhat-release)
 %endif
-%if %{centos4}
+%if %{centos5} || %{centos4} || %{centos3}
 %define _dist %(grep CentOS /etc/redhat-release)
 %endif
 %define _dist %(grep CentOS /etc/redhat-release)
 %endif
-%if %{fc3} && ! %{rhel4} && ! %{centos4}
+%if %{sl5} ||%{sl4} || %{sl3}
+%define _dist %(grep 'Scientific Linux' /etc/redhat-release)
+%endif
+%if %{fc3} && ! %{rhel4} && ! %{centos4} && ! %{sl4}
+%define _dist %(grep Fedora /etc/redhat-release)
+%endif
+%if %{fc6} && ! %{rhel5} && ! %{centos5} && ! %{sl5}
 %define _dist %(grep Fedora /etc/redhat-release)
 %endif
 %define _dist %(grep Fedora /etc/redhat-release)
 %endif
-%if %{wb3} && ! %{rhel3}
+%if %{wb3} && ! %{rhel3} && ! %{centos3} && ! %{sl3}
 %define _dist %(grep White /etc/whitebox-release)
 %endif
 %define _dist %(grep White /etc/whitebox-release)
 %endif
-%if %{su9}
-%define _dist %(grep SuSE /etc/SuSE-release)
+%if %{su9} || %{su10} || %{su102} || %{su103} || %{su110}
+%define _dist %(grep -i SuSE /etc/SuSE-release)
 %endif
 %if %{mdk}
 %endif
 %if %{mdk}
-%define _dist %(grep Mandrake /etc/mandrake-release)
+%define _dist %(grep Mand /etc/mandrake-release)
 %endif
 %endif
+Distribution: %{_dist}
 
 
-# Should we build gconsole, possible only if gnome >= 2.0 available
-%if %{rh7}
+# Should we build gconsole, possible only if gtk= >= 2.4 available.
+# leaving all the BuildRequires and Requires in place below for now.
+# su10, fc3 and fc4 now nobuild, tray monitor fails to build as of 2.2.1 
+# release as it needs 2.10
+
+%define gconsole 1
+%if %{rh7} || %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{fc3} || %{fc4} || %{su9} || %{su10}
+%define gconsole 0
+%endif
+%if %{mdk} && ! %{mdv}
 %define gconsole 0
 %define gconsole 0
+%endif
+
+# specifically disallow gconsole if desired
+%{?nobuild_gconsole:%define gconsole 0}
+
+# Should we build wxconsole, only wxWidgets >=2.6 is supported
+# SuSE 10 and FC4 and newer
+%define wxconsole 0
+%{?build_wxconsole:%define wxconsole 1}
+
+# Should we build bat
+# requires >= Qt-4.2
+%define bat 0
+%{?build_bat:%define bat 1}
+
+# should we turn on python support
+%define python 0
+%{?build_python:%define python 1}
+
+# specifically disallow build of mtx package if desired
+%define mtx 1
+%{?nobuild_mtx:%define mtx 0}
+
+# do we need to patch for old postgresql version?
+%define old_pgsql 0
+%{?build_old_pgsql:%define old_pgsql 1}
+
+# Mandriva somehow forces the manpage file extension to bz2 rather than gz
+%if %{mdk}
+%define manpage_ext bz2
 %else
 %else
-%define gconsole 1
+%define manpage_ext gz
 %endif
 
 %endif
 
-Summary: Bacula - The Network Backup Solution
-Name: bacula
-Version: @VERSION@
-Release: 1
-Group: System Environment/Daemons
-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: 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: %{_dist}
-Packager: D. Scott Barninger <barninger@fairfieldcomputers.com>
+# for client only build
+%if %{client_only}
+%define mysql 0
+%define mysql4 0
+%define mysql5 0
+%define postgresql 0
+%define sqlite 0
+%define gconsole 0
+%define wxconsole 0
+%endif
 
 
-%define _docsrc ../%{name}-docs-%{version}
-%define _rescuesrc ../%{name}-rescue-%{_rescuever}
+%{expand: %%define gccver %(rpm -q --queryformat %%{version} gcc)}
+%{expand: %%define gccrel %(rpm -q --queryformat %%{release} gcc)}
 
 
-BuildRequires: atk-devel, ncurses-devel, pango-devel, perl
-BuildRequires: libstdc++-devel, libxml2-devel, zlib-devel, pkgconfig
+BuildRequires: gcc, gcc-c++, make, autoconf
+BuildRequires: ncurses-devel, perl
+BuildRequires: libstdc++-devel = %{gccver}-%{gccrel}, libxml2-devel, zlib-devel
 BuildRequires: openssl-devel
 BuildRequires: openssl-devel
+%if %{python}
+BuildRequires: python, python-devel
+%{expand: %%define pyver %(python -c 'import sys;print(sys.version[0:3])')}
+%endif
+%if %{gconsole}
+BuildRequires: pkgconfig, pango-devel, atk-devel
+%endif
+
+# Rh qt4 packages don't have a provide for, guess what, qt!
+# still broken in fc8, ok in fc9
+# so fix for broken rh
+%define broken_rh 0
+%if %{rhel5} || %{centos5} || %{sl5} || %{fc5} || %{fc6} || %{fc7} || %{fc8}
+%define broken_rh 1
+%endif
+%if %{bat} && ! %{broken_rh}
+BuildRequires: qt-devel >= 4.2
+%endif
+%if %{bat} && %{broken_rh}
+BuildRequires: qt4-devel >= 4.2
+%endif
+
 %if %{rh7}
 BuildRequires: libtermcap-devel
 BuildRequires: glibc-devel >= 2.2
 %if %{rh7}
 BuildRequires: libtermcap-devel
 BuildRequires: glibc-devel >= 2.2
-BuildRequires: ORBit-devel
 %endif
 %if %{su9}
 BuildRequires: termcap
 %endif
 %if %{su9}
 BuildRequires: termcap
+BuildRequires: glibc-devel >= 2.3
+%endif
+%if %{su9} && %{gconsole}
 BuildRequires: libgnome >= 2.0
 BuildRequires: gtk2-devel >= 2.0
 BuildRequires: libgnomeui-devel >= 2.0
 BuildRequires: libgnome >= 2.0
 BuildRequires: gtk2-devel >= 2.0
 BuildRequires: libgnomeui-devel >= 2.0
-BuildRequires: glibc-devel >= 2.3
 BuildRequires: ORBit2-devel
 BuildRequires: libart_lgpl-devel >= 2.0
 BuildRequires: libbonobo-devel >= 2.0
 BuildRequires: ORBit2-devel
 BuildRequires: libart_lgpl-devel >= 2.0
 BuildRequires: libbonobo-devel >= 2.0
@@ -169,26 +339,136 @@ BuildRequires: gconf2-devel
 BuildRequires: linc-devel
 BuildRequires: freetype2-devel
 %endif
 BuildRequires: linc-devel
 BuildRequires: freetype2-devel
 %endif
+%if %{su10}
+BuildRequires: termcap
+BuildRequires: glibc-devel >= 2.3
+%endif
+%if %{su10} && %{gconsole}
+BuildRequires: libgnome >= 2.12
+BuildRequires: gtk2-devel >= 2.8
+BuildRequires: libgnomeui-devel >= 2.12
+BuildRequires: ORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.3
+BuildRequires: libbonobo-devel >= 2.10
+BuildRequires: libbonoboui-devel >= 2.10
+BuildRequires: bonobo-activation-devel
+BuildRequires: gconf2-devel
+BuildRequires: freetype2-devel
+BuildRequires: cairo-devel
+BuildRequires: fontconfig-devel >= 2.3
+BuildRequires: gnome-vfs2-devel >= 2.12
+BuildRequires: libpng-devel
+%endif
+%if %{su102}
+BuildRequires: termcap
+BuildRequires: glibc-devel >= 2.5
+%endif
+%if %{su102} && %{gconsole}
+BuildRequires: libgnome >= 2.16
+BuildRequires: gtk2-devel >= 2.10
+BuildRequires: libgnomeui-devel >= 2.16
+BuildRequires: ORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.3
+BuildRequires: libbonobo-devel >= 2.16
+BuildRequires: libbonoboui-devel >= 2.16
+BuildRequires: bonobo-activation-devel
+BuildRequires: gconf2-devel
+BuildRequires: freetype2-devel
+BuildRequires: cairo-devel
+BuildRequires: fontconfig-devel >= 2.4
+BuildRequires: gnome-vfs2-devel >= 2.16
+BuildRequires: libpng-devel
+%endif
+%if %{su103}
+BuildRequires: termcap
+BuildRequires: glibc-devel >= 2.6
+%endif
+%if %{su103} && %{gconsole}
+BuildRequires: libgnome >= 2.20
+BuildRequires: gtk2-devel >= 2.12
+BuildRequires: libgnomeui-devel >= 2.20
+BuildRequires: ORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.3
+BuildRequires: libbonobo-devel >= 2.20
+BuildRequires: libbonoboui-devel >= 2.20
+BuildRequires: bonobo-activation-devel
+BuildRequires: gconf2-devel
+BuildRequires: freetype2-devel
+BuildRequires: cairo-devel
+BuildRequires: fontconfig-devel >= 2.4
+BuildRequires: gnome-vfs2-devel >= 2.20
+BuildRequires: libpng-devel
+%endif
+%if %{su110}
+BuildRequires: termcap
+BuildRequires: glibc-devel >= 2.8
+%endif
+%if %{su110} && %{gconsole}
+BuildRequires: libgnome >= 2.22
+BuildRequires: gtk2-devel >= 2.12
+BuildRequires: libgnomeui-devel >= 2.22
+BuildRequires: ORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.3
+BuildRequires: libbonobo-devel >= 2.22
+BuildRequires: libbonoboui-devel >= 2.22
+BuildRequires: bonobo-activation-devel
+BuildRequires: gconf2-devel
+BuildRequires: freetype2-devel
+BuildRequires: cairo-devel
+BuildRequires: fontconfig-devel >= 2.4
+BuildRequires: gnome-vfs2-devel >= 2.22
+BuildRequires: libpng-devel
+%endif
 %if %{mdk}
 BuildRequires: libtermcap-devel
 %if %{mdk}
 BuildRequires: libtermcap-devel
+BuildRequires: libstdc++-static-devel
+BuildRequires: glibc-static-devel
+BuildRequires: glibc-devel >= 2.3
+%endif
+%if %{mdk} && !%{mdv} && %{gconsole}
 BuildRequires: gtk2-devel >= 2.0
 BuildRequires: libgnomeui2-devel >= 2.0
 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: 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 %{mdv} && %{gconsole}
+BuildRequires: gtk2-devel >= 2.8
+BuildRequires: libgnomeui2-devel >= 2.10
+BuildRequires: libORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.3
+BuildRequires: libbonobo2_0-devel
+BuildRequires: libbonoboui2_0-devel
+BuildRequires: libbonobo-activation-devel
+BuildRequires: libGConf2-devel
 BuildRequires: freetype2-devel
 %endif
 %if %{fc3}
 BuildRequires: libtermcap-devel
 BuildRequires: freetype2-devel
 %endif
 %if %{fc3}
 BuildRequires: libtermcap-devel
+BuildRequires: glibc-devel >= 2.3
+%endif
+%if %{fc3} && %{gconsole}
 BuildRequires: gtk2-devel >= 2.4
 BuildRequires: libgnomeui-devel >= 2.8
 BuildRequires: gtk2-devel >= 2.4
 BuildRequires: libgnomeui-devel >= 2.8
+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 %{fc4}
+BuildRequires: libtermcap-devel
 BuildRequires: glibc-devel >= 2.3
 BuildRequires: glibc-devel >= 2.3
+%endif
+%if %{fc4} && %{gconsole}
+BuildRequires: gtk2-devel >= 2.6
+BuildRequires: libgnomeui-devel >= 2.10
 BuildRequires: ORBit2-devel
 BuildRequires: libart_lgpl-devel >= 2.3
 BuildRequires: libbonobo-devel >= 2.8
 BuildRequires: ORBit2-devel
 BuildRequires: libart_lgpl-devel >= 2.3
 BuildRequires: libbonobo-devel >= 2.8
@@ -197,11 +477,83 @@ BuildRequires: bonobo-activation-devel
 BuildRequires: GConf2-devel
 BuildRequires: freetype-devel
 %endif
 BuildRequires: GConf2-devel
 BuildRequires: freetype-devel
 %endif
-%if ! %{rh7} && ! %{su9} && ! %{mdk} && ! %{fc3}
+%if %{fc5}
+BuildRequires: libtermcap-devel
+BuildRequires: glibc-devel >= 2.4
+%endif
+%if %{fc5} && %{gconsole}
+BuildRequires: gtk2-devel >= 2.8
+BuildRequires: libgnomeui-devel >= 2.14
+BuildRequires: ORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.3
+BuildRequires: libbonobo-devel >= 2.14
+BuildRequires: libbonoboui-devel >= 2.14
+BuildRequires: GConf2-devel
+BuildRequires: freetype-devel
+%endif
+%if %{fc6}
+BuildRequires: libtermcap-devel
+BuildRequires: glibc-devel >= 2.5
+%endif
+%if %{fc6} && %{gconsole}
+BuildRequires: gtk2-devel >= 2.10
+BuildRequires: libgnomeui-devel >= 2.16
+BuildRequires: ORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.3
+BuildRequires: libbonobo-devel >= 2.16
+BuildRequires: libbonoboui-devel >= 2.16
+BuildRequires: GConf2-devel
+BuildRequires: freetype-devel
+%endif
+%if %{fc7}
+BuildRequires: libtermcap-devel
+BuildRequires: glibc-devel >= 2.5
+%endif
+%if %{fc7} && %{gconsole}
+BuildRequires: gtk2-devel >= 2.10
+BuildRequires: libgnomeui-devel >= 2.18
+BuildRequires: ORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.3
+BuildRequires: libbonobo-devel >= 2.18
+BuildRequires: libbonoboui-devel >= 2.18
+BuildRequires: GConf2-devel
+BuildRequires: freetype-devel
+%endif
+%if %{fc8}
+BuildRequires: libtermcap-devel
+BuildRequires: glibc-devel >= 2.7
+%endif
+%if %{fc8} && %{gconsole}
+BuildRequires: gtk2-devel >= 2.12
+BuildRequires: libgnomeui-devel >= 2.20
+BuildRequires: ORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.3
+BuildRequires: libbonobo-devel >= 2.20
+BuildRequires: libbonoboui-devel >= 2.20
+BuildRequires: GConf2-devel
+BuildRequires: freetype-devel
+%endif
+%if %{fc9}
+BuildRequires: glibc-devel >= 2.8
+BuildRequires: zlib-static
+%endif
+%if %{fc9} && %{gconsole}
+BuildRequires: gtk2-devel >= 2.12
+BuildRequires: libgnomeui-devel >= 2.22
+BuildRequires: ORBit2-devel
+BuildRequires: libart_lgpl-devel >= 2.3
+BuildRequires: libbonobo-devel >= 2.22
+BuildRequires: libbonoboui-devel >= 2.22
+BuildRequires: GConf2-devel
+BuildRequires: freetype-devel
+%endif
+%if !%{rh7} && !%{su9} && !%{su10} && !%{su102} && !%{su103} && !%{su110} && !%{mdk} && !%{fc3} && !%{fc4} && !%{fc5} && !%{fc6} && !%{fc7} && !%{fc8} && !%{fc9}
 BuildRequires: libtermcap-devel
 BuildRequires: libtermcap-devel
+BuildRequires: glibc-devel >= 2.3
+%endif
+%if !%{rh7} && !%{su9} && !%{su10} && !%{su102} && !%{su103} && !%{su110} && !%{mdk} && !%{fc3} && !%{fc4} && !%{fc5} && !%{fc6} && !%{fc7} && !%{fc8} && !%{fc9} && %{gconsole}
 BuildRequires: gtk2-devel >= 2.0
 BuildRequires: libgnomeui-devel >= 2.0
 BuildRequires: gtk2-devel >= 2.0
 BuildRequires: libgnomeui-devel >= 2.0
-BuildRequires: glibc-devel >= 2.3
 BuildRequires: ORBit2-devel
 BuildRequires: libart_lgpl-devel >= 2.0
 BuildRequires: libbonobo-devel >= 2.0
 BuildRequires: ORBit2-devel
 BuildRequires: libart_lgpl-devel >= 2.0
 BuildRequires: libbonobo-devel >= 2.0
@@ -212,7 +564,7 @@ BuildRequires: linc-devel
 BuildRequires: freetype-devel
 %endif
 
 BuildRequires: freetype-devel
 %endif
 
-%if %{mysql} && ! %{mysql4}
+%if %{mysql} && ! %{mysql4} && ! %{mysql5}
 BuildRequires: mysql-devel >= 3.23
 %endif
 
 BuildRequires: mysql-devel >= 3.23
 %endif
 
@@ -220,6 +572,10 @@ BuildRequires: mysql-devel >= 3.23
 BuildRequires: mysql-devel >= 4.0
 %endif
 
 BuildRequires: mysql-devel >= 4.0
 %endif
 
+%if %{mysql} && %{mysql5}
+BuildRequires: mysql-devel >= 5.0
+%endif
+
 %if %{postgresql} && %{wb3}
 BuildRequires: rh-postgresql-devel >= 7
 %endif
 %if %{postgresql} && %{wb3}
 BuildRequires: rh-postgresql-devel >= 7
 %endif
@@ -228,16 +584,20 @@ BuildRequires: rh-postgresql-devel >= 7
 BuildRequires: postgresql-devel >= 7
 %endif
 
 BuildRequires: postgresql-devel >= 7
 %endif
 
+%if %{wxconsole}
+BuildRequires: wxGTK-devel >= 2.6
+%endif
+
 %description
 %description
-Bacula - It comes by night and sucks the vital essence from your computers.
+%{blurb}
 
 
-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.
+%{blurb2}
+%{blurb3}
+%{blurb4}
+%{blurb5}
+%{blurb6}
+%{blurb7}
+%{blurb8}
 
 %if %{mysql}
 %package mysql
 
 %if %{mysql}
 %package mysql
@@ -254,29 +614,65 @@ Group: System Environment/Daemons
 Provides: bacula-dir, bacula-sd, bacula-fd, bacula-server
 Conflicts: bacula-client
 Obsoletes: bacula-rescue
 Provides: bacula-dir, bacula-sd, bacula-fd, bacula-server
 Conflicts: bacula-client
 Obsoletes: bacula-rescue
+
+%if %{su9} || %{su10} || %{su102} || %{su103} || %{su110}
+Conflicts: bacula
+%endif
+
 Requires: ncurses, libstdc++, zlib, openssl, mtx
 
 %if %{rh7}
 Requires: glibc >= 2.2
 Requires: libtermcap
 %endif
 Requires: ncurses, libstdc++, zlib, openssl, mtx
 
 %if %{rh7}
 Requires: glibc >= 2.2
 Requires: libtermcap
 %endif
-%if %{su9}
+%if %{su9} || %{su10}
 Requires: glibc >= 2.3
 Requires: termcap
 %endif
 Requires: glibc >= 2.3
 Requires: termcap
 %endif
-%if ! %{rh7} && ! %{su9}
+%if %{su102}
+Requires: glibc >= 2.5
+Requires: termcap
+%endif
+%if %{su103}
+Requires: glibc >= 2.6
+Requires: termcap
+%endif
+%if %{su110}
+Requires: glibc >= 2.8
+Requires: termcap
+%endif
+%if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{su103} && ! %{su110} && ! %{fc5} && ! %{fc6} && ! %{fc7} && ! %{fc8} && ! %{fc9}
 Requires: glibc >= 2.3
 Requires: libtermcap
 %endif
 Requires: glibc >= 2.3
 Requires: libtermcap
 %endif
+%if %{fc5}
+Requires: glibc >= 2.4
+Requires: libtermcap
+%endif
+%if %{fc6} || %{fc7}
+Requires: glibc >= 2.5
+Requires: libtermcap
+%endif
+%if %{fc8}
+Requires: glibc >= 2.7
+Requires: libtermcap
+%endif
+%if %{fc9}
+Requires: glibc >= 2.8
+%endif
 
 
-%if %{mysql} && ! %{su9} && ! %{mdk} && ! %{mysql4}
+%if %{mysql} && ! %{su9} && ! %{mdk} && ! %{mysql4} && ! %{mysql5}
 Requires: mysql >= 3.23
 Requires: mysql-server >= 3.23
 %endif
 Requires: mysql >= 3.23
 Requires: mysql-server >= 3.23
 %endif
-%if %{mysql} && ! %{su9} && ! %{mdk} && %{mysql4}
+%if %{mysql} && ! %{su9} && ! %{su10} && ! %{mdk} && %{mysql4}
 Requires: mysql >= 4.0
 Requires: mysql-server >= 4.0
 %endif
 Requires: mysql >= 4.0
 Requires: mysql-server >= 4.0
 %endif
+%if %{mysql} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{su103} && ! %{su110} && ! %{mdk} && %{mysql5}
+Requires: mysql >= 5.0
+Requires: mysql-server >= 5.0
+%endif
 
 %if %{mysql} && %{su9} && ! %{mysql4}
 Requires: mysql >= 3.23
 
 %if %{mysql} && %{su9} && ! %{mysql4}
 Requires: mysql >= 3.23
@@ -286,6 +682,26 @@ Requires: mysql-client >= 3.23
 Requires: mysql >= 4.0
 Requires: mysql-client >= 4.0
 %endif
 Requires: mysql >= 4.0
 Requires: mysql-client >= 4.0
 %endif
+%if %{mysql} && %{su10} && %{mysql4}
+Requires: mysql >= 4.0
+Requires: mysql-client >= 4.0
+%endif
+%if %{mysql} && %{su10} && %{mysql5}
+Requires: mysql >= 5.0
+Requires: mysql-client >= 5.0
+%endif
+%if %{mysql} && %{su102} && %{mysql5}
+Requires: mysql >= 5.0
+Requires: mysql-client >= 5.0
+%endif
+%if %{mysql} && %{su103} && %{mysql5}
+Requires: mysql >= 5.0
+Requires: mysql-client >= 5.0
+%endif
+%if %{mysql} && %{su110} && %{mysql5}
+Requires: mysql >= 5.0
+Requires: mysql-client >= 5.0
+%endif
 
 %if %{mysql} && %{mdk} && ! %{mysql4}
 Requires: mysql >= 3.23
 
 %if %{mysql} && %{mdk} && ! %{mysql4}
 Requires: mysql >= 3.23
@@ -315,15 +731,19 @@ Requires: postgresql-server >= 7
 %description postgresql
 %endif
 
 %description postgresql
 %endif
 
-Bacula - It comes by night and sucks the vital essence from your computers.
+%if %{python}
+Requires: python >= %{pyver}
+%endif
+
+%{blurb}
 
 
-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.
+%{blurb2}
+%{blurb3}
+%{blurb4}
+%{blurb5}
+%{blurb6}
+%{blurb7}
+%{blurb8}
 
 %if %{mysql}
 This build requires MySQL to be installed separately as the catalog database.
 
 %if %{mysql}
 This build requires MySQL to be installed separately as the catalog database.
@@ -332,9 +752,13 @@ This build requires MySQL to be installed separately as the catalog database.
 This build requires PostgreSQL to be installed separately as the catalog database.
 %endif
 %if %{sqlite}
 This build requires PostgreSQL to be installed separately as the catalog database.
 %endif
 %if %{sqlite}
-This build incorporates sqlite as the catalog database, statically compiled.
+This build incorporates sqlite3 as the catalog database, statically compiled.
+%endif
+%if %{python}
+This build includes python scripting support.
 %endif
 
 %endif
 
+%if ! %{client_only} && %{mtx}
 %package mtx
 Summary: Bacula - The Network Backup Solution
 Group: System Environment/Daemons
 %package mtx
 Summary: Bacula - The Network Backup Solution
 Group: System Environment/Daemons
@@ -343,6 +767,7 @@ Provides: mtx
 %description mtx
 This is Bacula's version of mtx tape utilities for Linux distributions that
 do not provide their own mtx package
 %description mtx
 This is Bacula's version of mtx tape utilities for Linux distributions that
 do not provide their own mtx package
+%endif
 
 %package client
 Summary: Bacula - The Network Backup Solution
 
 %package client
 Summary: Bacula - The Network Backup Solution
@@ -352,60 +777,100 @@ Conflicts: bacula-mysql
 Conflicts: bacula-sqlite
 Conflicts: bacula-postgresql
 Obsoletes: bacula-rescue
 Conflicts: bacula-sqlite
 Conflicts: bacula-postgresql
 Obsoletes: bacula-rescue
+
+%if %{su9} || %{su10} || %{su102} || %{su103} || %{su110}
+Provides: bacula
+%endif
+
 Requires: libstdc++, zlib, openssl
 
 %if %{rh7}
 Requires: glibc >= 2.2
 Requires: libtermcap
 %endif
 Requires: libstdc++, zlib, openssl
 
 %if %{rh7}
 Requires: glibc >= 2.2
 Requires: libtermcap
 %endif
-%if %{su9}
+%if %{su9} || %{su10}
 Requires: glibc >= 2.3
 Requires: termcap
 %endif
 Requires: glibc >= 2.3
 Requires: termcap
 %endif
-%if ! %{rh7} && ! %{su9}
+%if %{su102}
+Requires: glibc >= 2.5
+Requires: termcap
+%endif
+%if %{su103}
+Requires: glibc >= 2.6
+Requires: termcap
+%endif
+%if %{su110}
+Requires: glibc >= 2.8
+Requires: termcap
+%endif
+%if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{su103} && ! %{su110} && ! %{fc5} && ! %{fc6} && ! %{fc7} && ! %{fc8} && ! %{fc9}
 Requires: glibc >= 2.3
 Requires: libtermcap
 %endif
 Requires: glibc >= 2.3
 Requires: libtermcap
 %endif
+%if %{fc5}
+Requires: glibc >= 2.4
+Requires: libtermcap
+%endif
+%if %{fc6} || %{fc7}
+Requires: glibc >= 2.5
+Requires: libtermcap
+%endif
+%if %{fc8}
+Requires: glibc >= 2.7
+Requires: libtermcap
+%endif
+%if %{fc9}
+Requires: glibc >= 2.8
+%endif
+
+%if %{python}
+Requires: python >= %{pyver}
+%endif
 
 %description client
 
 %description client
-Bacula - It comes by night and sucks the vital essence from your computers.
+%{blurb}
 
 
-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.
+%{blurb2}
+%{blurb3}
+%{blurb4}
+%{blurb5}
+%{blurb6}
+%{blurb7}
+%{blurb8}
 
 This is the File daemon (Client) only package. It includes the command line 
 console program.
 
 This is the File daemon (Client) only package. It includes the command line 
 console program.
+%if %{python}
+This build includes python scripting support.
+%endif
 
 
+%if ! %{client_only}
 %package updatedb
 
 Summary: Bacula - The Network Backup Solution
 Group: System Environment/Daemons
 
 %description updatedb
 %package updatedb
 
 Summary: Bacula - The Network Backup Solution
 Group: System Environment/Daemons
 
 %description updatedb
-Bacula - It comes by night and sucks the vital essence from your computers.
+%{blurb}
 
 
-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.
+%{blurb2}
+%{blurb3}
+%{blurb4}
+%{blurb5}
+%{blurb6}
+%{blurb7}
+%{blurb8}
 
 This package installs scripts for updating older versions of the bacula
 database.
 
 This package installs scripts for updating older versions of the bacula
 database.
+%endif
 
 %if %{gconsole}
 %package gconsole
 Summary: Bacula - The Network Backup Solution
 Group: System Environment/Daemons
 
 %if %{gconsole}
 %package gconsole
 Summary: Bacula - The Network Backup Solution
 Group: System Environment/Daemons
-Requires: atk, libstdc++, zlib, pango, libxml2, bacula-fd
-Requires: usermode, openssl
+Requires: atk, libstdc++, zlib, pango, libxml2, bacula-fd, openssl
 %endif
 
 %if %{gconsole} && %{su9}
 %endif
 
 %if %{gconsole} && %{su9}
@@ -422,7 +887,75 @@ Requires: gconf2
 Requires: linc
 Requires: freetype2
 %endif
 Requires: linc
 Requires: freetype2
 %endif
-%if %{gconsole} && %{mdk}
+%if %{gconsole} && %{su10}
+Requires: gtk2 >= 2.8
+Requires: libgnome >= 2.12
+Requires: libgnomeui >= 2.12
+Requires: glibc >= 2.3
+Requires: ORBit2
+Requires: libart_lgpl >= 2.3
+Requires: libbonobo >= 2.10
+Requires: libbonoboui >= 2.10
+Requires: bonobo-activation
+Requires: gconf2
+Requires: freetype2
+Requires: cairo
+Requires: fontconfig >= 2.3
+Requires: gnome-vfs2 >= 2.12
+Requires: libpng
+%endif
+%if %{gconsole} && %{su102}
+Requires: gtk2 >= 2.10
+Requires: libgnome >= 2.16
+Requires: libgnomeui >= 2.16
+Requires: glibc >= 2.5
+Requires: ORBit2
+Requires: libart_lgpl >= 2.3
+Requires: libbonobo >= 2.16
+Requires: libbonoboui >= 2.16
+Requires: bonobo-activation
+Requires: gconf2
+Requires: freetype2
+Requires: cairo
+Requires: fontconfig >= 2.4
+Requires: gnome-vfs2 >= 2.16
+Requires: libpng
+%endif
+%if %{gconsole} && %{su103}
+Requires: gtk2 >= 2.12
+Requires: libgnome >= 2.20
+Requires: libgnomeui >= 2.20
+Requires: glibc >= 2.6
+Requires: ORBit2
+Requires: libart_lgpl >= 2.3
+Requires: libbonobo >= 2.20
+Requires: libbonoboui >= 2.20
+Requires: bonobo-activation
+Requires: gconf2
+Requires: freetype2
+Requires: cairo
+Requires: fontconfig >= 2.4
+Requires: gnome-vfs2 >= 2.20
+Requires: libpng
+%endif
+%if %{gconsole} && %{su110}
+Requires: gtk2 >= 2.12
+Requires: libgnome >= 2.22
+Requires: libgnomeui >= 2.22
+Requires: glibc >= 2.8
+Requires: ORBit2
+Requires: libart_lgpl >= 2.3
+Requires: libbonobo >= 2.22
+Requires: libbonoboui >= 2.22
+Requires: bonobo-activation
+Requires: gconf2
+Requires: freetype2
+Requires: cairo
+Requires: fontconfig >= 2.4
+Requires: gnome-vfs2 >= 2.22
+Requires: libpng
+%endif
+%if %{gconsole} && %{mdk} && !%{mdv}
 Requires: gtk2 >= 2.0
 Requires: libgnomeui2
 Requires: glibc >= 2.3
 Requires: gtk2 >= 2.0
 Requires: libgnomeui2
 Requires: glibc >= 2.3
@@ -433,6 +966,17 @@ Requires: libbonoboui >= 2.0
 Requires: GConf2
 Requires: freetype2
 %endif
 Requires: GConf2
 Requires: freetype2
 %endif
+%if %{gconsole} && %{mdv}
+Requires: gtk2 >= 2.8
+Requires: libgnomeui2
+Requires: glibc >= 2.3
+Requires: ORBit2
+Requires: libart_lgpl >= 2.3
+Requires: libbonobo >= 2.10
+Requires: libbonoboui >= 2.10
+Requires: GConf2
+Requires: freetype2
+%endif
 %if %{gconsole} && %{fc3}  
 Requires: gtk2 >= 2.4
 Requires: libgnomeui >= 2.8
 %if %{gconsole} && %{fc3}  
 Requires: gtk2 >= 2.4
 Requires: libgnomeui >= 2.8
@@ -445,7 +989,74 @@ Requires: bonobo-activation
 Requires: GConf2
 Requires: freetype
 %endif
 Requires: GConf2
 Requires: freetype
 %endif
-%if %{gconsole} && ! %{su9} && ! %{mdk} && ! %{fc3}
+%if %{gconsole} && %{fc4}  
+Requires: gtk2 >= 2.6
+Requires: libgnomeui >= 2.10
+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 %{gconsole} && %{fc5}  
+Requires: gtk2 >= 2.8
+Requires: libgnomeui >= 2.14
+Requires: glibc >= 2.4
+Requires: ORBit2
+Requires: libart_lgpl >= 2.3
+Requires: libbonobo >= 2.14
+Requires: libbonoboui >= 2.14
+Requires: GConf2
+Requires: freetype
+%endif
+%if %{gconsole} && %{fc6}  
+Requires: gtk2 >= 2.10
+Requires: libgnomeui >= 2.16
+Requires: glibc >= 2.5
+Requires: ORBit2
+Requires: libart_lgpl >= 2.3
+Requires: libbonobo >= 2.16
+Requires: libbonoboui >= 2.16
+Requires: GConf2
+Requires: freetype
+%endif
+%if %{gconsole} && %{fc7}  
+Requires: gtk2 >= 2.10
+Requires: libgnomeui >= 2.18
+Requires: glibc >= 2.5
+Requires: ORBit2
+Requires: libart_lgpl >= 2.3
+Requires: libbonobo >= 2.18
+Requires: libbonoboui >= 2.18
+Requires: GConf2
+Requires: freetype
+%endif
+%if %{gconsole} && %{fc8}  
+Requires: gtk2 >= 2.12
+Requires: libgnomeui >= 2.20
+Requires: glibc >= 2.7
+Requires: ORBit2
+Requires: libart_lgpl >= 2.3
+Requires: libbonobo >= 2.20
+Requires: libbonoboui >= 2.20
+Requires: GConf2
+Requires: freetype
+%endif
+%if %{gconsole} && %{fc9}  
+Requires: gtk2 >= 2.12
+Requires: libgnomeui >= 2.22
+Requires: glibc >= 2.8
+Requires: ORBit2
+Requires: libart_lgpl >= 2.3
+Requires: libbonobo >= 2.22
+Requires: libbonoboui >= 2.22
+Requires: GConf2
+Requires: freetype
+%endif
+%if %{gconsole} && !%{su9} && !%{su10} && !%{su102} && !%{su103} && !%{su110} && !%{mdk} && !%{fc3} && !%{fc4} && !%{fc5} && !%{fc6} && !%{fc7} && !%{fc8} && !%{fc9}
 Requires: gtk2 >= 2.0
 Requires: libgnomeui >= 2.0
 Requires: glibc >= 2.3
 Requires: gtk2 >= 2.0
 Requires: libgnomeui >= 2.0
 Requires: glibc >= 2.3
@@ -461,23 +1072,242 @@ Requires: freetype
 %if %{gconsole} && %{su9}
 Requires: xsu
 %endif
 %if %{gconsole} && %{su9}
 Requires: xsu
 %endif
+%if %{gconsole} && %{su10}
+Requires: xsu
+%endif
+%if %{gconsole} && %{su102}
+Requires: xsu
+%endif
+%if %{gconsole} && %{su103}
+Requires: xsu
+%endif
+%if %{gconsole} && %{su110}
+Requires: xsu
+%endif
+%if %{gconsole} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{su103} && ! %{su110}
+Requires: usermode
+%endif
 
 %if %{gconsole}
 %description gconsole
 
 %if %{gconsole}
 %description gconsole
-Bacula - It comes by night and sucks the vital essence from your computers.
+%{blurb}
 
 
-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.
+%{blurb2}
+%{blurb3}
+%{blurb4}
+%{blurb5}
+%{blurb6}
+%{blurb7}
+%{blurb8}
 
 This is the Gnome Console package. It is an add-on to the client or
 server packages.
 %endif
 
 
 This is the Gnome Console package. It is an add-on to the client or
 server packages.
 %endif
 
+%if %{wxconsole}
+%package wxconsole
+Summary: Bacula - The Network Backup Solution
+Group: System Environment/Daemons
+Requires: wxGTK >= 2.6, libstdc++, openssl
+%endif
+
+%if %{wxconsole} && %{su10}
+Requires: gtk2 >= 2.8
+%endif
+
+%if %{wxconsole} && %{su102}
+Requires: gtk2 >= 2.10
+%endif
+
+%if %{wxconsole} && %{su103}
+Requires: gtk2 >= 2.12
+%endif
+
+%if %{wxconsole} && %{su110}
+Requires: gtk2 >= 2.12
+%endif
+
+%if %{wxconsole} && %{fc3}  
+Requires: gtk2 >= 2.4
+%endif
+
+%if %{wxconsole} && %{fc4}  
+Requires: gtk2 >= 2.6
+%endif
+
+%if %{wxconsole} && %{fc5}  
+Requires: gtk2 >= 2.8
+%endif
+
+%if %{wxconsole} && %{fc6}  
+Requires: gtk2 >= 2.10
+%endif
+
+%if %{wxconsole} && %{fc7}  
+Requires: gtk2 >= 2.10
+%endif
+
+%if %{wxconsole} && %{fc8}  
+Requires: gtk2 >= 2.12
+%endif
+
+%if %{wxconsole} && %{fc9}  
+Requires: gtk2 >= 2.12
+%endif
+
+%if %{wxconsole}
+%description wxconsole
+%{blurb}
+
+%{blurb2}
+%{blurb3}
+%{blurb4}
+%{blurb5}
+%{blurb6}
+%{blurb7}
+%{blurb8}
+
+This is the WXWindows Console package. It is an add-on to the client or
+server packages.
+%endif
+
+%if %{bat}
+%package bat
+Summary: Bacula - The Network Backup Solution
+Group: System Environment/Daemons
+%endif
+
+%if %{bat} && %{su10}
+Requires: openssl
+Requires: glibc >= 2.4
+Requires: fontconfig
+Requires: freetype2
+Requires: libgcc
+Requires: libpng
+Requires: qt >= 4.2
+Requires: libstdc++
+Requires: zlib
+%endif
+
+%if %{bat} && %{su102}
+Requires: openssl
+Requires: glibc >= 2.5
+Requires: fontconfig
+Requires: freetype2
+Requires: libgcc
+Requires: libpng
+Requires: qt >= 4.2
+Requires: libstdc++
+Requires: zlib
+%endif
+
+%if %{bat} && %{su103}
+Requires: openssl
+Requires: glibc >= 2.6
+Requires: fontconfig
+Requires: freetype2
+Requires: libgcc
+Requires: libpng
+Requires: qt >= 4.2
+Requires: libstdc++
+Requires: zlib
+%endif
+
+%if %{bat} && %{su110}
+Requires: openssl
+Requires: glibc >= 2.8
+Requires: fontconfig
+Requires: freetype2
+Requires: libgcc
+Requires: libpng
+Requires: qt >= 4.2
+Requires: libstdc++
+Requires: zlib
+%endif
+
+%if %{bat} && %{fc5}
+Requires: openssl
+Requires: glibc >= 2.4
+Requires: fontconfig
+Requires: freetype
+Requires: libgcc
+Requires: libpng
+Requires: qt4 >= 4.2
+Requires: libstdc++
+Requires: zlib
+%endif
+
+%if %{bat} && %{fc6}
+Requires: openssl
+Requires: glibc >= 2.5
+Requires: fontconfig
+Requires: freetype
+Requires: libgcc
+Requires: libpng
+Requires: qt4 >= 4.2
+Requires: libstdc++
+Requires: zlib
+%endif
+
+%if %{bat} && %{fc7}
+Requires: openssl
+Requires: glibc >= 2.5
+Requires: fontconfig
+Requires: freetype
+Requires: libgcc
+Requires: libpng
+Requires: qt4 >= 4.2
+Requires: libstdc++
+Requires: zlib
+%endif
+
+%if %{bat} && %{fc8}
+Requires: openssl
+Requires: glibc >= 2.7
+Requires: fontconfig
+Requires: freetype
+Requires: libgcc
+Requires: libpng
+Requires: qt4 >= 4.2
+Requires: libstdc++
+Requires: zlib
+%endif
+
+%if %{bat} && %{fc9}
+Requires: openssl
+Requires: glibc >= 2.8
+Requires: fontconfig
+Requires: freetype
+Requires: libgcc
+Requires: libpng
+Requires: qt4 >= 4.3
+Requires: libstdc++
+Requires: zlib
+%endif
+
+%if %{bat}
+%description bat
+%{blurb}
+
+%{blurb2}
+%{blurb3}
+%{blurb4}
+%{blurb5}
+%{blurb6}
+%{blurb7}
+%{blurb8}
+
+This is the Bacula Administration Tool package. It is an add-on to 
+the client or server packages.
+%endif
+
+# SuSE turns off stripping of binaries by default. In order to get
+# stripped packages we must generate debug package. RedHat and Mandriva
+# turn debug packages on by default but strip binaries regardless.
+%if %{su9} || %{su10} || %{su102} || %{su103} || %{su110}
+%debug_package
+%endif
+
 %prep
 
 %setup
 %prep
 
 %setup
@@ -488,54 +1318,98 @@ server packages.
 
 %build
 
 
 %build
 
-%if %{su9}
-export LDFLAGS="-L/usr/lib/termcap"
+%if %{su9} || %{su10} || %{su102} || %{su103} || %{su110}
+export LDFLAGS="${LDFLAGS} -L/usr/lib/termcap"
 %endif
 
 cwd=${PWD}
 cd %{depkgs}
 %if %{sqlite}
 %endif
 
 cwd=${PWD}
 cd %{depkgs}
 %if %{sqlite}
-make sqlite
+make sqlite3
 %endif
 %endif
+%if ! %{client_only} && %{mtx}
 make mtx
 make mtx
+%endif
+%if %{bat}
+make qwt
+%endif
 cd ${cwd}
 
 cd ${cwd}
 
+%if %{wb3} || %{old_pgsql}
+patch -p3 src/cats/postgresql.c < %SOURCE5
+%endif
+
 # patches for the bundled sqlite scripts
 # 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 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 src/cats/make_sqlite3_tables.in src/cats/make_sqlite3_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 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_sqlite3_database.in src/cats/create_sqlite3_database.in.patch
 
 # patch the make_catalog_backup script for installation bindir
 
 # 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 the update_sqlite_tables script for installation bindir
-patch src/cats/update_sqlite_tables.in src/cats/update_sqlite_tables.in.patch
+#patch src/cats/update_sqlite_tables.in src/cats/update_sqlite_tables.in.patch
+patch src/cats/update_sqlite3_tables.in src/cats/update_sqlite3_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
 
 # 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
+%if %{sqlite} && %{su10}
+patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
+%endif
+%if %{sqlite} && %{su102}
+patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
+%endif
+%if %{sqlite} && %{su103}
+patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
+%endif
+%if %{sqlite} && %{su110}
+patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
+%endif
 
 # 64 bit lib location hacks
 
 # 64 bit lib location hacks
-# this is the location on redhat type platforms, don't know about others yet
+# as of 1.39.18 it should not be necessary to enable x86_64 as configure is
+# reported to be fixed to properly detect lib locations.
 %if %{x86_64}
 %if %{x86_64}
-export LDFLAGS=-L/usr/lib64
+export LDFLAGS="${LDFLAGS} -L/usr/lib64"
 %endif
 %if %{mysql} && %{x86_64}
 %endif
 %if %{mysql} && %{x86_64}
-export LDFLAGS=-L/usr/lib64/mysql
+export LDFLAGS="${LDFLAGS} -L/usr/lib64/mysql"
+%endif
+%if %{python} && %{x86_64}
+export LDFLAGS="${LDFLAGS} -L/usr/lib64/python%{pyver}"
+%endif
+
+# Red Hat's 64 bit installation of QT4 appears to be broken so:
+%define qt_path 0
+%if %{rhel5} || %{centos5} || %{sl5}
+%define qt_path 1
+%endif
+%if %{bat} && %{qt_path} && %{x86_64}
+export PATH=/usr/lib64/qt4/bin/:$PATH
+export QTDIR=/usr/lib64/qt4/
+export QTINC=/usr/lib64/qt4/include/
+export QTLIB=/usr/lib64/qt4/
 %endif
 
 %configure \
         --prefix=/usr \
         --sbindir=/usr/sbin \
 %endif
 
 %configure \
         --prefix=/usr \
         --sbindir=/usr/sbin \
-        --sysconfdir=/etc/bacula \
-        --with-scriptdir=/etc/bacula \
+       --sysconfdir=%{sysconf_dir} \
+       --with-scriptdir=%{script_dir} \
+       --with-working-dir=%{working_dir} \
+       --with-pid-dir=%{pid_dir} \
         --enable-smartalloc \
         --enable-client-only \
         --enable-smartalloc \
         --enable-client-only \
+       %if %{mdk}
+       --disable-nls \
+       %endif
         --enable-static-fd
 
 make
         --enable-static-fd
 
 make
@@ -543,8 +1417,10 @@ make
 %configure \
         --prefix=/usr \
         --sbindir=/usr/sbin \
 %configure \
         --prefix=/usr \
         --sbindir=/usr/sbin \
-        --sysconfdir=/etc/bacula \
-        --with-scriptdir=/etc/bacula \
+       --sysconfdir=%{sysconf_dir} \
+       --with-scriptdir=%{script_dir} \
+       --with-working-dir=%{working_dir} \
+       --with-pid-dir=%{pid_dir} \
         --enable-smartalloc \
 %if %{gconsole}
         --enable-gnome \
         --enable-smartalloc \
 %if %{gconsole}
         --enable-gnome \
@@ -556,18 +1432,33 @@ make
         --with-mysql \
 %endif
 %if %{sqlite}
         --with-mysql \
 %endif
 %if %{sqlite}
-        --with-sqlite=${cwd}/%{depkgs}/sqlite \
+        --with-sqlite3=${cwd}/%{depkgs}/sqlite3 \
 %endif
 %if %{postgresql}
         --with-postgresql \
 %endif
 %endif
 %if %{postgresql}
         --with-postgresql \
 %endif
-        --with-working-dir=%{working_dir} \
-        --with-pid-dir=/var/run \
+%if %{wxconsole}
+       --enable-bwx-console \
+%endif
+%if %{bat}
+       --enable-bat \
+       --with-qwt=${cwd}/%{depkgs}/qwt \
+%endif
+%if %{python}
+       --with-python \
+%endif
+%if %{client_only}
+       --enable-client-only \
+%endif
+%if %{rh7} || %{rh8} || %{rh9} || %{fc1} || %{fc3} || %{wb3} 
+       --disable-batch-insert \
+%endif
+       --mandir=%{_mandir} \
         --with-subsys-dir=/var/lock/subsys \
         --with-dir-user=%{director_daemon_user} \
         --with-dir-group=%{daemon_group} \
         --with-sd-user=%{storage_daemon_user} \
         --with-subsys-dir=/var/lock/subsys \
         --with-dir-user=%{director_daemon_user} \
         --with-dir-group=%{daemon_group} \
         --with-sd-user=%{storage_daemon_user} \
-        --with-sd-group=%{daemon_group} \
+        --with-sd-group=%{storage_daemon_group} \
         --with-fd-user=%{file_daemon_user} \
         --with-fd-group=%{daemon_group} \
         --with-dir-password="XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX" \
         --with-fd-user=%{file_daemon_user} \
         --with-fd-group=%{daemon_group} \
         --with-dir-password="XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX" \
@@ -589,12 +1480,20 @@ 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/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 %{gconsole}
+mkdir -p $RPM_BUILD_ROOT%{script_dir}/updatedb
+
+%if %{gconsole} || %{wxconsole} || %{bat}
 mkdir -p $RPM_BUILD_ROOT/usr/share/applications
 mkdir -p $RPM_BUILD_ROOT/usr/share/applications
+mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps
 %endif
 %endif
-mkdir -p $RPM_BUILD_ROOT/etc/bacula/updatedb
-%if %{gconsole} && ! %{su9}
+
+%if %{gconsole} || %{wxconsole} || %{bat}
+%define usermode_iftrick 1
+%else
+%define usermode_iftrick 0
+%endif
+
+%if %{usermode_iftrick} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{su103} && ! %{su110}
 mkdir -p $RPM_BUILD_ROOT/etc/pam.d
 mkdir -p $RPM_BUILD_ROOT/etc/security/console.apps
 mkdir -p $RPM_BUILD_ROOT/usr/bin
 mkdir -p $RPM_BUILD_ROOT/etc/pam.d
 mkdir -p $RPM_BUILD_ROOT/etc/security/console.apps
 mkdir -p $RPM_BUILD_ROOT/usr/bin
@@ -607,38 +1506,73 @@ mkdir -p $RPM_BUILD_ROOT%{sqlite_bindir}
 make \
         prefix=$RPM_BUILD_ROOT/usr \
         sbindir=$RPM_BUILD_ROOT/usr/sbin \
 make \
         prefix=$RPM_BUILD_ROOT/usr \
         sbindir=$RPM_BUILD_ROOT/usr/sbin \
-        sysconfdir=$RPM_BUILD_ROOT/etc/bacula \
-        scriptdir=$RPM_BUILD_ROOT/etc/bacula \
+       sysconfdir=$RPM_BUILD_ROOT%{sysconf_dir} \
+       scriptdir=$RPM_BUILD_ROOT%{script_dir} \
         working_dir=$RPM_BUILD_ROOT%{working_dir} \
         working_dir=$RPM_BUILD_ROOT%{working_dir} \
+       piddir=$RPM_BUILD_ROOT%{pid_dir} \
+       mandir=$RPM_BUILD_ROOT%{_mandir} \
         install
 
         install
 
+%if ! %{client_only} && %{mtx}
 cd %{depkgs}
 make \
         prefix=$RPM_BUILD_ROOT/usr \
         sbindir=$RPM_BUILD_ROOT/usr/sbin \
 cd %{depkgs}
 make \
         prefix=$RPM_BUILD_ROOT/usr \
         sbindir=$RPM_BUILD_ROOT/usr/sbin \
-        sysconfdir=$RPM_BUILD_ROOT/etc/bacula \
+       sysconfdir=$RPM_BUILD_ROOT%{sysconf_dir} \
+       scriptdir=$RPM_BUILD_ROOT%{script_dir} \
         working_dir=$RPM_BUILD_ROOT%{working_dir} \
         working_dir=$RPM_BUILD_ROOT%{working_dir} \
-        mandir=$RPM_BUILD_ROOT/usr/man \
+       piddir=$RPM_BUILD_ROOT%{pid_dir} \
+        mandir=$RPM_BUILD_ROOT%{_mandir} \
         mtx-install
 cd ${cwd}
         mtx-install
 cd ${cwd}
+%endif
+
+# make install in manpages installs _everything_ shotgun style
+# so now delete what we will not be packaging
+%if ! %{wxconsole}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-bwxconsole.1.%{manpage_ext}
+%endif
+%if ! %{bat}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bat.1.%{manpage_ext}
+%endif
+%if ! %{gconsole}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-bgnome-console.1.%{manpage_ext}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-tray-monitor.1.%{manpage_ext}
+%endif
+%if %{client_only}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bsmtp.1.%{manpage_ext}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bacula-dir.8.%{manpage_ext}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bacula-sd.8.%{manpage_ext}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bcopy.8.%{manpage_ext}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bextract.8.%{manpage_ext}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bls.8.%{manpage_ext}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bscan.8.%{manpage_ext}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man8/btape.8.%{manpage_ext}
+rm -f $RPM_BUILD_ROOT%{_mandir}/man8/dbcheck.8.%{manpage_ext}
+%endif
 
 # fixme - make installs the mysql scripts for sqlite build
 %if %{sqlite}
 
 # fixme - make installs the mysql scripts for sqlite build
 %if %{sqlite}
-rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
-rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
-rm -f $RPM_BUILD_ROOT/etc/bacula/grant_mysql_privileges
+rm -f $RPM_BUILD_ROOT%{script_dir}/startmysql
+rm -f $RPM_BUILD_ROOT%{script_dir}/stopmysql
+rm -f $RPM_BUILD_ROOT%{script_dir}/grant_mysql_privileges
 %endif
 
 # fixme - make installs the mysql scripts for postgresql build
 %if %{postgresql}
 %endif
 
 # fixme - make installs the mysql scripts for postgresql build
 %if %{postgresql}
-rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
-rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
+rm -f $RPM_BUILD_ROOT%{script_dir}/startmysql
+rm -f $RPM_BUILD_ROOT%{script_dir}/stopmysql
+%endif
+
+# fixme - make installs gconsole script for build without gconsole
+%if ! %{gconsole}
+rm -f $RPM_BUILD_ROOT%{script_dir}/gconsole
 %endif
 
 rm -f $RPM_BUILD_ROOT/usr/sbin/static-bacula-fd
 
 # install the init scripts
 %endif
 
 rm -f $RPM_BUILD_ROOT/usr/sbin/static-bacula-fd
 
 # install the init scripts
-%if %{su9}
+%if %{su9} || %{su10} || %{su102} || %{su103} || %{su110}
 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
 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
@@ -648,12 +1582,16 @@ 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
 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}
+%if ! %{su9} && ! %{su10} && ! %{su102} && ! %{su103} && ! %{su110} && ! %{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
 %endif
 chmod 0754 $RPM_BUILD_ROOT/etc/init.d/*
 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
 %endif
 chmod 0754 $RPM_BUILD_ROOT/etc/init.d/*
+%if %{client_only}
+rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-dir
+rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-sd
+%endif
 
 # install the menu stuff
 %if %{gconsole} && %{su9}
 
 # install the menu stuff
 %if %{gconsole} && %{su9}
@@ -662,7 +1600,59 @@ cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/b
 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
 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 %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{fc3} || %{mdk}
+%if %{gconsole} && %{su10}
+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 %{gconsole} && %{su102}
+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 %{gconsole} && %{su103}
+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 %{gconsole} && %{su110}
+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 %{wxconsole} && %{su10}
+cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
+cp -p scripts/wxconsole.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
+%endif
+%if %{wxconsole} && %{su102}
+cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
+cp -p scripts/wxconsole.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
+%endif
+%if %{wxconsole} && %{su103}
+cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
+cp -p scripts/wxconsole.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
+%endif
+%if %{wxconsole} && %{su110}
+cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
+cp -p scripts/wxconsole.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
+%endif
+%if %{bat} && %{su102}
+cp -p src/qt-console/images/bat_icon.png $RPM_BUILD_ROOT/usr/share/pixmaps/bat_icon.png
+cp -p scripts/bat.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/bat.desktop
+%endif
+%if %{bat} && %{su103}
+cp -p src/qt-console/images/bat_icon.png $RPM_BUILD_ROOT/usr/share/pixmaps/bat_icon.png
+cp -p scripts/bat.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/bat.desktop
+%endif
+%if %{bat} && %{su110}
+cp -p src/qt-console/images/bat_icon.png $RPM_BUILD_ROOT/usr/share/pixmaps/bat_icon.png
+cp -p scripts/bat.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/bat.desktop
+%endif
+%if %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{fc3} || %{fc4} || %{fc5} || %{fc6} || %{fc7} || %{fc8} || %{fc9} || %{mdk}
 %define iftrick 1
 %else
 %define iftrick 0
 %define iftrick 1
 %else
 %define iftrick 0
@@ -670,135 +1660,181 @@ cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications
 %if %{gconsole} && %{iftrick}
 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
 %if %{gconsole} && %{iftrick}
 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
+cp -p scripts/bgnome-console.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/bgnome-console
+cp -p scripts/bgnome-console.pamd $RPM_BUILD_ROOT/etc/pam.d/bgnome-console
+ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/bgnome-console
 %endif
 %if %{gconsole} && ! %{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
 %endif
 %if %{gconsole} && ! %{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
+%if %{wxconsole} && %{iftrick}
+cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
+cp -p scripts/wxconsole.desktop.consolehelper $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
+cp -p scripts/wxconsole.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/bwx-console
+cp -p scripts/wxconsole.pamd $RPM_BUILD_ROOT/etc/pam.d/bwx-console
+ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/bwx-console
+%endif
+%if %{bat} && %{iftrick}
+cp -p src/qt-console/images/bat_icon.png $RPM_BUILD_ROOT/usr/share/pixmaps/bat_icon.png
+cp -p scripts/bat.desktop.consolehelper $RPM_BUILD_ROOT/usr/share/applications/bat.desktop
+cp -p scripts/bat.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/bat
+cp -p scripts/bat.pamd $RPM_BUILD_ROOT/etc/pam.d/bat
+ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/bat
+%endif
 
 # install sqlite
 %if %{sqlite}
 
 # 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}/sqlite3/sqlite3 $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite3
+cp -p %{depkgs}/sqlite3/sqlite3.h $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite3.h
+cp -p %{depkgs}/sqlite3/libsqlite3.a $RPM_BUILD_ROOT%{sqlite_bindir}/libsqlite3.a
 %endif
 
 # install the logrotate file
 cp -p scripts/logrotate $RPM_BUILD_ROOT/etc/logrotate.d/bacula
 
 # install the updatedb scripts
 %endif
 
 # install the logrotate file
 cp -p scripts/logrotate $RPM_BUILD_ROOT/etc/logrotate.d/bacula
 
 # install the updatedb scripts
-cp -p updatedb/* $RPM_BUILD_ROOT/etc/bacula/updatedb/
+cp -p updatedb/* $RPM_BUILD_ROOT%{script_dir}/updatedb/
 
 # install the logwatch scripts
 
 # install the logwatch scripts
+%if ! %{client_only}
 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
 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
+%endif
 
 # install the rescue files
 
 # 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/
-touch $RPM_BUILD_ROOT/etc/bacula/rescue/linux/cdrom/rpm_release
-cp -p src/filed/static-bacula-fd $RPM_BUILD_ROOT/etc/bacula/rescue/linux/cdrom/bacula/bin/bacula-fd
+mkdir $RPM_BUILD_ROOT%{script_dir}/rescue
+mkdir $RPM_BUILD_ROOT%{script_dir}/rescue/freebsd
+mkdir $RPM_BUILD_ROOT%{script_dir}/rescue/solaris
+cp -p %{_rescuesrc}/Makefile* $RPM_BUILD_ROOT%{script_dir}/rescue/
+cp -p %{_rescuesrc}/freebsd/Makefile* $RPM_BUILD_ROOT%{script_dir}/rescue/freebsd/
+cp -p %{_rescuesrc}/solaris/Makefile* $RPM_BUILD_ROOT%{script_dir}/rescue/solaris/
+cp -p %{_rescuesrc}/README $RPM_BUILD_ROOT%{script_dir}/rescue/
+cp -p %{_rescuesrc}/configure $RPM_BUILD_ROOT%{script_dir}/rescue/
+cp -p %{_rescuesrc}/version.h $RPM_BUILD_ROOT%{script_dir}/rescue/
+cp -pr %{_rescuesrc}/linux $RPM_BUILD_ROOT%{script_dir}/rescue/
+cp -pr %{_rescuesrc}/autoconf $RPM_BUILD_ROOT%{script_dir}/rescue/
+cp -pr %{_rescuesrc}/knoppix $RPM_BUILD_ROOT%{script_dir}/rescue/
+touch $RPM_BUILD_ROOT%{script_dir}/rescue/linux/cdrom/rpm_release
+cp -p src/filed/static-bacula-fd $RPM_BUILD_ROOT%{script_dir}/rescue/linux/cdrom/bacula/bin/bacula-fd
 rm -f src/filed/static-bacula-fd
 
 rm -f src/filed/static-bacula-fd
 
+# install bat since make doesn't at the moment
+%if %{bat}
+cp -p src/qt-console/bat $RPM_BUILD_ROOT/usr/sbin/bat
+cp -p src/qt-console/bat.conf $RPM_BUILD_ROOT%{sysconf_dir}/bat.conf
+%endif
+
 # now clean up permissions that are left broken by the install
 # 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
+chmod o-rwx $RPM_BUILD_ROOT%{working_dir}
 %if %{gconsole} && ! %{rh8}
 chmod 755 $RPM_BUILD_ROOT/usr/sbin/bacula-tray-monitor
 %if %{gconsole} && ! %{rh8}
 chmod 755 $RPM_BUILD_ROOT/usr/sbin/bacula-tray-monitor
-chmod 644 $RPM_BUILD_ROOT/etc/bacula/tray-monitor.conf
+chmod 644 $RPM_BUILD_ROOT%{sysconf_dir}/tray-monitor.conf
+%endif
+
+# fix me - building enable-client-only installs files not included in bacula-client package
+%if %{client_only}
+rm -f $RPM_BUILD_ROOT%{script_dir}/bacula
+rm -f $RPM_BUILD_ROOT%{script_dir}/bacula-ctl-dir
+rm -f $RPM_BUILD_ROOT%{script_dir}/bacula-ctl-sd
+rm -f $RPM_BUILD_ROOT%{script_dir}/disk-changer
+rm -f $RPM_BUILD_ROOT%{script_dir}/dvd-handler
+rm -f $RPM_BUILD_ROOT%{script_dir}/mtx-changer
+rm -f $RPM_BUILD_ROOT%{script_dir}/startmysql
+rm -f $RPM_BUILD_ROOT%{script_dir}/stopmysql
+rm -rf $RPM_BUILD_ROOT%{script_dir}/updatedb
 %endif
 
 %clean
 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
 %endif
 
 %clean
 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
-
+rm -rf $RPM_BUILD_DIR/%{name}-docs-%{docs_version}
+rm -rf $RPM_BUILD_DIR/%{name}-rescue-%{_rescuever}
+rm -rf $RPM_BUILD_DIR/depkgs
+rm -f $RPM_BUILD_DIR/Release_Notes-%{version}-%{release}.txt
 
 %if %{mysql}
 # MySQL specific files
 %files mysql
 %defattr(-, root, root)
 
 %if %{mysql}
 # MySQL specific files
 %files mysql
 %defattr(-, root, root)
-%attr(0750, root, %{daemon_group}) /etc/bacula/create_mysql_database
-%attr(0750, root, %{daemon_group}) /etc/bacula/drop_mysql_database
-%attr(0750, root, %{daemon_group}) /etc/bacula/make_mysql_tables
-%attr(0750, root, %{daemon_group}) /etc/bacula/drop_mysql_tables
-%attr(0750, root, %{daemon_group}) /etc/bacula/update_mysql_tables
-%attr(0750, root, %{daemon_group}) /etc/bacula/grant_mysql_privileges
-%attr(0750, root, %{daemon_group}) /etc/bacula/startmysql
-%attr(0750, root, %{daemon_group}) /etc/bacula/stopmysql
+%attr(-, root, %{daemon_group}) %{script_dir}/create_mysql_database
+%attr(-, root, %{daemon_group}) %{script_dir}/drop_mysql_database
+%attr(-, root, %{daemon_group}) %{script_dir}/make_mysql_tables
+%attr(-, root, %{daemon_group}) %{script_dir}/drop_mysql_tables
+%attr(-, root, %{daemon_group}) %{script_dir}/update_mysql_tables
+%attr(-, root, %{daemon_group}) %{script_dir}/grant_mysql_privileges
+%attr(-, root, %{daemon_group}) %{script_dir}/startmysql
+%attr(-, root, %{daemon_group}) %{script_dir}/stopmysql
 %endif
 
 %if %{sqlite}
 %files sqlite
 %defattr(-,root,root)
 %endif
 
 %if %{sqlite}
 %files sqlite
 %defattr(-,root,root)
-%attr(0750, root, %{daemon_group}) /etc/bacula/create_sqlite_database
-%attr(0750, root, %{daemon_group}) /etc/bacula/drop_sqlite_database
-%attr(0750, root, %{daemon_group}) /etc/bacula/grant_sqlite_privileges
-%attr(0750, root, %{daemon_group}) /etc/bacula/make_sqlite_tables
-%attr(0750, root, %{daemon_group}) /etc/bacula/drop_sqlite_tables
-%attr(0750, root, %{daemon_group}) /etc/bacula/update_sqlite_tables
-%{sqlite_bindir}/libsqlite.a
-%{sqlite_bindir}/sqlite.h
-%{sqlite_bindir}/sqlite
+%attr(-, root, %{daemon_group}) %{script_dir}/create_sqlite3_database
+%attr(-, root, %{daemon_group}) %{script_dir}/drop_sqlite3_database
+%attr(-, root, %{daemon_group}) %{script_dir}/grant_sqlite3_privileges
+%attr(-, root, %{daemon_group}) %{script_dir}/make_sqlite3_tables
+%attr(-, root, %{daemon_group}) %{script_dir}/drop_sqlite3_tables
+%attr(-, root, %{daemon_group}) %{script_dir}/update_sqlite3_tables
+%{sqlite_bindir}/libsqlite3.a
+%{sqlite_bindir}/sqlite3.h
+%{sqlite_bindir}/sqlite3
 %endif
 
 %if %{postgresql}
 %files postgresql
 %defattr(-,root,root)
 %endif
 
 %if %{postgresql}
 %files postgresql
 %defattr(-,root,root)
-%attr(0750, root, %{daemon_group}) /etc/bacula/create_postgresql_database
-%attr(0750, root, %{daemon_group}) /etc/bacula/drop_postgresql_database
-%attr(0750, root, %{daemon_group}) /etc/bacula/make_postgresql_tables
-%attr(0750, root, %{daemon_group}) /etc/bacula/drop_postgresql_tables
-%attr(0750, root, %{daemon_group}) /etc/bacula/update_postgresql_tables
-%attr(0750, root, %{daemon_group}) /etc/bacula/grant_postgresql_privileges
+%attr(-, root, %{daemon_group}) %{script_dir}/create_postgresql_database
+%attr(-, root, %{daemon_group}) %{script_dir}/drop_postgresql_database
+%attr(-, root, %{daemon_group}) %{script_dir}/make_postgresql_tables
+%attr(-, root, %{daemon_group}) %{script_dir}/drop_postgresql_tables
+%attr(-, root, %{daemon_group}) %{script_dir}/update_postgresql_tables
+%attr(-, root, %{daemon_group}) %{script_dir}/grant_postgresql_privileges
 %endif
 
 # The rest is DB backend independent
 %endif
 
 # The rest is DB backend independent
-%attr(0750, root, %{daemon_group}) %dir /etc/bacula
-%attr(0750, root, %{daemon_group}) /etc/bacula/bacula
-%attr(0750, root, %{daemon_group}) /etc/bacula/bconsole
-%attr(0750, root, %{daemon_group}) /etc/bacula/create_bacula_database
-%attr(0750, root, %{daemon_group}) /etc/bacula/drop_bacula_database
-%attr(0750, root, %{daemon_group}) /etc/bacula/grant_bacula_privileges
-%attr(0750, root, %{daemon_group}) /etc/bacula/make_bacula_tables
-%attr(0750, root, %{daemon_group}) /etc/bacula/drop_bacula_tables
-%attr(0750, root, %{daemon_group}) /etc/bacula/update_bacula_tables
-%attr(0750, root, %{daemon_group}) /etc/bacula/make_catalog_backup
-%attr(0750, root, %{daemon_group}) /etc/bacula/delete_catalog_backup
-%attr(0750, root, %{daemon_group}) /etc/bacula/mtx-changer
-%attr(0640, root, %{daemon_group}) /etc/bacula/btraceback.dbx
-%attr(0640, root, %{daemon_group}) /etc/bacula/btraceback.gdb
-#%attr(0750, root, %{daemon_group}) /etc/bacula/dvd-freespace
-#%attr(0750, root, %{daemon_group}) /etc/bacula/dvd-writepart
-%attr(0750, root, %{daemon_group}) /etc/bacula/dvd-handler
-%attr(0750, root, %{daemon_group}) /etc/init.d/bacula-dir
-%attr(0750, root, %{daemon_group}) /etc/init.d/bacula-fd
-%attr(0750, root, %{daemon_group}) /etc/init.d/bacula-sd
-%attr(0750, root, %{daemon_group}) /etc/bacula/rescue
+%if ! %{client_only}
+%attr(-, root, %{daemon_group}) %dir %{script_dir}
+%attr(-, root, %{daemon_group}) %{script_dir}/bacula
+%attr(-, root, %{daemon_group}) %{script_dir}/bconsole
+%attr(-, root, %{daemon_group}) %{script_dir}/create_bacula_database
+%attr(-, root, %{daemon_group}) %{script_dir}/drop_bacula_database
+%attr(-, root, %{daemon_group}) %{script_dir}/grant_bacula_privileges
+%attr(-, root, %{daemon_group}) %{script_dir}/make_bacula_tables
+%attr(-, root, %{daemon_group}) %{script_dir}/drop_bacula_tables
+%attr(-, root, %{daemon_group}) %{script_dir}/update_bacula_tables
+%attr(-, root, %{daemon_group}) %{script_dir}/make_catalog_backup
+%attr(-, root, %{daemon_group}) %{script_dir}/delete_catalog_backup
+%attr(-, root, %{daemon_group}) %{script_dir}/btraceback.dbx
+%attr(-, root, %{daemon_group}) %{script_dir}/btraceback.gdb
+%attr(-, root, %{daemon_group}) %{script_dir}/rescue
+%attr(-, root, %{daemon_group}) %{script_dir}/disk-changer
+%attr(-, root, %{daemon_group}) %{script_dir}/bacula-ctl-dir
+%attr(-, root, %{daemon_group}) %{script_dir}/bacula-ctl-fd
+%attr(-, root, %{daemon_group}) %{script_dir}/bacula-ctl-sd
+%attr(-, root, %{daemon_group}) /etc/init.d/bacula-dir
+%attr(-, root, %{daemon_group}) /etc/init.d/bacula-fd
+%attr(-, root, %{storage_daemon_group}) %{script_dir}/dvd-handler
+%attr(-, root, %{storage_daemon_group}) /etc/init.d/bacula-sd
+%attr(-, root, %{storage_daemon_group}) %{script_dir}/mtx-changer
 
 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
 
 /etc/logrotate.d/bacula
 /etc/log.d/scripts/services/bacula
 
 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
 
 /etc/logrotate.d/bacula
 /etc/log.d/scripts/services/bacula
-%attr(0640, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-dir.conf
-%attr(0640, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-fd.conf
-%attr(0640, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-sd.conf
-%attr(0640, root, %{daemon_group}) %config(noreplace) /etc/bacula/bconsole.conf
-%attr(0640, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/logfiles/bacula.conf
-%attr(0640, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/services/bacula.conf
-%attr(0640, root, %{daemon_group}) /etc/bacula/query.sql
-%attr(0770, root, %{daemon_group}) %dir %{working_dir}
+%attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bacula-dir.conf
+%attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bacula-fd.conf
+%attr(-, root, %{storage_daemon_group}) %config(noreplace) %{sysconf_dir}/bacula-sd.conf
+%attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bconsole.conf
+%attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/logfiles/bacula.conf
+%attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/services/bacula.conf
+%attr(-, root, %{daemon_group}) %config(noreplace) %{script_dir}/query.sql
+
+%attr(-, %{storage_daemon_user}, %{daemon_group}) %dir %{working_dir}
 
 /usr/sbin/bacula-dir
 /usr/sbin/bacula-fd
 
 /usr/sbin/bacula-dir
 /usr/sbin/bacula-fd
@@ -812,19 +1848,57 @@ chmod 644 $RPM_BUILD_ROOT/etc/bacula/tray-monitor.conf
 /usr/sbin/bconsole
 /usr/sbin/dbcheck
 /usr/sbin/bsmtp
 /usr/sbin/bconsole
 /usr/sbin/dbcheck
 /usr/sbin/bsmtp
+/usr/sbin/bregex
+/usr/sbin/bwild
+%{_mandir}/man8/bacula-fd.8.%{manpage_ext}
+%{_mandir}/man8/bacula-dir.8.%{manpage_ext}
+%{_mandir}/man8/bacula-sd.8.%{manpage_ext}
+%{_mandir}/man8/bacula.8.%{manpage_ext}
+%{_mandir}/man8/bconsole.8.%{manpage_ext}
+%{_mandir}/man8/bcopy.8.%{manpage_ext}
+%{_mandir}/man8/bextract.8.%{manpage_ext}
+%{_mandir}/man8/bls.8.%{manpage_ext}
+%{_mandir}/man8/bscan.8.%{manpage_ext}
+%{_mandir}/man8/btape.8.%{manpage_ext}
+%{_mandir}/man8/btraceback.8.%{manpage_ext}
+%{_mandir}/man8/dbcheck.8.%{manpage_ext}
+%{_mandir}/man1/bsmtp.1.%{manpage_ext}
+%endif
 
 %if %{mysql}
 %pre mysql
 
 %if %{mysql}
 %pre mysql
-# test for bacula database older than version 8
+# test for bacula database older than version 9
 # note: this ASSUMES no password has been set for bacula database
 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
 %endif
 
 %if %{sqlite}
 %pre sqlite
 # note: this ASSUMES no password has been set for bacula database
 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
 %endif
 
 %if %{sqlite}
 %pre sqlite
-# test for bacula database older than version 8
+# are we upgrading from sqlite to sqlite3?
 if [ -s %{working_dir}/bacula.db ] && [ -s %{sqlite_bindir}/sqlite ];then
 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`
+        echo "This version of bacula-sqlite involves an upgrade to sqlite3."
+       echo "Your catalog database file is not compatible with sqlite3, thus"
+       echo "you will need to dump the data, delete the old file, and re-run"
+       echo "this rpm upgrade."
+       echo ""
+       echo "Backing up your current database..."
+        echo ".dump" | %{sqlite_bindir}/sqlite %{working_dir}/bacula.db > %{working_dir}/bacula_backup.sql
+       mv %{working_dir}/bacula.db %{working_dir}/bacula.db.old
+       echo "Your catalog data has been saved in %{working_dir}/bacula_backup.sql and your"
+       echo "catalog file has been renamed %{working_dir}/bacula.db.old."
+       echo ""
+       echo "Please re-run this rpm package upgrade."
+       echo "After the upgrade is complete, restore your catalog"
+       echo "with the following commands:"
+       echo "%{script_dir}/drop_sqlite3_tables"
+       echo "cd %{working_dir}"
+       echo "%{sqlite_bindir}/sqlite3 $* bacula.db < bacula_backup.sql"
+       echo "chown bacula.bacula bacula.db"
+       exit 1
+fi
+# test for bacula database older than version 9 and sqlite3
+if [ -s %{working_dir}/bacula.db ] && [ -s %{sqlite_bindir}/sqlite3 ];then
+        DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite3 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
 %endif
 
 %if %{postgresql}
 %endif
 
 %if %{postgresql}
@@ -832,50 +1906,78 @@ if [ -s %{working_dir}/bacula.db ] && [ -s %{sqlite_bindir}/sqlite ];then
 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
 %endif
 
 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
 %endif
 
-if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "8" ]; then
-        echo "This bacula upgrade will update a bacula database from version 8 to 9."
+%if ! %{client_only}
+if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "9" ]; then
+        echo "This bacula upgrade will update a bacula database from version 9 to 10."
         echo "You appear to be running database version $DB_VER. You must first update"
         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_%{db_backend}_tables to delete all your your current"
+        echo "your database to version 9 and then install this upgrade. The alternative"
+       echo "is to use %{script_dir}/drop_%{db_backend}_tables to delete all your your current"
         echo "catalog information, then do the upgrade. Information on updating a"
         echo "catalog information, then do the upgrade. Information on updating a"
-        echo "database older than version 8 can be found in the release notes."
+        echo "database older than version 9 can be found in the release notes."
         exit 1
 fi
         exit 1
 fi
+%endif
 
 %if %{sqlite}
 fi
 %endif
 
 
 %if %{sqlite}
 fi
 %endif
 
-# 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
+%if ! %{client_only}
+# check for and copy %{sysconf_dir}/console.conf to bconsole.conf
+if [ -s %{sysconf_dir}/console.conf ];then
+       cp -p %{sysconf_dir}/console.conf %{sysconf_dir}/bconsole.conf
 fi
 
 fi
 
-# create the daemon user and group
+# create the daemon users and groups
+# first create the groups if they don't exist
 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
 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
+HAVE_BACULA=`grep %{storage_daemon_group} %{group_file} 2>/dev/null`
+if [ -z "$HAVE_BACULA" ]; then
+        %{groupadd} -r %{storage_daemon_group} > /dev/null 2>&1
+        echo "The group %{storage_daemon_group} has been added to %{group_file}."
+        echo "See the manual chapter \"Running Bacula\" for details."
+fi
+# now create the users if they do not exist
+# we do not use the -g option allowing the primary group to be set to system default
+# this will be a unique group on redhat type systems or the group users on some systems
 HAVE_BACULA=`grep %{storage_daemon_user} %{user_file} 2>/dev/null`
 if [ -z "$HAVE_BACULA" ]; then
 HAVE_BACULA=`grep %{storage_daemon_user} %{user_file} 2>/dev/null`
 if [ -z "$HAVE_BACULA" ]; then
-        %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -G %{device_group} -M -n -s /sbin/nologin %{storage_daemon_user} > /dev/null 2>&1
+        %{useradd} -r -c "Bacula" -d %{working_dir} -g %{storage_daemon_group} -M -s /sbin/nologin %{storage_daemon_user} > /dev/null 2>&1
         echo "The user %{storage_daemon_user} has been added to %{user_file}."
         echo "See the manual chapter \"Running Bacula\" for details."
 fi
 HAVE_BACULA=`grep %{director_daemon_user} %{user_file} 2>/dev/null`
 if [ -z "$HAVE_BACULA" ]; then
         echo "The user %{storage_daemon_user} has been added to %{user_file}."
         echo "See the manual chapter \"Running Bacula\" for details."
 fi
 HAVE_BACULA=`grep %{director_daemon_user} %{user_file} 2>/dev/null`
 if [ -z "$HAVE_BACULA" ]; then
-        %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -n -s /sbin/nologin %{director_daemon_user} > /dev/null 2>&1
+        %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{director_daemon_user} > /dev/null 2>&1
         echo "The user %{director_daemon_user} has been added to %{user_file}."
         echo "See the manual chapter \"Running Bacula\" for details."
 fi
 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
 if [ -z "$HAVE_BACULA" ]; then
         echo "The user %{director_daemon_user} has been added to %{user_file}."
         echo "See the manual chapter \"Running Bacula\" for details."
 fi
 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
 if [ -z "$HAVE_BACULA" ]; then
-        %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -n -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
+        %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
         echo "The user %{file_daemon_user} has been added to %{user_file}."
         echo "See the manual chapter \"Running Bacula\" for details."
 fi
         echo "The user %{file_daemon_user} has been added to %{user_file}."
         echo "See the manual chapter \"Running Bacula\" for details."
 fi
+# now we add the supplementary groups, this is ok to call even if the users already exist
+# we only do this if the user is NOT root
+IS_ROOT=%{director_daemon_user}
+if [ "$IS_ROOT" != "root" ]; then
+%{usermod} -G %{daemon_group} %{director_daemon_user}
+fi
+IS_ROOT=%{storage_daemon_user}
+if [ "$IS_ROOT" != "root" ]; then
+%{usermod} -G %{daemon_group},%{storage_daemon_group} %{storage_daemon_user}
+fi
+IS_ROOT=%{file_daemon_user}
+if [ "$IS_ROOT" != "root" ]; then
+%{usermod} -G %{daemon_group} %{file_daemon_user}
+fi
+%endif
 
 %if %{mysql}
 %post mysql
 
 %if %{mysql}
 %post mysql
@@ -887,12 +1989,14 @@ fi
 %post postgresql
 %endif
 
 %post postgresql
 %endif
 
+%if ! %{client_only}
 # add our links
 if [ "$1" -ge 1 ] ; then
 /sbin/chkconfig --add bacula-dir
 /sbin/chkconfig --add bacula-fd
 /sbin/chkconfig --add bacula-sd
 fi
 # add our links
 if [ "$1" -ge 1 ] ; then
 /sbin/chkconfig --add bacula-dir
 /sbin/chkconfig --add bacula-fd
 /sbin/chkconfig --add bacula-sd
 fi
+%endif
 
 %if %{mysql}
 # test for an existing database
 
 %if %{mysql}
 # test for an existing database
@@ -903,19 +2007,19 @@ DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
 if [ -z "$DB_VER" ]; then
         echo "Hmm, doesn't look like you have an existing database."
         echo "Granting privileges for MySQL user bacula..."
 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
+       %{script_dir}/grant_mysql_privileges
         echo "Creating MySQL bacula database..."
         echo "Creating MySQL bacula database..."
-        /etc/bacula/create_mysql_database
+       %{script_dir}/create_mysql_database
         echo "Creating bacula tables..."
         echo "Creating bacula tables..."
-        /etc/bacula/make_mysql_tables
+       %{script_dir}/make_mysql_tables
 
 
-# check to see if we need to upgrade a 1.36 or lower database
-elif [ "$DB_VER" -lt "9" ]; then
+# check to see if we need to upgrade a 1.38 or lower database
+elif [ "$DB_VER" -lt "10" ]; 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 ..."
         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
+       %{script_dir}/update_mysql_tables
         echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
 
 fi
         echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
 
 fi
@@ -924,23 +2028,24 @@ fi
 %if %{sqlite}
 # test for an existing database
 if [ -s %{working_dir}/bacula.db ]; then
 %if %{sqlite}
 # test for an existing database
 if [ -s %{working_dir}/bacula.db ]; then
-        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 "9" ] && [ "$DB_VER" -ge "8" ]; then
+        DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite3 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
+        # check to see if we need to upgrade a 1.38 or lower database
+        if [ "$DB_VER" -lt "10" ] && [ "$DB_VER" -ge "9" ]; then
                 echo "This release requires an upgrade to your bacula database."
                 echo "Backing up your current database..."
                 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 ".dump" | %{sqlite_bindir}/sqlite3 %{working_dir}/bacula.db | bzip2 > %{working_dir}/bacula_backup.sql.bz2
                 echo "Upgrading bacula database ..."
                 echo "Upgrading bacula database ..."
-                /etc/bacula/update_sqlite_tables
+               %{script_dir}/update_sqlite3_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..."
                 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
+       %{script_dir}/create_sqlite3_database
+       chown %{director_daemon_user}.%{daemon_group} %{working_dir}/bacula.db
         echo "Creating the SQLite tables..."
         echo "Creating the SQLite tables..."
-        /etc/bacula/make_sqlite_tables
+       %{script_dir}/make_sqlite3_tables
 fi
 %endif
 
 fi
 %endif
 
@@ -953,27 +2058,28 @@ DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head
 if [ -z "$DB_VER" ]; then
         echo "Hmm, doesn't look like you have an existing database."
         echo "Creating PostgreSQL bacula database..."
 if [ -z "$DB_VER" ]; then
         echo "Hmm, doesn't look like you have an existing database."
         echo "Creating PostgreSQL bacula database..."
-        /etc/bacula/create_postgresql_database
+       %{script_dir}/create_postgresql_database
         echo "Creating bacula tables..."
         echo "Creating bacula tables..."
-        /etc/bacula/make_postgresql_tables
+       %{script_dir}/make_postgresql_tables
         echo "Granting privileges for PostgreSQL user bacula..."
         echo "Granting privileges for PostgreSQL user bacula..."
-        /etc/bacula/grant_postgresql_privileges
+       %{script_dir}/grant_postgresql_privileges
 
 
-# check to see if we need to upgrade a 1.36 or lower database
-elif [ "$DB_VER" -lt "9" ]; then
+# check to see if we need to upgrade a 1.38 or lower database
+elif [ "$DB_VER" -lt "10" ]; 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 ..."
         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
+       %{script_dir}/update_postgresql_tables
         echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
         
 fi
 %endif
 
         echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
         
 fi
 %endif
 
+%if ! %{client_only}
 # generate passwords if needed
 # generate passwords if needed
-if [ -d /etc/bacula ]; then
-        cd /etc/bacula
+if [ -d %{sysconf_dir} ]; then
+       cd %{sysconf_dir}
         for file in *.conf; do
                 for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
                         need_password=`grep $string $file 2>/dev/null`
         for file in *.conf; do
                 for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
                         need_password=`grep $string $file 2>/dev/null`
@@ -985,6 +2091,7 @@ if [ -d /etc/bacula ]; then
                 done
         done
 fi
                 done
         done
 fi
+%endif
 
 %if %{mysql}
 %preun mysql
 
 %if %{mysql}
 %preun mysql
@@ -996,44 +2103,59 @@ fi
 %preun postgresql
 %endif
 
 %preun postgresql
 %endif
 
+%if ! %{client_only}
 # delete our links
 if [ $1 = 0 ]; then
 /sbin/chkconfig --del bacula-dir
 /sbin/chkconfig --del bacula-fd
 /sbin/chkconfig --del bacula-sd
 fi
 # delete our links
 if [ $1 = 0 ]; then
 /sbin/chkconfig --del bacula-dir
 /sbin/chkconfig --del bacula-fd
 /sbin/chkconfig --del bacula-sd
 fi
+%endif
 
 
 
 
+%if ! %{client_only} && %{mtx}
 %files mtx
 %files mtx
-/usr/sbin/loaderinfo
-/usr/sbin/mtx
-/usr/sbin/scsitape
-/usr/sbin/tapeinfo
-/usr/man/man1/*
-
+%defattr(-,root,root)
+%attr(-, root, %{storage_daemon_group}) /usr/sbin/loaderinfo
+%attr(-, root, %{storage_daemon_group}) /usr/sbin/mtx
+%attr(-, root, %{storage_daemon_group}) /usr/sbin/scsitape
+%attr(-, root, %{storage_daemon_group}) /usr/sbin/tapeinfo
+%attr(-, root, %{storage_daemon_group}) /usr/sbin/nsmhack
+%attr(-, root, %{storage_daemon_group}) /usr/sbin/scsieject
+%{_mandir}/man1/loaderinfo.1.%{manpage_ext}
+%{_mandir}/man1/mtx.1.%{manpage_ext}
+%{_mandir}/man1/scsitape.1.%{manpage_ext}
+%{_mandir}/man1/tapeinfo.1.%{manpage_ext}
+%{_mandir}/man1/scsieject.1.%{manpage_ext}
+%endif
 
 %files client
 %defattr(-,root,root)
 
 %files client
 %defattr(-,root,root)
-%attr(0750, root, %{daemon_group}) %dir /etc/bacula
-%attr(0750, root, %{daemon_group}) /etc/bacula/bconsole
+%attr(-, root, %{daemon_group}) %dir %{script_dir}
+%attr(-, root, %{daemon_group}) %{script_dir}/bconsole
+%{script_dir}/bacula-ctl-fd
 /etc/init.d/bacula-fd
 /etc/init.d/bacula-fd
-%attr(0750, root, %{daemon_group}) /etc/bacula/rescue
+%attr(-, root, %{daemon_group}) %{script_dir}/rescue
 
 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
 
 /etc/logrotate.d/bacula
 
 
 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
 
 /etc/logrotate.d/bacula
 
-%attr(0640, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-fd.conf
-%attr(0640, root, %{daemon_group}) %config(noreplace) /etc/bacula/bconsole.conf
-%attr(0770, root, %{daemon_group}) %dir %{working_dir}
+%attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bacula-fd.conf
+%attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bconsole.conf
+
+%attr(-, root, %{daemon_group}) %dir %{working_dir}
 
 /usr/sbin/bacula-fd
 /usr/sbin/btraceback
 
 /usr/sbin/bacula-fd
 /usr/sbin/btraceback
-%attr(0640, root, %{daemon_group}) /etc/bacula/btraceback.gdb
-%attr(0640, root, %{daemon_group}) /etc/bacula/btraceback.dbx
-/usr/sbin/bsmtp
+%attr(-, root, %{daemon_group}) %{script_dir}/btraceback.gdb
+%attr(-, root, %{daemon_group}) %{script_dir}/btraceback.dbx
 /usr/sbin/bconsole
 /usr/sbin/bconsole
+%{_mandir}/man8/bacula-fd.8.%{manpage_ext}
+%{_mandir}/man8/bacula.8.%{manpage_ext}
+%{_mandir}/man8/bconsole.8.%{manpage_ext}
+%{_mandir}/man8/btraceback.8.%{manpage_ext}
 
 
 %pre client
 
 
 %pre client
@@ -1044,12 +2166,20 @@ if [ -z "$HAVE_BACULA" ]; then
         echo "The group %{daemon_group} has been added to %{group_file}."
         echo "See the manual chapter \"Running Bacula\" for details."
 fi
         echo "The group %{daemon_group} has been added to %{group_file}."
         echo "See the manual chapter \"Running Bacula\" for details."
 fi
+# we do not use the -g option allowing the primary group to be set to system default
+# this will be a unique group on redhat type systems or the group users on some systems
 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
 if [ -z "$HAVE_BACULA" ]; then
 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
 if [ -z "$HAVE_BACULA" ]; then
-        %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -n -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
+        %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
         echo "The user %{file_daemon_user} has been added to %{user_file}."
         echo "See the manual chapter \"Running Bacula\" for details."
 fi
         echo "The user %{file_daemon_user} has been added to %{user_file}."
         echo "See the manual chapter \"Running Bacula\" for details."
 fi
+# now we add the supplementary group, this is ok to call even if the user already exists
+# we only do this if the user is NOT root
+IS_ROOT=%{file_daemon_user}
+if [ "$IS_ROOT" != "root" ]; then
+%{usermod} -G %{daemon_group} %{file_daemon_user}
+fi
 
 %post client
 # add our link
 
 %post client
 # add our link
@@ -1058,8 +2188,8 @@ if [ "$1" -ge 1 ] ; then
 fi
 
 # generate passwords if needed
 fi
 
 # generate passwords if needed
-if [ -d /etc/bacula ]; then
-        cd /etc/bacula
+if [ -d %{sysconf_dir} ]; then
+       cd %{sysconf_dir}
         for file in *.conf; do
                 for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
                         need_password=`grep $string $file 2>/dev/null`
         for file in *.conf; do
                 for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
                         need_password=`grep $string $file 2>/dev/null`
@@ -1078,9 +2208,10 @@ if [ $1 = 0 ]; then
 /sbin/chkconfig --del bacula-fd
 fi
 
 /sbin/chkconfig --del bacula-fd
 fi
 
+%if ! %{client_only}
 %files updatedb
 %defattr(-,root,%{daemon_group})
 %files updatedb
 %defattr(-,root,%{daemon_group})
-/etc/bacula/updatedb/*
+%{script_dir}/updatedb/*
 
 %pre updatedb
 # create the daemon group
 
 %pre updatedb
 # create the daemon group
@@ -1092,34 +2223,34 @@ if [ -z "$HAVE_BACULA" ]; then
 fi
 
 %post updatedb
 fi
 
 %post updatedb
-echo "The database update scripts were installed to /etc/bacula/updatedb"
+echo "The database update scripts were installed to %{script_dir}/updatedb"
+%endif
 
 %if %{gconsole}
 %files gconsole
 %defattr(-,root,root)
 
 %if %{gconsole}
 %files gconsole
 %defattr(-,root,root)
-/usr/sbin/gnome-console
-%attr(0750, root, %{daemon_group}) %dir /etc/bacula
-%attr(075, root, %{daemon_group}) /etc/bacula/gconsole
-%attr(0640, root, %{daemon_group}) %config(noreplace) /etc/bacula/gnome-console.conf
+/usr/sbin/bgnome-console
+%attr(-, root, %{daemon_group}) %dir %{script_dir}
+%attr(-, root, %{daemon_group}) %{script_dir}/gconsole
+%attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bgnome-console.conf
 /usr/share/pixmaps/bacula.png
 /usr/share/pixmaps/bacula.png
-%endif
-
-%if %{gconsole}
 /usr/share/applications/bacula.desktop
 /usr/share/applications/bacula.desktop
+%{_mandir}/man1/bacula-bgnome-console.1.%{manpage_ext}
 %endif
 
 %if %{gconsole} && ! %{rh8}
 /usr/sbin/bacula-tray-monitor
 %endif
 
 %if %{gconsole} && ! %{rh8}
 /usr/sbin/bacula-tray-monitor
-%config(noreplace) /etc/bacula/tray-monitor.conf
+%config(noreplace) %{sysconf_dir}/tray-monitor.conf
 /usr/share/pixmaps/bacula-tray-monitor.xpm
 /usr/share/applications/bacula-tray-monitor.desktop
 /usr/share/pixmaps/bacula-tray-monitor.xpm
 /usr/share/applications/bacula-tray-monitor.desktop
+%{_mandir}/man1/bacula-tray-monitor.1.%{manpage_ext}
 %endif
 
 %endif
 
-%if %{gconsole} && ! %{su9}
+%if %{gconsole} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{su103} && ! %{su110}
 # add the console helper files
 # 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
+%config(noreplace,missingok) /etc/pam.d/bgnome-console
+%config(noreplace,missingok) /etc/security/console.apps/bgnome-console
+/usr/bin/bgnome-console
 %endif
 
 %if %{gconsole}
 %endif
 
 %if %{gconsole}
@@ -1134,8 +2265,98 @@ fi
 
 %post gconsole
 # generate passwords if needed
 
 %post gconsole
 # generate passwords if needed
-if [ -d /etc/bacula ]; then
-        cd /etc/bacula
+if [ -d %{sysconf_dir} ]; then
+       cd %{sysconf_dir}
+        for file in *.conf; do
+                for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
+                        need_password=`grep $string $file 2>/dev/null`
+                        if [ -n "$need_password" ]; then
+                                pass=`openssl rand -base64 33`
+                                sed "s-$string-$pass-g" $file > $file.new
+                                cp -f $file.new $file; rm -f $file.new
+                        fi
+                done
+        done
+fi
+%endif
+
+%if %{wxconsole}
+%files wxconsole
+%defattr(-,root,root)
+/usr/sbin/bwx-console
+%attr(-, root, %{daemon_group}) %dir %{sysconf_dir}
+%attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bwx-console.conf
+/usr/share/pixmaps/wxwin16x16.xpm
+/usr/share/applications/wxconsole.desktop
+%{_mandir}/man1/bacula-bwxconsole.1.%{manpage_ext}
+%endif
+
+%if %{wxconsole} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{su103} && ! %{su110}
+# add the console helper files
+%config(noreplace,missingok) /etc/pam.d/bwx-console
+%config(noreplace,missingok) /etc/security/console.apps/bwx-console
+/usr/bin/bwx-console
+%endif
+
+%if %{wxconsole}
+%pre wxconsole
+# 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
+
+%post wxconsole
+# generate passwords if needed
+if [ -d %{sysconf_dir} ]; then
+       cd %{sysconf_dir}
+        for file in *.conf; do
+                for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
+                        need_password=`grep $string $file 2>/dev/null`
+                        if [ -n "$need_password" ]; then
+                                pass=`openssl rand -base64 33`
+                                sed "s-$string-$pass-g" $file > $file.new
+                                cp -f $file.new $file; rm -f $file.new
+                        fi
+                done
+        done
+fi
+%endif
+
+%if %{bat}
+%files bat
+%defattr(-,root,root)
+/usr/sbin/bat
+%attr(-, root, %{daemon_group}) %dir %{sysconf_dir}
+%attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bat.conf
+/usr/share/pixmaps/bat_icon.png
+/usr/share/applications/bat.desktop
+%{_mandir}/man1/bat.1.%{manpage_ext}
+%endif
+
+%if %{bat} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{su103} && ! %{su110}
+# add the console helper files
+%config(noreplace,missingok) /etc/pam.d/bat
+%config(noreplace,missingok) /etc/security/console.apps/bat
+/usr/bin/bat
+%endif
+
+%if %{bat}
+%pre bat
+# 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
+
+%post bat
+# generate passwords if needed
+if [ -d %{sysconf_dir} ]; then
+       cd %{sysconf_dir}
         for file in *.conf; do
                 for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
                         need_password=`grep $string $file 2>/dev/null`
         for file in *.conf; do
                 for string in XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX; do
                         need_password=`grep $string $file 2>/dev/null`
@@ -1150,6 +2371,162 @@ fi
 %endif
 
 %changelog
 %endif
 
 %changelog
+* Sun Aug 17 2008 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- remove libtermcap dependancy for FC9
+* Mon Aug 04 2008 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- fix bat dependencies
+* Sat Jun 28 2008 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add su110 target
+* Sat May 24 2008 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add fc9 target
+* Sun Mar 30 2008 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- FHS compatibility changes
+* Sat Feb 16 2008 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- remove fix for false buffer overflow detection with glibc >= 2.7
+* Sat Feb 09 2008 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- fix for false buffer overflow detection with glibc >= 2.7
+* Sun Jan 27 2008 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 2.2.8 release
+- add debug package for SuSE
+* Sat Jan 12 2008 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 2.2.8 beta release  
+- fix bug 1037
+- add fc8 target
+* Sun Dec 30 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- fix typo on su103 client package requirements
+* Fri Dec 28 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add nobuild_mtx switch
+- add patch for postgresql.c for old postgresql versions
+* Sat Nov 17 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- switch to sqlite3
+* Sun Nov 11 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add new files required by rescue makefile
+* Sat Nov 10 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add su103 build target
+* Sun Nov 04 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- fix dist defines for rhel5 and clones
+- fix rhel broken 64 bit QT4 paths
+- rh qt4 packages don't provide qt so fix that too
+* Mon Oct 29 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- correct ownership when creating sqlite db file in post script
+* Sun Sep 16 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- fix disable-batch-insert
+* Fri Sep 14 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 2.2.4 release
+- turn off gconsole build for fc3, tray monitor fails to build
+- add new files for mtx package (09Sep07 depkgs update)
+* Sat Sep 08 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add --disable-batch-insert for older platforms
+- add build targets for rhel5 and clones
+* Mon Sep 03 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 2.2.1 release
+- turn off gconsole build for su10 & fc4, tray monitor fails to build
+* Sat Jul 14 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 2.1.26 add make of qwt in depkgs for bat
+* Sat Jun 02 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- upgrade Qt requirement for bat to 4.2
+* Sun May 06 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add fc7 build target
+* Sun Apr 29 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 2.1.8
+- gnome-console now bgnome-console
+- wxconsole now bwx-console
+- add build option for bat
+* Sat Apr 08 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- merge Otto Mueller's patch but keep script dir set to /etc/bacula
+- add build tag for Scientific Linux per Jon Peatfield <J.S.Peatfield@damtp.cam.ac.uk>
+* Tue Mar 27 2007 Otto Mueller <otto.mueller@bundestag.de>
+- adjust directory locations for FHS-compatibility
+  sysconf_dir (/etc/bacula), script_dir (/usr/lib/bacula),
+  working_dir (/var/lib/bacula) and pid_dir (/var/run)
+* Mon Feb 26 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add SuSE 10.2 target
+* Sat Jan 20 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- correct bug 752
+- set query.sql as config file
+- correct bug 754
+* Sun Jan 14 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 2.0.1 release
+- change determination of gcc version per patch from Marc Hennes
+- move BuildRequire for atk-devel to gnome only builds
+- add fc6 build tag
+* Sat Jan 06 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 2.0.0 release
+* Sun Oct 15 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 1.39.26 remove create_sqlite_database.in.patch
+* Sun Sep 24 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- change ownership of working_dir on server packages to bacula.bacula so that
+- bacula-sd can create bootstrap files
+* Sat Sep 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 1.39.22 remove separate cd and make of manpages the main Makefile does it now
+* Sun Aug 06 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- fix manpages file extension for mdk
+* Sat Aug 05 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- bug 648 re-enable and update sqlite patches
+- 1.39.18 changes
+- updatedb 9 to 10
+- install man pages
+- lock out gconsole build for gtk+ < 2.4
+* Mon Jul 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- move pango-devel BuildRequires into gconsole only build
+* Sat Jul 15 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add provides and conflicts for standard suse packages
+- add third party packager tag support
+- add build_client_only tag
+- remove bsmtp from client package
+- add bacula-ctl-fd to client package
+* Thu Jul 13 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- fix directory creation when wxconsole and not gconsole
+* Tue Jul 04 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add check to buildrequires to make sure libstdc++ version matches gcc
+* Mon Jul 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add python build support
+- fix LDFLAGS declarations
+* Sun Jul 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add requires for standard compiler toolchain
+- move version and release tags up
+- move patches up
+- add docs_version tag
+* Sat Jul 01 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- update rescuever to 1.8.6
+* Sun Jun 25 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- update depkgs to 25Jun06
+- add mysql5 build tag
+* Mon Jun 12 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 1.38.10 bump rescue version
+* Sun Jun 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- fix usermod statements
+- add fc5 target
+* Thu Apr 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add -g param back to useradd statements Bug 605
+* Mon Apr 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- redundant code cleanup
+* Sun Apr 16 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add wxconsole package
+* Fri Apr 14 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 1.38.8 release
+- dependency update for Mandriva
+* Sun Apr 08 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 1.38.7 release
+- remove -n option from useradd scripts
+* Sun Apr 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 1.38.6 release
+- fix problem specifying more than one primary group for user bacula
+- add build switch to not build gconsole regardless of platform
+* Sun Jan 29 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add centos3 build tag
+- fix link error of static-fd on Mandrake with --disable-nls
+* Fri Jan 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add fc4 dependencies
+* Mon Jan 23 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- add SuSE 10.0 build
+- remove specific permission in attrib macros
+* Sat Jan 21 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
+- 1.38.5 release
+- fix usermode required on suse, suse doesn't have usermode (xsu instead)
+- refix compat for _dist on SLES9 which seems to have been removed
+- added note regarding Aleksandar's use of specific permissions in attrib macros
+- need to review and add specific fc4 build currently using fc3 Requires
 * Wed Dec 14 2005 Aleksandar Milivojevic <alex@milivojevic.org>
 - 1.38.2 release
 - Reorganize files and pre/post sections to remove repetitions
 * Wed Dec 14 2005 Aleksandar Milivojevic <alex@milivojevic.org>
 - 1.38.2 release
 - Reorganize files and pre/post sections to remove repetitions