]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/platforms/gentoo/bacula.ebuild
Backport from Bacula Enterprise
[bacula/bacula] / bacula / platforms / gentoo / bacula.ebuild
index 38d4b2adbe1bfe10fc88139b6ca981e9f113d111..f80e4d8d26ebec19307d62bd9aa305d1ee850d5f 100644 (file)
@@ -1,6 +1,7 @@
 # Copyright 2004 D. Scott Barninger
-# Copyright 1999-2004 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
+# Copyright (C) 2000-2015 Kern Sibbald
+# License: BSD 2-Clause; see file LICENSE-FOSS
+#
 #
 # Modified from bacula-1.34.5.ebuild for 1.36.0 release
 # 24 Oct 2004 D. Scott Barninger <barninger at fairfieldcomputers dot com>
 # added cdrom rescue for 1.36.1
 # init script now comes from source package not ${FILES} dir
 # 26 Nov 2004 D. Scott Barninger <barninger at fairfieldcomputers dot com>
+#
+# fix symlink creation in rescue package in post script
+# remove mask on x86 keyword
+# fix post script so it doesn't talk about server config for client-only build
+# bug #181 - unable to reproduce on 2.4 kernel system so add FEATURES="-sandbox"
+# 04 Dec 2004 D. Scott Barninger <barninger at fairfieldcomputers dot com>
+#
+# more  on bug #181 - another user has reported a sandbox violation trying to
+# write to /dev/sg0 - still can't reproduce this behavior
+# add an 'addpredict /dev/sg0'
+# 08 Dec 2004 D. Scott Barninger <barninger at fairfieldcomputers dot com>
+#
+# resolve bug #181 - problem is caused by configure calling cdrecord to scan
+# the scsi bus. patch configure to remove this. add logrotate script.
+# 06 Feb 2005 D. Scott Barninger <barninger at fairfieldcomputers dot com>
+#
+# fix documentation bug
+# 07 Feb 2005 D. Scott Barninger <barninger at fairfieldcomputers dot com>
+#
+# new USE keywords bacula-clientonly bacula-split
+# add new logwatch scripts
+# 06 Mar 2005 D. Scott Barninger <barninger at fairfieldcomputers dot com>
+#
+# 1.36.3 doc changes
+# 17 Apr 2005 D. Scott Barninger <barninger at fairfieldcomputers dot com>
 
 DESCRIPTION="featureful client/server network backup suite"
 HOMEPAGE="http://www.bacula.org/"
 SRC_URI="mirror://sourceforge/bacula/${P}.tar.gz"
 
-LICENSE="GPL-2"
+LICENSE="BSD 2-Clause"
 SLOT="0"
-KEYWORDS="~x86 ~ppc ~sparc"
-IUSE="readline tcpd gnome mysql sqlite X static postgres wxwindows"
+KEYWORDS="x86 ~ppc ~sparc ~amd64"
+IUSE="readline tcpd gnome mysql sqlite X static postgres wxwindows bacula-clientonly bacula-split"
 
 inherit eutils
 
-#theres a local sqlite use flag. use it -OR- mysql, not both.
-#mysql is the recommended choice ...
-#may need sys-libs/libtermcap-compat but try without first
+# there is a local sqlite use flag. use it -OR- mysql, not both.
+# mysql is the recommended choice ...
+# may need sys-libs/libtermcap-compat but try without first
 DEPEND=">=sys-libs/zlib-1.1.4
-       sys-apps/mtx
-       readline? ( >=sys-libs/readline-4.1 )
-       tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
-       gnome? ( gnome-base/libgnome )
-       gnome? ( app-admin/gnomesu )
-       sqlite? ( =dev-db/sqlite-2* )
-       mysql? ( >=dev-db/mysql-3.23 )
-       postgres? ( >=dev-db/postgresql-7.4.0 )
-       X? ( virtual/x11 )
-       wxwindows? ( >=x11-libs/wxGTK-2.4.2 )
-       virtual/mta
-       dev-libs/gmp"
+        readline? ( >=sys-libs/readline-4.1 )
+        tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
+        gnome? ( gnome-base/libgnome )
+        gnome? ( app-admin/gnomesu )
+        !bacula-clientonly? (
+                sqlite? ( =dev-db/sqlite-2* )
+                mysql? ( >=dev-db/mysql-3.23 )
+                postgres? ( >=dev-db/postgresql-7.4.0 )
+                sys-apps/mtx
+        )
+        X? ( virtual/x11 )
+        wxwindows? ( >=x11-libs/wxGTK-2.4.2 )
+        virtual/mta
+        dev-libs/gmp
+        app-text/tetex
+        dev-tex/latex2html"
 RDEPEND="${DEPEND}
-       sys-apps/mtx
-       app-arch/mt-st"
+        !bacula-clientonly? (
+                sys-apps/mtx
+                app-arch/mt-st
+        )"
 
 src_compile() {
 
-       local myconf=""
-
-       #define this to skip building the other daemons ...
-       [ -n "$BUILD_CLIENT_ONLY" ] \
-               && myconf="${myconf} --enable-client-only"
-
-       myconf="
-               `use_enable readline`
-               `use_enable gnome`
-               `use_enable tcpd tcp-wrappers`
-               `use_enable X x`"
-
-       [ -n "$BUILD_CLIENT_ONLY" ] \
-                && myconf="${myconf} --enable-client-only"
-
-       # mysql is the reccomended choice ...
-       if use mysql
-       then
-               myconf="${myconf} --with-mysql=/usr"
-       elif use postgres
-       then
-               myconf="${myconf} --with-postgresql=/usr"
-       elif use sqlite
-       then
-               myconf="${myconf} --with-sqlite=/usr"
-       elif  use sqlite && use mysql
-       then
-               myconf="${myconf/--with-sqlite/}"
-       fi
-
-       if use wxwindows
-       then
-          myconf="${myconf} --enable-wx-console"
-       fi
-
-       if use readline
-       then
-          myconf="${myconf} --enable-readline"
-       fi
-
-       if use gnome
-       then
-       myconf="${myconf} --enable-tray-monitor"
-       fi
-
-
-       ./configure \
-               --enable-smartalloc \
-               --prefix=/usr \
-               --mandir=/usr/share/man \
-               --with-pid-dir=/var/run \
-               --sysconfdir=/etc/bacula \
-               --infodir=/usr/share/info \
-               --with-subsys-dir=/var/lock/subsys \
-               --with-working-dir=/var/bacula \
-               --with-scriptdir=/etc/bacula \
-               --with-dir-user=root \
-               --with-dir-group=bacula \
-               --with-sd-user=root \
-               --with-sd-group=bacula \
-               --with-fd-user=root \
-               --with-fd-group=bacula \
-               --host=${CHOST} ${myconf} || die "bad ./configure"
-
-       emake || die "compile problem"
-
-       # for the rescue package regardless of use static
-       cd ${S}/src/filed
-       make static-bacula-fd
-       cd ${S}
-
-       if use static
-       then
-               cd ${S}/src/console
-               make static-console
-               cd ${S}/src/dird
-               make static-bacula-dir
-               if use gnome
-               then
-                 cd ${S}/src/gnome-console
-                 make static-gnome-console
-               fi
-               if use wxwindows
-               then
-                 cd ${S}/src/wx-console
-                 make static-wx-console
-               fi
-               cd ${S}/src/stored
-               make static-bacula-sd
-       fi
+        # this resolves bug #181
+        epatch ${FILESDIR}/1.36.2-cdrecord-configure.patch
+
+        local myconf=""
+
+        myconf="
+                `use_enable readline`
+                `use_enable gnome`
+                `use_enable tcpd tcp-wrappers`
+                `use_enable X x`"
+
+        # define this to skip building the other daemons ...
+        if use bacula-clientonly
+        then
+                myconf="${myconf} --enable-client-only"
+        fi
+
+        # select database support
+        if ! use bacula-clientonly
+        then
+                # mysql is the recomended choice ...
+                if use mysql
+                then
+                        myconf="${myconf} --with-mysql=/usr"
+                elif use postgres
+                then
+                        myconf="${myconf} --with-postgresql=/usr"
+                elif use sqlite
+                then
+                        myconf="${myconf} --with-sqlite=/usr"
+                elif  use sqlite && use mysql
+                then
+                        myconf="${myconf/--with-sqlite/}"
+                fi
+        fi
+
+        if use wxwindows
+        then
+           myconf="${myconf} --enable-wx-console"
+        fi
+
+        if use readline
+        then
+           myconf="${myconf} --enable-readline"
+        fi
+
+        if use gnome
+        then
+        myconf="${myconf} --enable-tray-monitor"
+        fi
+
+        ./configure \
+                --enable-smartalloc \
+                --prefix=/usr \
+                --mandir=/usr/share/man \
+                --with-pid-dir=/var/run \
+                --sysconfdir=/etc/bacula \
+                --infodir=/usr/share/info \
+                --with-subsys-dir=/var/lock/subsys \
+                --with-working-dir=/var/bacula \
+                --with-scriptdir=/etc/bacula \
+                --with-dir-user=root \
+                --with-dir-group=bacula \
+                --with-sd-user=root \
+                --with-sd-group=bacula \
+                --with-fd-user=root \
+                --with-fd-group=bacula \
+                --host=${CHOST} ${myconf} || die "bad ./configure"
+
+        emake || die "compile problem"
+
+        # for the rescue package regardless of use static
+        cd ${S}/src/filed
+        make static-bacula-fd
+        cd ${S}
+
+        # make the docs
+        cd ${S}/doc/latex
+        make
+        cd ${S}
+
+        if use static
+        then
+                cd ${S}/src/console
+                make static-console
+                cd ${S}/src/dird
+                make static-bacula-dir
+                if use gnome
+                then
+                  cd ${S}/src/gnome-console
+                  make static-gnome-console
+                fi
+                if use wxwindows
+                then
+                  cd ${S}/src/wx-console
+                  make static-wx-console
+                fi
+                cd ${S}/src/stored
+                make static-bacula-sd
+        fi
 }
 
 src_install() {
-       make DESTDIR=${D} install || die
-
-       if use static
-       then
-               cd ${S}/src/filed
-               cp static-bacula-fd ${D}/usr/sbin/bacula-fd
-               cd ${S}/src/console
-               cp static-console ${D}/usr/sbin/console
-               cd ${S}/src/dird
-               cp static-bacula-dir ${D}/usr/sbin/bacula-dir
-               if use gnome
-               then
-                       cd ${S}/src/gnome-console
-                       cp static-gnome-console ${D}/usr/sbin/gnome-console
-               fi
-               if use wxwindows
-               then
-                       cd ${S}/src/wx-console
-                       cp static-wx-console ${D}/usr/sbin/wx-console
-               fi
-               cd ${S}/src/stored
-               cp static-bacula-sd ${D}/usr/sbin/bacula-sd
-       fi
-
-       # the menu stuff
-       if use gnome
-       then
-       mkdir -p ${D}/usr/share/pixmaps
-       mkdir -p ${D}/usr/share/applications
-       cp ${S}/scripts/bacula.png ${D}/usr/share/pixmaps/bacula.png
-       cp ${S}/scripts/bacula.desktop.gnome2.xsu ${D}/usr/share/applications/bacula.desktop
-       cp ${S}/src/tray-monitor/generic.xpm ${D}/usr/share/pixmaps/bacula-tray-monitor.xpm
-       cp ${S}/scripts/bacula-tray-monitor.desktop \
-               ${D}/usr/share/applications/bacula-tray-monitor.desktop
-       chmod 755 ${D}/usr/sbin/bacula-tray-monitor
-       chmod 644 ${D}/etc/bacula/tray-monitor.conf
-       fi
-
-       # the database update scripts
-       mkdir -p ${D}/etc/bacula/updatedb
-       cp ${S}/updatedb/* ${D}/etc/bacula/updatedb/
-       chmod 754 ${D}/etc/bacula/updatedb/*
-
-       # the cdrom rescue package
-       mkdir -p ${D}/etc/bacula/rescue/cdrom
-       cp -R ${S}/rescue/linux/cdrom/* ${D}/etc/bacula/rescue/cdrom/
-       mkdir ${D}/etc/bacula/rescue/cdrom/bin
-       cp ${S}/src/filed/static-bacula-fd ${D}/etc/bacula/rescue/cdrom/bin/bacula-fd
-       chmod 754 ${D}/etc/bacula/rescue/cdrom/bin/bacula-fd
-
-       # documentation
-       for a in ${S}/{Changelog,README,ReleaseNotes,kernstodo,LICENSE,doc/bacula.pdf}
-       do
-               dodoc $a
-       done
-
-       dohtml -r ${S}/doc/html-manual doc/home-page
-       chown -R root:root ${D}/usr/share/doc/${PF}
-       chmod -R 644 ${D}/usr/share/doc/${PF}/*
-       
-       # clean up permissions left broken by install
-       chmod o-r ${D}/etc/bacula/query.sql
-
-       # remove the working dir so we can add it postinst with group
-       rmdir ${D}/var/bacula
-
-       # this is now in the source package processed by configure
-       exeinto /etc/init.d
-       newexe ${S}/platforms/gentoo/bacula-init bacula
+        make DESTDIR=${D} install || die
+
+        if use static
+        then
+                cd ${S}/src/filed
+                cp static-bacula-fd ${D}/usr/sbin/bacula-fd
+                cd ${S}/src/console
+                cp static-console ${D}/usr/sbin/console
+                cd ${S}/src/dird
+                cp static-bacula-dir ${D}/usr/sbin/bacula-dir
+                if use gnome
+                then
+                        cd ${S}/src/gnome-console
+                        cp static-gnome-console ${D}/usr/sbin/gnome-console
+                fi
+                if use wxwindows
+                then
+                        cd ${S}/src/wx-console
+                        cp static-wx-console ${D}/usr/sbin/wx-console
+                fi
+                cd ${S}/src/stored
+                cp static-bacula-sd ${D}/usr/sbin/bacula-sd
+        fi
+
+        # the menu stuff
+        if use gnome
+        then
+        mkdir -p ${D}/usr/share/pixmaps
+        mkdir -p ${D}/usr/share/applications
+        cp ${S}/scripts/bacula.png ${D}/usr/share/pixmaps/bacula.png
+        cp ${S}/scripts/bacula.desktop.gnome2.xsu ${D}/usr/share/applications/bacula.desktop
+        cp ${S}/src/tray-monitor/generic.xpm ${D}/usr/share/pixmaps/bacula-tray-monitor.xpm
+        cp ${S}/scripts/bacula-tray-monitor.desktop \
+                ${D}/usr/share/applications/bacula-tray-monitor.desktop
+        chmod 755 ${D}/usr/sbin/bacula-tray-monitor
+        chmod 644 ${D}/etc/bacula/tray-monitor.conf
+        fi
+
+        if ! use bacula-clientonly
+        then
+                # the database update scripts
+                mkdir -p ${D}/etc/bacula/updatedb
+                cp ${S}/updatedb/* ${D}/etc/bacula/updatedb/
+                chmod 754 ${D}/etc/bacula/updatedb/*
+
+                # the logrotate configuration
+                mkdir -p ${D}/etc/logrotate.d
+                cp ${S}/scripts/logrotate ${D}/etc/logrotate.d/bacula
+                chmod 644 ${D}/etc/logrotate.d/bacula
+
+                # the logwatch scripts
+                mkdir -p ${D}/etc/log.d/conf/logfiles
+                mkdir -p ${D}/etc/log.d/conf/services
+                mkdir -p ${D}/etc/log.d/scripts/services
+                cp ${S}/scripts/logwatch/bacula ${D}/etc/log.d/scripts/services/bacula
+                cp ${S}/scripts/logwatch/logfile.bacula.conf ${D}/etc/log.d/conf/logfiles/bacula.conf
+                cp ${S}/scripts/logwatch/services.bacula.conf ${D}/etc/log.d/conf/services/bacula.conf
+                chmod 755 ${D}/etc/log.d/scripts/services/bacula
+                chmod 644 ${D}/etc/log.d/conf/logfiles/bacula.conf
+                chmod 644 ${D}/etc/log.d/conf/services/bacula.conf
+
+        fi
+
+        # the cdrom rescue package
+        mkdir -p ${D}/etc/bacula/rescue/cdrom
+        cp -R ${S}/rescue/linux/cdrom/* ${D}/etc/bacula/rescue/cdrom/
+        mkdir ${D}/etc/bacula/rescue/cdrom/bin
+        cp ${S}/src/filed/static-bacula-fd ${D}/etc/bacula/rescue/cdrom/bin/bacula-fd
+        chmod 754 ${D}/etc/bacula/rescue/cdrom/bin/bacula-fd
+
+        # documentation
+        for a in ${S}/{ChangeLog,README,ReleaseNotes,kernstodo,LICENSE,doc/latex/bacula.pdf}
+        do
+                dodoc $a
+        done
+
+        dohtml -r ${S}/doc/latex/bacula
+        
+        # clean up permissions left broken by install
+        chmod o-r ${D}/etc/bacula/query.sql
+
+        # remove the working dir so we can add it postinst with group
+        rmdir ${D}/var/bacula
+
+        # init scripts
+        exeinto /etc/init.d
+        if use bacula-clientonly
+        then
+                newexe ${S}/platforms/gentoo/bacula-fd bacula-fd
+        else
+                if use bacula-split
+                then
+                        newexe ${S}/platforms/gentoo/bacula-fd bacula-fd
+                        newexe ${S}/platforms/gentoo/bacula-sd bacula-sd
+                        newexe ${S}/platforms/gentoo/bacula-dir bacula-dir
+                else
+                        newexe ${S}/platforms/gentoo/bacula-init bacula
+                fi
+        fi
 }
 
 pkg_postinst() {
-       # create the daemon group
-       HAVE_BACULA=`cat /etc/group | grep bacula 2>/dev/null`
-       if [ -z $HAVE_BACULA ]; then
-       enewgroup bacula
-       einfo
-       einfo "The group bacula has been created. Any users you add to"
-       einfo "this group have access to files created by the daemons."
-       fi
-
-       # the working directory
-       install -m0750 -o root -g bacula -d ${ROOT}/var/bacula
-
-       # link installed bacula-fd.conf into rescue directory
-       ln -s /etc/bacula/rescue/cdrom/bacula-fd.conf /etc/bacula/bacula-fd.conf
-
-       einfo
-       einfo "The CDRom rescue disk package has been installed into the"
-       einfo "/etc/bacula/rescue/cdrom/ directory. Please examine the manual"
-       einfo "for information on creating a rescue CD."
-       einfo
-
-       einfo
-       einfo "Please note either/or nature of database USE flags for"
-       einfo "Bacula.  If mysql is set, it will be used, else postgres"
-       einfo "else finally SQLite.  If you wish to have multiple DBs on"
-       einfo "one system, you may wish to unset auxillary DBs for this"
-       einfo "build."
-       einfo
-
-       if use mysql
-       then
-       # test for an existing database
-       # 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`
-               if [ -z "$DB_VER" ]; then
-               einfo "This appears to be a new install and you plan to use mysql"
-               einfo "for your catalog database. You should now create it by doing"
-               einfo "these commands:"
-               einfo " sh /etc/bacula/grant_mysql_privileges"
-               einfo " sh /etc/bacula/create_mysql_database"
-               einfo " sh /etc/bacula/make_mysql_tables"
-               elif [ "$DB_VER" -lt "8" ]; then
-               elinfo "This release requires an upgrade to your bacula database"
-               einfo "as the database format has changed.  Please read the"
-               einfo "manual chapter for how to upgrade your database!!!"
-               einfo
-               einfo "Backup your database with the command:"
-               einfo " mysqldump -f --opt bacula | bzip2 > /var/bacula/bacula_backup.sql.bz"
-               einfo
-               einfo "Then update your database using the scripts found in"
-               einfo "/etc/bacula/updatedb/ from your current version $DB_VER to"
-               einfo "version 8. Note that scripts must be run in order from your"
-               einfo "version to the current version."
-               fi
-       fi
-
-       if use postgres
-       then
-       # test for an existing database
-       # note: this ASSUMES no password has been set for bacula database
-       DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
-               if [ -z "$DB_VER" ]; then
-               einfo "This appears to be a new install and you plan to use postgresql"
-               einfo "for your catalog database. You should now create it by doing"
-               einfo "these commands:"
-               einfo " sh /etc/bacula/create_postgresql_database"
-               einfo " sh /etc/bacula/make_postgresql_tables"
-               einfo " sh /etc/bacula/grant_postgresql_privileges"
-               elif [ "$DB_VER" -lt "8" ]; then
-               elinfo "This release requires an upgrade to your bacula database"
-               einfo "as the database format has changed.  Please read the"
-               einfo "manual chapter for how to upgrade your database!!!"
-               einfo
-               einfo "Backup your database with the command:"
-               einfo " pg_dump bacula | bzip2 > /var/bacula/bacula_backup.sql.bz2"
-               einfo
-               einfo "Then update your database using the scripts found in"
-               einfo "/etc/bacula/updatedb/ from your current version $DB_VER to"
-               einfo "version 8. Note that scripts must be run in order from your"
-               einfo "version to the current version."
-               fi
-       fi
-
-       if use sqlite
-       then
-       # test for an existing database
-       # note: this ASSUMES no password has been set for bacula database
-       DB_VER=`echo "select * from Version;" | sqlite 2>/dev/null /var/bacula/bacula.db | tail -n 1`
-               if [ -z "$DB_VER" ]; then
-               einfo "This appears to be a new install and you plan to use sqlite"
-               einfo "for your catalog database. You should now create it by doing"
-               einfo "these commands:"
-               einfo " sh /etc/bacula/grant_sqlite_privileges"
-               einfo " sh /etc/bacula/create_sqlite_database"
-               einfo " sh /etc/bacula/make_sqlite_tables"
-               elif [ "$DB_VER" -lt "8" ]; then
-               elinfo "This release requires an upgrade to your bacula database"
-               einfo "as the database format has changed.  Please read the"
-               einfo "manual chapter for how to upgrade your database!!!"
-               einfo
-               einfo "Backup your database with the command:"
-               einfo " echo .dump | sqlite /var/bacula/bacula.db | bzip2 > \\"
-               einfo "   /var/bacula/bacula_backup.sql.bz2"
-               einfo
-               einfo "Then update your database using the scripts found in"
-               einfo "/etc/bacula/updatedb/ from your current version $DB_VER to"
-               einfo "version 8. Note that scripts must be run in order from your"
-               einfo "version to the current version."
-               fi
-       fi
-
-       einfo
-       einfo "Review your configuration files in /etc/bacula and"
-       einfo "start the daemons:"
-       einfo " /etc/init.d/bacula start"
-       einfo
-       einfo "You may also wish to:"
-       einfo " rc-update add bacula default"
-       einfo
+        # create the daemon group
+        HAVE_BACULA=`cat /etc/group | grep bacula 2>/dev/null`
+        if [ -z $HAVE_BACULA ]; then
+        enewgroup bacula
+        einfo
+        einfo "The group bacula has been created. Any users you add to"
+        einfo "this group have access to files created by the daemons."
+        fi
+
+        # the working directory
+        install -m0750 -o root -g bacula -d ${ROOT}/var/bacula
+
+        # link installed bacula-fd.conf into rescue directory
+        #ln -s /etc/bacula/bacula-fd.conf /etc/bacula/rescue/cdrom/bacula-fd.conf
+        # no longer necessary after 1.36.2
+
+        einfo
+        einfo "The CDRom rescue disk package has been installed into the"
+        einfo "/etc/bacula/rescue/cdrom/ directory. Please examine the manual"
+        einfo "for information on creating a rescue CD. CDR device detection"
+        einfo "during build has been disabled to prevent sandbox violations."
+        einfo "You need to examine /etc/bacula/rescue/cdrom/Makefile and adjust"
+        einfo "the device information for your CD recorder."
+        einfo
+
+        if ! use bacula-clientonly; then
+        einfo
+        einfo "Please note either/or nature of database USE flags for"
+        einfo "Bacula.  If mysql is set, it will be used, else postgres"
+        einfo "else finally SQLite.  If you wish to have multiple DBs on"
+        einfo "one system, you may wish to unset auxillary DBs for this"
+        einfo "build."
+        einfo
+
+        if use mysql
+        then
+        # test for an existing database
+        # 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`
+                if [ -z "$DB_VER" ]; then
+                einfo "This appears to be a new install and you plan to use mysql"
+                einfo "for your catalog database. You should now create it by doing"
+                einfo "these commands:"
+                einfo " sh /etc/bacula/grant_mysql_privileges"
+                einfo " sh /etc/bacula/create_mysql_database"
+                einfo " sh /etc/bacula/make_mysql_tables"
+                elif [ "$DB_VER" -lt "8" ]; then
+                elinfo "This release requires an upgrade to your bacula database"
+                einfo "as the database format has changed.  Please read the"
+                einfo "manual chapter for how to upgrade your database!!!"
+                einfo
+                einfo "Backup your database with the command:"
+                einfo " mysqldump -f --opt bacula | bzip2 > /var/bacula/bacula_backup.sql.bz"
+                einfo
+                einfo "Then update your database using the scripts found in"
+                einfo "/etc/bacula/updatedb/ from your current version $DB_VER to"
+                einfo "version 8. Note that scripts must be run in order from your"
+                einfo "version to the current version."
+                fi
+        fi
+
+        if use postgres
+        then
+        # test for an existing database
+        # note: this ASSUMES no password has been set for bacula database
+        DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
+                if [ -z "$DB_VER" ]; then
+                einfo "This appears to be a new install and you plan to use postgresql"
+                einfo "for your catalog database. You should now create it by doing"
+                einfo "these commands:"
+                einfo " sh /etc/bacula/create_postgresql_database"
+                einfo " sh /etc/bacula/make_postgresql_tables"
+                einfo " sh /etc/bacula/grant_postgresql_privileges"
+                elif [ "$DB_VER" -lt "8" ]; then
+                elinfo "This release requires an upgrade to your bacula database"
+                einfo "as the database format has changed.  Please read the"
+                einfo "manual chapter for how to upgrade your database!!!"
+                einfo
+                einfo "Backup your database with the command:"
+                einfo " pg_dump bacula | bzip2 > /var/bacula/bacula_backup.sql.bz2"
+                einfo
+                einfo "Then update your database using the scripts found in"
+                einfo "/etc/bacula/updatedb/ from your current version $DB_VER to"
+                einfo "version 8. Note that scripts must be run in order from your"
+                einfo "version to the current version."
+                fi
+        fi
+
+        if use sqlite
+        then
+        # test for an existing database
+        # note: this ASSUMES no password has been set for bacula database
+        DB_VER=`echo "select * from Version;" | sqlite 2>/dev/null /var/bacula/bacula.db | tail -n 1`
+                if [ -z "$DB_VER" ]; then
+                einfo "This appears to be a new install and you plan to use sqlite"
+                einfo "for your catalog database. You should now create it by doing"
+                einfo "these commands:"
+                einfo " sh /etc/bacula/grant_sqlite_privileges"
+                einfo " sh /etc/bacula/create_sqlite_database"
+                einfo " sh /etc/bacula/make_sqlite_tables"
+                elif [ "$DB_VER" -lt "8" ]; then
+                elinfo "This release requires an upgrade to your bacula database"
+                einfo "as the database format has changed.  Please read the"
+                einfo "manual chapter for how to upgrade your database!!!"
+                einfo
+                einfo "Backup your database with the command:"
+                einfo " echo .dump | sqlite /var/bacula/bacula.db | bzip2 > \\"
+                einfo "   /var/bacula/bacula_backup.sql.bz2"
+                einfo
+                einfo "Then update your database using the scripts found in"
+                einfo "/etc/bacula/updatedb/ from your current version $DB_VER to"
+                einfo "version 8. Note that scripts must be run in order from your"
+                einfo "version to the current version."
+                fi
+        fi
+        fi
+
+        einfo
+        einfo "Review your configuration files in /etc/bacula and"
+        einfo "start the daemons:"
+        if use bacula-clientonly; then
+                einfo " /etc/init.d/bacula-fd start"
+        else
+                if use bacula-split; then
+                einfo " /etc/init.d/bacula-sd start"
+                einfo " /etc/init.d/bacula-dir start"
+                einfo " /etc/init.d/bacula-fd start"
+                einfo " or /etc/bacula/bacula will start all three."
+                else
+                einfo " /etc/init.d/bacula start"
+                fi
+        fi
+        einfo
+        einfo "You may also wish to:"
+        if use bacula-clientonly; then
+                einfo " rc-update add bacula-fd default"
+        else
+                if use bacula-split; then
+                        einfo " rc-update add bacula-sd default"
+                        einfo " rc-update add bacula-dir default"
+                        einfo " rc-update add bacula-fd default"
+                else
+                        einfo " rc-update add bacula default"
+                fi
+        fi
+        einfo
 }