2 # Copyright (C) 2000-2006 Kern Sibbald
4 # Platform Build Configuration
6 # basic defines for every build
7 %define _version @VERSION@
9 %define depkgs_version 25Jun06
10 %define _rescuever 1.8.6
11 %define docs_version @VERSION@
13 # any patches for this release
14 # be sure to check the setup section for patch macros
17 #--------------------------------------------------------------------------
18 # it should not be necessary to change anything below here for a release
19 # except for patch macros in the setup section
20 #--------------------------------------------------------------------------
22 # third party packagers
23 %define _packager D. Scott Barninger <barninger@fairfieldcomputers.com>
24 %{?contrib_packager:%define _packager %{contrib_packager}}
26 Summary: Bacula - The Network Backup Solution
30 Group: System Environment/Daemons
32 Source0: http://www.prdownloads.sourceforge.net/bacula/%{name}-%{version}.tar.gz
33 Source1: http://www.prdownloads.sourceforge.net/bacula/depkgs-%{depkgs_version}.tar.gz
34 Source2: Release_Notes-%{version}-%{release}.tar.gz
35 Source3: http://www.prdownloads.sourceforge.net/bacula/%{name}-docs-%{docs_version}.tar.gz
36 Source4: http://www.prdownloads.sourceforge.net/bacula/%{name}-rescue-%{_rescuever}.tar.gz
37 BuildRoot: %{_tmppath}/%{name}-root
38 URL: http://www.bacula.org/
39 Vendor: The Bacula Team
40 Packager: %{_packager}
42 # define the basic package description
43 %define blurb Bacula - It comes by night and sucks the vital essence from your computers.
44 %define blurb2 Bacula is a set of computer programs that permit you (or the system
45 %define blurb3 administrator) to manage backup, recovery, and verification of computer
46 %define blurb4 data across a network of computers of different kinds. In technical terms,
47 %define blurb5 it is a network client/server based backup program. Bacula is relatively
48 %define blurb6 easy to use and efficient, while offering many advanced storage management
49 %define blurb7 features that make it easy to find and recover lost or damaged files.
50 %define blurb8 Bacula source code has been released under the GPL version 2 license.
53 %define sqlite_bindir /usr/lib/bacula/sqlite
54 %define working_dir /var/bacula
55 %define _docsrc ../%{name}-docs-%{docs_version}
56 %define _rescuesrc ../%{name}-rescue-%{_rescuever}
57 %define depkgs ../depkgs
58 %define _mandir /usr/share/man
60 # NOTE these defines are used in some rather complex useradd and groupadd
61 # commands. If you change them examine the post scripts for consequences.
62 %define director_daemon_user bacula
63 %define storage_daemon_user bacula
64 %define file_daemon_user root
65 %define daemon_group bacula
66 # group that has write access to tape devices, usually disk on Linux
67 %define storage_daemon_group disk
68 %define user_file /etc/passwd
69 %define group_file /etc/group
72 %define useradd /usr/sbin/useradd
73 %define groupadd /usr/sbin/groupadd
74 %define usermod /usr/sbin/usermod
76 # platform defines - set one below or define the build_xxx on the command line
79 %{?build_rh7:%define rh7 1}
81 %{?build_rh8:%define rh8 1}
83 %{?build_rh9:%define rh9 1}
86 %{?build_fc1:%define fc1 1}
88 %{?build_fc3:%define fc3 1}
90 %{?build_fc4:%define fc4 1}
92 %{?build_fc5:%define fc5 1}
93 # Whitebox Enterprise build
95 %{?build_wb3:%define wb3 1}
96 # RedHat Enterprise builds
98 %{?build_rhel3:%define rhel3 1}
99 %{?build_rhel3:%define wb3 1}
101 %{?build_rhel4:%define rhel4 1}
102 %{?build_rhel4:%define fc3 1}
105 %{?build_centos3:%define centos3 1}
106 %{?build_centos3:%define wb3 1}
108 %{?build_centos4:%define centos4 1}
109 %{?build_centos4:%define fc3 1}
112 %{?build_su9:%define su9 1}
114 %{?build_su10:%define su10 1}
117 %{?build_mdk:%define mdk 1}
119 %{?build_mdv:%define mdv 1}
120 %{?build_mdv:%define mdk 1}
123 %define client_only 0
124 %{?build_client_only:%define client_only 1}
126 # test for a platform definition
127 %if ! %{rh7} && ! %{rh8} && ! %{rh9} && ! %{fc1} && ! %{fc3} && ! %{fc4} && ! %{fc5} && ! %{wb3} && ! %{su9} && ! %{su10} && ! %{mdk}
128 %{error: You must specify a platform. Please examine the spec file.}
133 # set for database support desired or define the build_xxx on the command line
135 %{?build_mysql:%define mysql 1}
136 # if using mysql 4.x define this and mysql above
137 # currently: Mandrake 10.1, SuSE 9.x & 10.0, RHEL4 and Fedora Core 4
139 %{?build_mysql4:%define mysql4 1}
140 %{?build_mysql4:%define mysql 1}
141 # if using mysql 5.x define this and mysql above
142 # currently: SuSE 10.1 and Fedora Core 5
144 %{?build_mysql5:%define mysql5 1}
145 %{?build_mysql5:%define mysql 1}
147 %{?build_sqlite:%define sqlite 1}
149 %{?build_postgresql:%define postgresql 1}
151 # test for a database definition
152 %if ! %{mysql} && ! %{sqlite} && ! %{postgresql} && ! %{client_only}
153 %{error: You must specify database support. Please examine the spec file.}
158 %define db_backend mysql
161 %define db_backend sqlite
164 %define db_backend postgresql
169 %{?build_x86_64:%define x86_64 1}
171 # check what distribution we are
172 %if %{rh7} || %{rh8} || %{rh9} || %{rhel3} || %{rhel4}
173 %define _dist %(grep Red /etc/redhat-release)
175 %if %{fc1} || %{fc4} || %{fc5}
176 %define _dist %(grep Fedora /etc/redhat-release)
178 %if %{centos4} || %{centos3}
179 %define _dist %(grep CentOS /etc/redhat-release)
181 %if %{fc3} && ! %{rhel4} && ! %{centos4}
182 %define _dist %(grep Fedora /etc/redhat-release)
184 %if %{wb3} && ! %{rhel3} && ! %{centos3}
185 %define _dist %(grep White /etc/whitebox-release)
187 %if %{su9} || %{su10}
188 %define _dist %(grep -i SuSE /etc/SuSE-release)
191 %define _dist %(grep Mand /etc/mandrake-release)
193 Distribution: %{_dist}
195 # Should we build gconsole, possible only if gtk= >= 2.4 available.
196 # leaving all the BuildRequires and Requires in place below for now.
199 %if %{rh7} || %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{su9}
202 %if %{mdk} && ! %{mdv}
206 # specifically disallow gconsole if desired
207 %{?nobuild_gconsole:%define gconsole 0}
209 # Should we build wxconsole, only wxWidgets >=2.6 is supported
210 # currently only SuSE 10 and FC4/FC5
212 %{?build_wxconsole:%define wxconsole 1}
214 # should we turn on python support
216 %{?build_python:%define python 1}
218 # Mandriva somehow forces the manpage file extension to bz2 rather than gz
220 %define manpage_ext bz2
222 %define manpage_ext gz
225 # for client only build
236 %{expand: %%define gccver %(rpm -q gcc | cut -d - -f 2)}
237 %{expand: %%define gccrel %(rpm -q gcc | cut -d - -f 3)}
239 BuildRequires: gcc, gcc-c++, make, autoconf
240 BuildRequires: atk-devel, ncurses-devel, perl
241 BuildRequires: libstdc++-devel = %{gccver}-%{gccrel}, libxml2-devel, zlib-devel
242 BuildRequires: openssl-devel
244 BuildRequires: python, python-devel
245 %{expand: %%define pyver %(python -c 'import sys;print(sys.version[0:3])')}
248 BuildRequires: pkgconfig, pango-devel
251 BuildRequires: libtermcap-devel
252 BuildRequires: glibc-devel >= 2.2
255 BuildRequires: termcap
256 BuildRequires: glibc-devel >= 2.3
258 %if %{su9} && %{gconsole}
259 BuildRequires: libgnome >= 2.0
260 BuildRequires: gtk2-devel >= 2.0
261 BuildRequires: libgnomeui-devel >= 2.0
262 BuildRequires: ORBit2-devel
263 BuildRequires: libart_lgpl-devel >= 2.0
264 BuildRequires: libbonobo-devel >= 2.0
265 BuildRequires: libbonoboui-devel >= 2.0
266 BuildRequires: bonobo-activation-devel
267 BuildRequires: gconf2-devel
268 BuildRequires: linc-devel
269 BuildRequires: freetype2-devel
272 BuildRequires: termcap
273 BuildRequires: glibc-devel >= 2.3
275 %if %{su10} && %{gconsole}
276 BuildRequires: libgnome >= 2.12
277 BuildRequires: gtk2-devel >= 2.8
278 BuildRequires: libgnomeui-devel >= 2.12
279 BuildRequires: ORBit2-devel
280 BuildRequires: libart_lgpl-devel >= 2.3
281 BuildRequires: libbonobo-devel >= 2.10
282 BuildRequires: libbonoboui-devel >= 2.10
283 BuildRequires: bonobo-activation-devel
284 BuildRequires: gconf2-devel
285 BuildRequires: freetype2-devel
286 BuildRequires: cairo-devel
287 BuildRequires: fontconfig-devel >= 2.3
288 BuildRequires: gnome-vfs2-devel >= 2.12
289 BuildRequires: libpng-devel
292 BuildRequires: libtermcap-devel
293 BuildRequires: libstdc++-static-devel
294 BuildRequires: glibc-static-devel
295 BuildRequires: glibc-devel >= 2.3
297 %if %{mdk} && !%{mdv} && %{gconsole}
298 BuildRequires: gtk2-devel >= 2.0
299 BuildRequires: libgnomeui2-devel >= 2.0
300 BuildRequires: libORBit2-devel
301 BuildRequires: libart_lgpl-devel >= 2.0
302 BuildRequires: libbonobo2_0-devel
303 BuildRequires: libbonoboui2_0-devel
304 BuildRequires: libbonobo-activation-devel
305 BuildRequires: libGConf2-devel
306 BuildRequires: freetype2-devel
308 %if %{mdv} && %{gconsole}
309 BuildRequires: gtk2-devel >= 2.8
310 BuildRequires: libgnomeui2-devel >= 2.10
311 BuildRequires: libORBit2-devel
312 BuildRequires: libart_lgpl-devel >= 2.3
313 BuildRequires: libbonobo2_0-devel
314 BuildRequires: libbonoboui2_0-devel
315 BuildRequires: libbonobo-activation-devel
316 BuildRequires: libGConf2-devel
317 BuildRequires: freetype2-devel
320 BuildRequires: libtermcap-devel
321 BuildRequires: glibc-devel >= 2.3
323 %if %{fc3} && %{gconsole}
324 BuildRequires: gtk2-devel >= 2.4
325 BuildRequires: libgnomeui-devel >= 2.8
326 BuildRequires: ORBit2-devel
327 BuildRequires: libart_lgpl-devel >= 2.3
328 BuildRequires: libbonobo-devel >= 2.8
329 BuildRequires: libbonoboui-devel >= 2.8
330 BuildRequires: bonobo-activation-devel
331 BuildRequires: GConf2-devel
332 BuildRequires: freetype-devel
335 BuildRequires: libtermcap-devel
336 BuildRequires: glibc-devel >= 2.3
338 %if %{fc4} && %{gconsole}
339 BuildRequires: gtk2-devel >= 2.6
340 BuildRequires: libgnomeui-devel >= 2.10
341 BuildRequires: ORBit2-devel
342 BuildRequires: libart_lgpl-devel >= 2.3
343 BuildRequires: libbonobo-devel >= 2.8
344 BuildRequires: libbonoboui-devel >= 2.8
345 BuildRequires: bonobo-activation-devel
346 BuildRequires: GConf2-devel
347 BuildRequires: freetype-devel
350 BuildRequires: libtermcap-devel
351 BuildRequires: glibc-devel >= 2.4
353 %if %{fc5} && %{gconsole}
354 BuildRequires: gtk2-devel >= 2.8
355 BuildRequires: libgnomeui-devel >= 2.14
356 BuildRequires: ORBit2-devel
357 BuildRequires: libart_lgpl-devel >= 2.3
358 BuildRequires: libbonobo-devel >= 2.14
359 BuildRequires: libbonoboui-devel >= 2.14
360 BuildRequires: GConf2-devel
361 BuildRequires: freetype-devel
363 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5}
364 BuildRequires: libtermcap-devel
365 BuildRequires: glibc-devel >= 2.3
367 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5} && %{gconsole}
368 BuildRequires: gtk2-devel >= 2.0
369 BuildRequires: libgnomeui-devel >= 2.0
370 BuildRequires: ORBit2-devel
371 BuildRequires: libart_lgpl-devel >= 2.0
372 BuildRequires: libbonobo-devel >= 2.0
373 BuildRequires: libbonoboui-devel >= 2.0
374 BuildRequires: bonobo-activation-devel
375 BuildRequires: GConf2-devel
376 BuildRequires: linc-devel
377 BuildRequires: freetype-devel
380 %if %{mysql} && ! %{mysql4} && ! %{mysql5}
381 BuildRequires: mysql-devel >= 3.23
384 %if %{mysql} && %{mysql4}
385 BuildRequires: mysql-devel >= 4.0
388 %if %{mysql} && %{mysql5}
389 BuildRequires: mysql-devel >= 5.0
392 %if %{postgresql} && %{wb3}
393 BuildRequires: rh-postgresql-devel >= 7
396 %if %{postgresql} && ! %{wb3}
397 BuildRequires: postgresql-devel >= 7
401 BuildRequires: wxGTK-devel >= 2.6
425 Summary: Bacula - The Network Backup Solution
426 Group: System Environment/Daemons
427 Provides: bacula-dir, bacula-sd, bacula-fd, bacula-server
428 Conflicts: bacula-client
429 Obsoletes: bacula-rescue
431 %if %{su9} || %{su10}
435 Requires: ncurses, libstdc++, zlib, openssl, mtx
438 Requires: glibc >= 2.2
441 %if %{su9} || %{su10}
442 Requires: glibc >= 2.3
445 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{fc5}
446 Requires: glibc >= 2.3
450 Requires: glibc >= 2.4
454 %if %{mysql} && ! %{su9} && ! %{mdk} && ! %{mysql4} && ! %{mysql5}
455 Requires: mysql >= 3.23
456 Requires: mysql-server >= 3.23
458 %if %{mysql} && ! %{su9} && ! %{su10} && ! %{mdk} && %{mysql4}
459 Requires: mysql >= 4.0
460 Requires: mysql-server >= 4.0
462 %if %{mysql} && ! %{su9} && ! %{su10} && ! %{mdk} && %{mysql5}
463 Requires: mysql >= 5.0
464 Requires: mysql-server >= 5.0
467 %if %{mysql} && %{su9} && ! %{mysql4}
468 Requires: mysql >= 3.23
469 Requires: mysql-client >= 3.23
471 %if %{mysql} && %{su9} && %{mysql4}
472 Requires: mysql >= 4.0
473 Requires: mysql-client >= 4.0
475 %if %{mysql} && %{su10} && %{mysql4}
476 Requires: mysql >= 4.0
477 Requires: mysql-client >= 4.0
479 %if %{mysql} && %{su10} && %{mysql5}
480 Requires: mysql >= 5.0
481 Requires: mysql-client >= 5.0
484 %if %{mysql} && %{mdk} && ! %{mysql4}
485 Requires: mysql >= 3.23
486 Requires: mysql-client >= 3.23
488 %if %{mysql} && %{mdk} && %{mysql4}
489 Requires: mysql >= 4.0
490 Requires: mysql-client >= 4.0
493 %if %{postgresql} && %{wb3}
494 Requires: rh-postgresql >= 7
495 Requires: rh-postgresql-server >= 7
497 %if %{postgresql} && ! %{wb3}
498 Requires: postgresql >= 7
499 Requires: postgresql-server >= 7
509 %description postgresql
513 Requires: python >= %{pyver}
527 This build requires MySQL to be installed separately as the catalog database.
530 This build requires PostgreSQL to be installed separately as the catalog database.
533 This build incorporates sqlite as the catalog database, statically compiled.
536 This build includes python scripting support.
541 Summary: Bacula - The Network Backup Solution
542 Group: System Environment/Daemons
546 This is Bacula's version of mtx tape utilities for Linux distributions that
547 do not provide their own mtx package
551 Summary: Bacula - The Network Backup Solution
552 Group: System Environment/Daemons
554 Conflicts: bacula-mysql
555 Conflicts: bacula-sqlite
556 Conflicts: bacula-postgresql
557 Obsoletes: bacula-rescue
559 %if %{su9} || %{su10}
563 Requires: libstdc++, zlib, openssl
566 Requires: glibc >= 2.2
569 %if %{su9} || %{su10}
570 Requires: glibc >= 2.3
573 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{fc5}
574 Requires: glibc >= 2.3
578 Requires: glibc >= 2.4
583 Requires: python >= %{pyver}
597 This is the File daemon (Client) only package. It includes the command line
600 This build includes python scripting support.
606 Summary: Bacula - The Network Backup Solution
607 Group: System Environment/Daemons
609 %description updatedb
620 This package installs scripts for updating older versions of the bacula
626 Summary: Bacula - The Network Backup Solution
627 Group: System Environment/Daemons
628 Requires: atk, libstdc++, zlib, pango, libxml2, bacula-fd, openssl
631 %if %{gconsole} && %{su9}
632 Requires: gtk2 >= 2.0
633 Requires: libgnome >= 2.0
634 Requires: libgnomeui >= 2.0
635 Requires: glibc >= 2.3
637 Requires: libart_lgpl >= 2.0
638 Requires: libbonobo >= 2.0
639 Requires: libbonoboui >= 2.0
640 Requires: bonobo-activation
645 %if %{gconsole} && %{su10}
646 Requires: gtk2 >= 2.8
647 Requires: libgnome >= 2.12
648 Requires: libgnomeui >= 2.12
649 Requires: glibc >= 2.3
651 Requires: libart_lgpl >= 2.3
652 Requires: libbonobo >= 2.10
653 Requires: libbonoboui >= 2.10
654 Requires: bonobo-activation
658 Requires: fontconfig >= 2.3
659 Requires: gnome-vfs2 >= 2.12
662 %if %{gconsole} && %{mdk} && !%{mdv}
663 Requires: gtk2 >= 2.0
664 Requires: libgnomeui2
665 Requires: glibc >= 2.3
667 Requires: libart_lgpl >= 2.0
668 Requires: libbonobo >= 2.0
669 Requires: libbonoboui >= 2.0
673 %if %{gconsole} && %{mdv}
674 Requires: gtk2 >= 2.8
675 Requires: libgnomeui2
676 Requires: glibc >= 2.3
678 Requires: libart_lgpl >= 2.3
679 Requires: libbonobo >= 2.10
680 Requires: libbonoboui >= 2.10
684 %if %{gconsole} && %{fc3}
685 Requires: gtk2 >= 2.4
686 Requires: libgnomeui >= 2.8
687 Requires: glibc >= 2.3
689 Requires: libart_lgpl >= 2.3
690 Requires: libbonobo >= 2.8
691 Requires: libbonoboui >= 2.8
692 Requires: bonobo-activation
696 %if %{gconsole} && %{fc4}
697 Requires: gtk2 >= 2.6
698 Requires: libgnomeui >= 2.10
699 Requires: glibc >= 2.3
701 Requires: libart_lgpl >= 2.3
702 Requires: libbonobo >= 2.8
703 Requires: libbonoboui >= 2.8
704 Requires: bonobo-activation
708 %if %{gconsole} && %{fc5}
709 Requires: gtk2 >= 2.8
710 Requires: libgnomeui >= 2.14
711 Requires: glibc >= 2.4
713 Requires: libart_lgpl >= 2.3
714 Requires: libbonobo >= 2.14
715 Requires: libbonoboui >= 2.14
719 %if %{gconsole} && ! %{su9} && ! %{su10} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5}
720 Requires: gtk2 >= 2.0
721 Requires: libgnomeui >= 2.0
722 Requires: glibc >= 2.3
724 Requires: libart_lgpl >= 2.0
725 Requires: libbonobo >= 2.0
726 Requires: libbonoboui >= 2.0
727 Requires: bonobo-activation
732 %if %{gconsole} && %{su9}
735 %if %{gconsole} && %{su10}
738 %if %{gconsole} && ! %{su9} && ! %{su10}
743 %description gconsole
754 This is the Gnome Console package. It is an add-on to the client or
760 Summary: Bacula - The Network Backup Solution
761 Group: System Environment/Daemons
762 Requires: wxGTK >= 2.6, libstdc++, openssl
765 %if %{wxconsole} && %{su10}
766 Requires: gtk2 >= 2.8
769 %if %{wxconsole} && %{fc3}
770 Requires: gtk2 >= 2.4
773 %if %{wxconsole} && %{fc4}
774 Requires: gtk2 >= 2.6
777 %if %{wxconsole} && %{fc5}
778 Requires: gtk2 >= 2.8
782 %description wxconsole
793 This is the WXWindows Console package. It is an add-on to the client or
807 %if %{su9} || %{su10}
808 export LDFLAGS="${LDFLAGS} -L/usr/lib/termcap"
821 # patches for the bundled sqlite scripts
823 # patch the make_sqlite_tables script for installation bindir
824 patch src/cats/make_sqlite_tables.in src/cats/make_sqlite_tables.in.patch
826 # patch the create_sqlite_database script for installation bindir
827 patch src/cats/create_sqlite_database.in src/cats/create_sqlite_database.in.patch
829 # patch the make_catalog_backup script for installation bindir
830 patch src/cats/make_catalog_backup.in src/cats/make_catalog_backup.in.patch
832 # patch the update_sqlite_tables script for installation bindir
833 patch src/cats/update_sqlite_tables.in src/cats/update_sqlite_tables.in.patch
835 # patch the bacula-dir init script to remove sqlite service
836 %if %{sqlite} && %{su9}
837 patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
839 %if %{sqlite} && %{su10}
840 patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
843 # 64 bit lib location hacks
844 # as of 1.39.18 it should not be necessary to enable x86_64 as configure is
845 # reported to be fixed to properly detect lib locations.
847 export LDFLAGS="${LDFLAGS} -L/usr/lib64"
849 %if %{mysql} && %{x86_64}
850 export LDFLAGS="${LDFLAGS} -L/usr/lib64/mysql"
852 %if %{python} && %{x86_64}
853 export LDFLAGS="${LDFLAGS} -L/usr/lib64/python%{pyver}"
858 --sbindir=/usr/sbin \
859 --sysconfdir=/etc/bacula \
860 --with-scriptdir=/etc/bacula \
861 --enable-smartalloc \
862 --enable-client-only \
872 --sbindir=/usr/sbin \
873 --sysconfdir=/etc/bacula \
874 --with-scriptdir=/etc/bacula \
875 --enable-smartalloc \
879 %if %{gconsole} && ! %{rh8}
880 --enable-tray-monitor \
886 --with-sqlite=${cwd}/%{depkgs}/sqlite \
892 --enable-wx-console \
898 --enable-client-only \
900 --mandir=%{_mandir} \
901 --with-working-dir=%{working_dir} \
902 --with-pid-dir=/var/run \
903 --with-subsys-dir=/var/lock/subsys \
904 --with-dir-user=%{director_daemon_user} \
905 --with-dir-group=%{daemon_group} \
906 --with-sd-user=%{storage_daemon_user} \
907 --with-sd-group=%{storage_daemon_group} \
908 --with-fd-user=%{file_daemon_user} \
909 --with-fd-group=%{daemon_group} \
910 --with-dir-password="XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX" \
911 --with-fd-password="XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX" \
912 --with-sd-password="XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX" \
913 --with-mon-dir-password="XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX" \
914 --with-mon-fd-password="XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX" \
915 --with-mon-sd-password="XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX" \
923 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
924 mkdir -p $RPM_BUILD_ROOT/etc/init.d
925 mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d
926 mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/logfiles
927 mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/services
928 mkdir -p $RPM_BUILD_ROOT/etc/log.d/scripts/services
929 mkdir -p $RPM_BUILD_ROOT/etc/bacula/updatedb
931 %if %{gconsole} || %{wxconsole}
932 mkdir -p $RPM_BUILD_ROOT/usr/share/applications
933 mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps
936 %if %{gconsole} || %{wxconsole}
937 %define usermode_iftrick 1
939 %define usermode_iftrick 0
942 %if %{usermode_iftrick} && ! %{su9} && ! %{su10}
943 mkdir -p $RPM_BUILD_ROOT/etc/pam.d
944 mkdir -p $RPM_BUILD_ROOT/etc/security/console.apps
945 mkdir -p $RPM_BUILD_ROOT/usr/bin
949 mkdir -p $RPM_BUILD_ROOT%{sqlite_bindir}
953 prefix=$RPM_BUILD_ROOT/usr \
954 sbindir=$RPM_BUILD_ROOT/usr/sbin \
955 sysconfdir=$RPM_BUILD_ROOT/etc/bacula \
956 scriptdir=$RPM_BUILD_ROOT/etc/bacula \
957 working_dir=$RPM_BUILD_ROOT%{working_dir} \
958 mandir=$RPM_BUILD_ROOT%{_mandir} \
964 prefix=$RPM_BUILD_ROOT/usr \
965 sbindir=$RPM_BUILD_ROOT/usr/sbin \
966 sysconfdir=$RPM_BUILD_ROOT/etc/bacula \
967 working_dir=$RPM_BUILD_ROOT%{working_dir} \
968 mandir=$RPM_BUILD_ROOT%{_mandir} \
973 # make install in manpages installs _everything_ shotgun style
974 # so now delete what we will not be packaging
976 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-wxconsole.1.gz
979 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-console-gnome.1.gz
980 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-tray-monitor.1.gz
983 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bsmtp.1.gz
984 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bacula-dir.8.gz
985 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bacula-sd.8.gz
986 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bcopy.8.gz
987 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bextract.8.gz
988 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bls.8.gz
989 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bscan.8.gz
990 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/btape.8.gz
991 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/dbcheck.8.gz
994 # fixme - make installs the mysql scripts for sqlite build
996 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
997 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
998 rm -f $RPM_BUILD_ROOT/etc/bacula/grant_mysql_privileges
1001 # fixme - make installs the mysql scripts for postgresql build
1003 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
1004 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
1007 # fixme - make installs gconsole script for build without gconsole
1009 rm -f $RPM_BUILD_ROOT/etc/bacula/gconsole
1012 rm -f $RPM_BUILD_ROOT/usr/sbin/static-bacula-fd
1014 # install the init scripts
1015 %if %{su9} || %{su10}
1016 cp -p platforms/suse/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1017 cp -p platforms/suse/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1018 cp -p platforms/suse/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1021 cp -p platforms/mandrake/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1022 cp -p platforms/mandrake/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1023 cp -p platforms/mandrake/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1025 %if ! %{su9} && ! %{su10} && ! %{mdk}
1026 cp -p platforms/redhat/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1027 cp -p platforms/redhat/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1028 cp -p platforms/redhat/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1030 chmod 0754 $RPM_BUILD_ROOT/etc/init.d/*
1032 rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1033 rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1036 # install the menu stuff
1037 %if %{gconsole} && %{su9}
1038 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1039 cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1040 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1041 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1043 %if %{gconsole} && %{su10}
1044 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1045 cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1046 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1047 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1049 %if %{wxconsole} && %{su10}
1050 cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
1051 cp -p scripts/wxconsole.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
1053 %if %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{fc3} || %{fc4} || %{fc5} || %{mdk}
1058 %if %{gconsole} && %{iftrick}
1059 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1060 cp -p scripts/bacula.desktop.gnome2.consolehelper $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1061 cp -p scripts/gnome-console.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/gnome-console
1062 cp -p scripts/gnome-console.pamd $RPM_BUILD_ROOT/etc/pam.d/gnome-console
1063 ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/gnome-console
1065 %if %{gconsole} && ! %{rh8}
1066 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1067 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1069 %if %{wxconsole} && %{iftrick}
1070 cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
1071 cp -p scripts/wxconsole.desktop.consolehelper $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
1072 cp -p scripts/wxconsole.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/wxconsole
1073 cp -p scripts/wxconsole.pamd $RPM_BUILD_ROOT/etc/pam.d/wxconsole
1074 ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/wxconsole
1079 cp -p %{depkgs}/sqlite/sqlite $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite
1080 cp -p %{depkgs}/sqlite/sqlite.h $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite.h
1081 cp -p %{depkgs}/sqlite/libsqlite.a $RPM_BUILD_ROOT%{sqlite_bindir}/libsqlite.a
1084 # install the logrotate file
1085 cp -p scripts/logrotate $RPM_BUILD_ROOT/etc/logrotate.d/bacula
1087 # install the updatedb scripts
1088 cp -p updatedb/* $RPM_BUILD_ROOT/etc/bacula/updatedb/
1090 # install the logwatch scripts
1091 %if ! %{client_only}
1092 cp -p scripts/logwatch/bacula $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
1093 cp -p scripts/logwatch/logfile.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
1094 cp -p scripts/logwatch/services.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
1095 chmod 755 $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
1096 chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
1097 chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
1100 # install the rescue files
1101 mkdir $RPM_BUILD_ROOT/etc/bacula/rescue
1102 cp -p %{_rescuesrc}/Makefile* $RPM_BUILD_ROOT/etc/bacula/rescue/
1103 cp -p %{_rescuesrc}/README $RPM_BUILD_ROOT/etc/bacula/rescue/
1104 cp -p %{_rescuesrc}/configure $RPM_BUILD_ROOT/etc/bacula/rescue/
1105 cp -p %{_rescuesrc}/version.h $RPM_BUILD_ROOT/etc/bacula/rescue/
1106 cp -pr %{_rescuesrc}/linux $RPM_BUILD_ROOT/etc/bacula/rescue/
1107 cp -pr %{_rescuesrc}/autoconf $RPM_BUILD_ROOT/etc/bacula/rescue/
1108 touch $RPM_BUILD_ROOT/etc/bacula/rescue/linux/cdrom/rpm_release
1109 cp -p src/filed/static-bacula-fd $RPM_BUILD_ROOT/etc/bacula/rescue/linux/cdrom/bacula/bin/bacula-fd
1110 rm -f src/filed/static-bacula-fd
1113 mv $RPM_BUILD_ROOT/usr/sbin/wx-console $RPM_BUILD_ROOT/usr/sbin/wxconsole
1114 mv $RPM_BUILD_ROOT/etc/bacula/wx-console.conf $RPM_BUILD_ROOT/etc/bacula/wxconsole.conf
1117 # now clean up permissions that are left broken by the install
1118 %if ! %{client_only}
1119 chmod o-r $RPM_BUILD_ROOT/etc/bacula/query.sql
1121 chmod o-rwx $RPM_BUILD_ROOT/var/bacula
1122 %if %{gconsole} && ! %{rh8}
1123 chmod 755 $RPM_BUILD_ROOT/usr/sbin/bacula-tray-monitor
1124 chmod 644 $RPM_BUILD_ROOT/etc/bacula/tray-monitor.conf
1127 # fix me - building enable-client-only installs files not included in bacula-client package
1129 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula
1130 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula-ctl-dir
1131 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula-ctl-sd
1132 rm -f $RPM_BUILD_ROOT/etc/bacula/disk-changer
1133 rm -f $RPM_BUILD_ROOT/etc/bacula/dvd-handler
1134 rm -f $RPM_BUILD_ROOT/etc/bacula/mtx-changer
1135 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
1136 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
1137 rm -rf $RPM_BUILD_ROOT/etc/bacula/updatedb
1141 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
1144 # MySQL specific files
1146 %defattr(-, root, root)
1147 %attr(-, root, %{daemon_group}) /etc/bacula/create_mysql_database
1148 %attr(-, root, %{daemon_group}) /etc/bacula/drop_mysql_database
1149 %attr(-, root, %{daemon_group}) /etc/bacula/make_mysql_tables
1150 %attr(-, root, %{daemon_group}) /etc/bacula/drop_mysql_tables
1151 %attr(-, root, %{daemon_group}) /etc/bacula/update_mysql_tables
1152 %attr(-, root, %{daemon_group}) /etc/bacula/grant_mysql_privileges
1153 %attr(-, root, %{daemon_group}) /etc/bacula/startmysql
1154 %attr(-, root, %{daemon_group}) /etc/bacula/stopmysql
1159 %defattr(-,root,root)
1160 %attr(-, root, %{daemon_group}) /etc/bacula/create_sqlite_database
1161 %attr(-, root, %{daemon_group}) /etc/bacula/drop_sqlite_database
1162 %attr(-, root, %{daemon_group}) /etc/bacula/grant_sqlite_privileges
1163 %attr(-, root, %{daemon_group}) /etc/bacula/make_sqlite_tables
1164 %attr(-, root, %{daemon_group}) /etc/bacula/drop_sqlite_tables
1165 %attr(-, root, %{daemon_group}) /etc/bacula/update_sqlite_tables
1166 %{sqlite_bindir}/libsqlite.a
1167 %{sqlite_bindir}/sqlite.h
1168 %{sqlite_bindir}/sqlite
1173 %defattr(-,root,root)
1174 %attr(-, root, %{daemon_group}) /etc/bacula/create_postgresql_database
1175 %attr(-, root, %{daemon_group}) /etc/bacula/drop_postgresql_database
1176 %attr(-, root, %{daemon_group}) /etc/bacula/make_postgresql_tables
1177 %attr(-, root, %{daemon_group}) /etc/bacula/drop_postgresql_tables
1178 %attr(-, root, %{daemon_group}) /etc/bacula/update_postgresql_tables
1179 %attr(-, root, %{daemon_group}) /etc/bacula/grant_postgresql_privileges
1182 # The rest is DB backend independent
1183 %if ! %{client_only}
1184 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1185 %attr(-, root, %{daemon_group}) /etc/bacula/bacula
1186 %attr(-, root, %{daemon_group}) /etc/bacula/bconsole
1187 %attr(-, root, %{daemon_group}) /etc/bacula/create_bacula_database
1188 %attr(-, root, %{daemon_group}) /etc/bacula/drop_bacula_database
1189 %attr(-, root, %{daemon_group}) /etc/bacula/grant_bacula_privileges
1190 %attr(-, root, %{daemon_group}) /etc/bacula/make_bacula_tables
1191 %attr(-, root, %{daemon_group}) /etc/bacula/drop_bacula_tables
1192 %attr(-, root, %{daemon_group}) /etc/bacula/update_bacula_tables
1193 %attr(-, root, %{daemon_group}) /etc/bacula/make_catalog_backup
1194 %attr(-, root, %{daemon_group}) /etc/bacula/delete_catalog_backup
1195 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.dbx
1196 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.gdb
1197 %attr(-, root, %{daemon_group}) /etc/bacula/rescue
1198 %attr(-, root, %{daemon_group}) /etc/bacula/disk-changer
1199 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-dir
1200 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-fd
1201 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-sd
1202 %attr(-, root, %{daemon_group}) /etc/init.d/bacula-dir
1203 %attr(-, root, %{daemon_group}) /etc/init.d/bacula-fd
1204 %attr(-, root, %{storage_daemon_group}) /etc/bacula/dvd-handler
1205 %attr(-, root, %{storage_daemon_group}) /etc/init.d/bacula-sd
1206 %attr(-, root, %{storage_daemon_group}) /etc/bacula/mtx-changer
1208 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo
1209 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
1211 /etc/logrotate.d/bacula
1212 /etc/log.d/scripts/services/bacula
1213 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-dir.conf
1214 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-fd.conf
1215 %attr(-, root, %{storage_daemon_group}) %config(noreplace) /etc/bacula/bacula-sd.conf
1216 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bconsole.conf
1217 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/logfiles/bacula.conf
1218 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/services/bacula.conf
1219 %attr(-, root, %{daemon_group}) /etc/bacula/query.sql
1220 %attr(-, root, %{daemon_group}) %dir %{working_dir}
1222 /usr/sbin/bacula-dir
1230 /usr/sbin/btraceback
1236 %{_mandir}/man8/bacula-fd.8.%{manpage_ext}
1237 %{_mandir}/man8/bacula-dir.8.%{manpage_ext}
1238 %{_mandir}/man8/bacula-sd.8.%{manpage_ext}
1239 %{_mandir}/man8/bacula.8.%{manpage_ext}
1240 %{_mandir}/man8/bconsole.8.%{manpage_ext}
1241 %{_mandir}/man8/bcopy.8.%{manpage_ext}
1242 %{_mandir}/man8/bextract.8.%{manpage_ext}
1243 %{_mandir}/man8/bls.8.%{manpage_ext}
1244 %{_mandir}/man8/bscan.8.%{manpage_ext}
1245 %{_mandir}/man8/btape.8.%{manpage_ext}
1246 %{_mandir}/man8/btraceback.8.%{manpage_ext}
1247 %{_mandir}/man8/dbcheck.8.%{manpage_ext}
1248 %{_mandir}/man1/bsmtp.1.%{manpage_ext}
1253 # test for bacula database older than version 9
1254 # note: this ASSUMES no password has been set for bacula database
1255 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
1260 # test for bacula database older than version 9
1261 if [ -s %{working_dir}/bacula.db ] && [ -s %{sqlite_bindir}/sqlite ];then
1262 DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
1267 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
1270 %if ! %{client_only}
1271 if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "9" ]; then
1272 echo "This bacula upgrade will update a bacula database from version 9 to 10."
1273 echo "You appear to be running database version $DB_VER. You must first update"
1274 echo "your database to version 9 and then install this upgrade. The alternative"
1275 echo "is to use /etc/bacula/drop_%{db_backend}_tables to delete all your your current"
1276 echo "catalog information, then do the upgrade. Information on updating a"
1277 echo "database older than version 9 can be found in the release notes."
1286 %if ! %{client_only}
1287 # check for and copy /etc/bacula/console.conf to bconsole.conf
1288 if [ -s /etc/bacula/console.conf ];then
1289 cp -p /etc/bacula/console.conf /etc/bacula/bconsole.conf
1292 # create the daemon users and groups
1293 # first create the groups if they don't exist
1294 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1295 if [ -z "$HAVE_BACULA" ]; then
1296 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1297 echo "The group %{daemon_group} has been added to %{group_file}."
1298 echo "See the manual chapter \"Running Bacula\" for details."
1300 HAVE_BACULA=`grep %{storage_daemon_group} %{group_file} 2>/dev/null`
1301 if [ -z "$HAVE_BACULA" ]; then
1302 %{groupadd} -r %{storage_daemon_group} > /dev/null 2>&1
1303 echo "The group %{storage_daemon_group} has been added to %{group_file}."
1304 echo "See the manual chapter \"Running Bacula\" for details."
1306 # now create the users if they do not exist
1307 # we do not use the -g option allowing the primary group to be set to system default
1308 # this will be a unique group on redhat type systems or the group users on some systems
1309 HAVE_BACULA=`grep %{storage_daemon_user} %{user_file} 2>/dev/null`
1310 if [ -z "$HAVE_BACULA" ]; then
1311 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{storage_daemon_group} -M -s /sbin/nologin %{storage_daemon_user} > /dev/null 2>&1
1312 echo "The user %{storage_daemon_user} has been added to %{user_file}."
1313 echo "See the manual chapter \"Running Bacula\" for details."
1315 HAVE_BACULA=`grep %{director_daemon_user} %{user_file} 2>/dev/null`
1316 if [ -z "$HAVE_BACULA" ]; then
1317 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{director_daemon_user} > /dev/null 2>&1
1318 echo "The user %{director_daemon_user} has been added to %{user_file}."
1319 echo "See the manual chapter \"Running Bacula\" for details."
1321 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
1322 if [ -z "$HAVE_BACULA" ]; then
1323 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
1324 echo "The user %{file_daemon_user} has been added to %{user_file}."
1325 echo "See the manual chapter \"Running Bacula\" for details."
1327 # now we add the supplementary groups, this is ok to call even if the users already exist
1328 # we only do this if the user is NOT root
1329 IS_ROOT=%{director_daemon_user}
1330 if [ "$IS_ROOT" != "root" ]; then
1331 %{usermod} -G %{daemon_group} %{director_daemon_user}
1333 IS_ROOT=%{storage_daemon_user}
1334 if [ "$IS_ROOT" != "root" ]; then
1335 %{usermod} -G %{daemon_group},%{storage_daemon_group} %{storage_daemon_user}
1337 IS_ROOT=%{file_daemon_user}
1338 if [ "$IS_ROOT" != "root" ]; then
1339 %{usermod} -G %{daemon_group} %{file_daemon_user}
1353 %if ! %{client_only}
1355 if [ "$1" -ge 1 ] ; then
1356 /sbin/chkconfig --add bacula-dir
1357 /sbin/chkconfig --add bacula-fd
1358 /sbin/chkconfig --add bacula-sd
1363 # test for an existing database
1364 # note: this ASSUMES no password has been set for bacula database
1365 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
1367 # grant privileges and create tables if they do not exist
1368 if [ -z "$DB_VER" ]; then
1369 echo "Hmm, doesn't look like you have an existing database."
1370 echo "Granting privileges for MySQL user bacula..."
1371 /etc/bacula/grant_mysql_privileges
1372 echo "Creating MySQL bacula database..."
1373 /etc/bacula/create_mysql_database
1374 echo "Creating bacula tables..."
1375 /etc/bacula/make_mysql_tables
1377 # check to see if we need to upgrade a 1.38 or lower database
1378 elif [ "$DB_VER" -lt "10" ]; then
1379 echo "This release requires an upgrade to your bacula database."
1380 echo "Backing up your current database..."
1381 mysqldump -f --opt bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1382 echo "Upgrading bacula database ..."
1383 /etc/bacula/update_mysql_tables
1384 echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1390 # test for an existing database
1391 if [ -s %{working_dir}/bacula.db ]; then
1392 DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
1393 # check to see if we need to upgrade a 1.38 or lower database
1394 if [ "$DB_VER" -lt "10" ] && [ "$DB_VER" -ge "9" ]; then
1395 echo "This release requires an upgrade to your bacula database."
1396 echo "Backing up your current database..."
1397 echo ".dump" | %{sqlite_bindir}/sqlite %{working_dir}/bacula.db | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1398 echo "Upgrading bacula database ..."
1399 /etc/bacula/update_sqlite_tables
1400 echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1403 # create the database and tables
1404 echo "Hmm, doesn't look like you have an existing database."
1405 echo "Creating SQLite database..."
1406 /etc/bacula/create_sqlite_database
1407 echo "Creating the SQLite tables..."
1408 /etc/bacula/make_sqlite_tables
1413 # test for an existing database
1414 # note: this ASSUMES no password has been set for bacula database
1415 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
1417 # grant privileges and create tables if they do not exist
1418 if [ -z "$DB_VER" ]; then
1419 echo "Hmm, doesn't look like you have an existing database."
1420 echo "Creating PostgreSQL bacula database..."
1421 /etc/bacula/create_postgresql_database
1422 echo "Creating bacula tables..."
1423 /etc/bacula/make_postgresql_tables
1424 echo "Granting privileges for PostgreSQL user bacula..."
1425 /etc/bacula/grant_postgresql_privileges
1427 # check to see if we need to upgrade a 1.38 or lower database
1428 elif [ "$DB_VER" -lt "10" ]; then
1429 echo "This release requires an upgrade to your bacula database."
1430 echo "Backing up your current database..."
1431 pg_dump bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1432 echo "Upgrading bacula database ..."
1433 /etc/bacula/update_postgresql_tables
1434 echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1439 %if ! %{client_only}
1440 # generate passwords if needed
1441 if [ -d /etc/bacula ]; then
1443 for file in *.conf; do
1444 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
1445 need_password=`grep $string $file 2>/dev/null`
1446 if [ -n "$need_password" ]; then
1447 pass=`openssl rand -base64 33`
1448 sed "s-$string-$pass-g" $file > $file.new
1449 cp -f $file.new $file; rm -f $file.new
1466 %if ! %{client_only}
1469 /sbin/chkconfig --del bacula-dir
1470 /sbin/chkconfig --del bacula-fd
1471 /sbin/chkconfig --del bacula-sd
1476 %if ! %{client_only}
1478 %defattr(-,root,root)
1479 %attr(-, root, %{storage_daemon_group}) /usr/sbin/loaderinfo
1480 %attr(-, root, %{storage_daemon_group}) /usr/sbin/mtx
1481 %attr(-, root, %{storage_daemon_group}) /usr/sbin/scsitape
1482 %attr(-, root, %{storage_daemon_group}) /usr/sbin/tapeinfo
1483 %{_mandir}/man1/loaderinfo.1.%{manpage_ext}
1484 %{_mandir}/man1/mtx.1.%{manpage_ext}
1485 %{_mandir}/man1/scsitape.1.%{manpage_ext}
1486 %{_mandir}/man1/tapeinfo.1.%{manpage_ext}
1491 %defattr(-,root,root)
1492 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1493 %attr(-, root, %{daemon_group}) /etc/bacula/bconsole
1494 /etc/bacula/bacula-ctl-fd
1495 /etc/init.d/bacula-fd
1496 %attr(-, root, %{daemon_group}) /etc/bacula/rescue
1498 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo
1499 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
1501 /etc/logrotate.d/bacula
1503 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-fd.conf
1504 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bconsole.conf
1505 %attr(-, root, %{daemon_group}) %dir %{working_dir}
1508 /usr/sbin/btraceback
1509 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.gdb
1510 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.dbx
1512 %{_mandir}/man8/bacula-fd.8.%{manpage_ext}
1513 %{_mandir}/man8/bacula.8.%{manpage_ext}
1514 %{_mandir}/man8/bconsole.8.%{manpage_ext}
1515 %{_mandir}/man8/btraceback.8.%{manpage_ext}
1519 # create the daemon group and user
1520 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1521 if [ -z "$HAVE_BACULA" ]; then
1522 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1523 echo "The group %{daemon_group} has been added to %{group_file}."
1524 echo "See the manual chapter \"Running Bacula\" for details."
1526 # we do not use the -g option allowing the primary group to be set to system default
1527 # this will be a unique group on redhat type systems or the group users on some systems
1528 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
1529 if [ -z "$HAVE_BACULA" ]; then
1530 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
1531 echo "The user %{file_daemon_user} has been added to %{user_file}."
1532 echo "See the manual chapter \"Running Bacula\" for details."
1534 # now we add the supplementary group, this is ok to call even if the user already exists
1535 # we only do this if the user is NOT root
1536 IS_ROOT=%{file_daemon_user}
1537 if [ "$IS_ROOT" != "root" ]; then
1538 %{usermod} -G %{daemon_group} %{file_daemon_user}
1543 if [ "$1" -ge 1 ] ; then
1544 /sbin/chkconfig --add bacula-fd
1547 # generate passwords if needed
1548 if [ -d /etc/bacula ]; then
1550 for file in *.conf; do
1551 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
1552 need_password=`grep $string $file 2>/dev/null`
1553 if [ -n "$need_password" ]; then
1554 pass=`openssl rand -base64 33`
1555 sed "s-$string-$pass-g" $file > $file.new
1556 cp -f $file.new $file; rm -f $file.new
1565 /sbin/chkconfig --del bacula-fd
1568 %if ! %{client_only}
1570 %defattr(-,root,%{daemon_group})
1571 /etc/bacula/updatedb/*
1574 # create the daemon group
1575 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1576 if [ -z "$HAVE_BACULA" ]; then
1577 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1578 echo "The group %{daemon_group} has been added to %{group_file}."
1579 echo "See the manual chapter \"Running Bacula\" for details."
1583 echo "The database update scripts were installed to /etc/bacula/updatedb"
1588 %defattr(-,root,root)
1589 /usr/sbin/gnome-console
1590 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1591 %attr(-, root, %{daemon_group}) /etc/bacula/gconsole
1592 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/gnome-console.conf
1593 /usr/share/pixmaps/bacula.png
1594 /usr/share/applications/bacula.desktop
1595 %{_mandir}/man1/bacula-console-gnome.1.%{manpage_ext}
1598 %if %{gconsole} && ! %{rh8}
1599 /usr/sbin/bacula-tray-monitor
1600 %config(noreplace) /etc/bacula/tray-monitor.conf
1601 /usr/share/pixmaps/bacula-tray-monitor.xpm
1602 /usr/share/applications/bacula-tray-monitor.desktop
1603 %{_mandir}/man1/bacula-tray-monitor.1.%{manpage_ext}
1606 %if %{gconsole} && ! %{su9} && ! %{su10}
1607 # add the console helper files
1608 %config(noreplace,missingok) /etc/pam.d/gnome-console
1609 %config(noreplace,missingok) /etc/security/console.apps/gnome-console
1610 /usr/bin/gnome-console
1615 # create the daemon group
1616 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1617 if [ -z "$HAVE_BACULA" ]; then
1618 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1619 echo "The group %{daemon_group} has been added to %{group_file}."
1620 echo "See the manual chapter \"Running Bacula\" for details."
1624 # generate passwords if needed
1625 if [ -d /etc/bacula ]; then
1627 for file in *.conf; do
1628 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
1629 need_password=`grep $string $file 2>/dev/null`
1630 if [ -n "$need_password" ]; then
1631 pass=`openssl rand -base64 33`
1632 sed "s-$string-$pass-g" $file > $file.new
1633 cp -f $file.new $file; rm -f $file.new
1642 %defattr(-,root,root)
1644 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1645 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/wxconsole.conf
1646 /usr/share/pixmaps/wxwin16x16.xpm
1647 /usr/share/applications/wxconsole.desktop
1648 %{_mandir}/man1/bacula-wxconsole.1.%{manpage_ext}
1651 %if %{wxconsole} && ! %{su9} && ! %{su10}
1652 # add the console helper files
1653 %config(noreplace,missingok) /etc/pam.d/wxconsole
1654 %config(noreplace,missingok) /etc/security/console.apps/wxconsole
1660 # create the daemon group
1661 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1662 if [ -z "$HAVE_BACULA" ]; then
1663 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1664 echo "The group %{daemon_group} has been added to %{group_file}."
1665 echo "See the manual chapter \"Running Bacula\" for details."
1669 # generate passwords if needed
1670 if [ -d /etc/bacula ]; then
1672 for file in *.conf; do
1673 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
1674 need_password=`grep $string $file 2>/dev/null`
1675 if [ -n "$need_password" ]; then
1676 pass=`openssl rand -base64 33`
1677 sed "s-$string-$pass-g" $file > $file.new
1678 cp -f $file.new $file; rm -f $file.new
1686 * Sat Sep 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1687 - 1.39.22 remove separate cd and make of manpages the main Makefile does it now
1688 * Sun Aug 06 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1689 - fix manpages file extension for mdk
1690 * Sat Aug 05 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1691 - bug 648 re-enable and update sqlite patches
1695 - lock out gconsole build for gtk+ < 2.4
1696 * Mon Jul 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1697 - move pango-devel BuildRequires into gconsole only build
1698 * Sat Jul 15 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1699 - add provides and conflicts for standard suse packages
1700 - add third party packager tag support
1701 - add build_client_only tag
1702 - remove bsmtp from client package
1703 - add bacula-ctl-fd to client package
1704 * Thu Jul 13 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1705 - fix directory creation when wxconsole and not gconsole
1706 * Tue Jul 04 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1707 - add check to buildrequires to make sure libstdc++ version matches gcc
1708 * Mon Jul 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1709 - add python build support
1710 - fix LDFLAGS declarations
1711 * Sun Jul 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1712 - add requires for standard compiler toolchain
1713 - move version and release tags up
1715 - add docs_version tag
1716 * Sat Jul 01 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1717 - update rescuever to 1.8.6
1718 * Sun Jun 25 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1719 - update depkgs to 25Jun06
1720 - add mysql5 build tag
1721 * Mon Jun 12 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1722 - 1.38.10 bump rescue version
1723 * Sun Jun 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1724 - fix usermod statements
1726 * Thu Apr 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1727 - add -g param back to useradd statements Bug 605
1728 * Mon Apr 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1729 - redundant code cleanup
1730 * Sun Apr 16 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1731 - add wxconsole package
1732 * Fri Apr 14 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1734 - dependency update for Mandriva
1735 * Sun Apr 08 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1737 - remove -n option from useradd scripts
1738 * Sun Apr 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1740 - fix problem specifying more than one primary group for user bacula
1741 - add build switch to not build gconsole regardless of platform
1742 * Sun Jan 29 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1743 - add centos3 build tag
1744 - fix link error of static-fd on Mandrake with --disable-nls
1745 * Fri Jan 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1746 - add fc4 dependencies
1747 * Mon Jan 23 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1748 - add SuSE 10.0 build
1749 - remove specific permission in attrib macros
1750 * Sat Jan 21 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1752 - fix usermode required on suse, suse doesn't have usermode (xsu instead)
1753 - refix compat for _dist on SLES9 which seems to have been removed
1754 - added note regarding Aleksandar's use of specific permissions in attrib macros
1755 - need to review and add specific fc4 build currently using fc3 Requires
1756 * Wed Dec 14 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1758 - Reorganize files and pre/post sections to remove repetitions
1759 - Always build separate mtx package
1760 - Fix file ownerships for /etc/bacula and Bacula's working dir
1761 * Wed Nov 23 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1762 - Disable GNOME on RH7
1763 * Fri Nov 18 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1764 - Red Hat and look alikes have mtx RPM, do not build/package our version
1765 * Sun Nov 13 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1766 - minor edit to _dist for SLES9 compatibility
1767 * Sat Nov 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1769 - kern changed location of pdf files and html manual in docs package
1770 * Sun Oct 30 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1772 - add docs (from prebuilt tarball) and rescue packages back in
1773 - remove dvd-freespace and dvd-writepart files, add dvd-handler
1774 - remove 3 of 4 sqlite script patches as not needed
1775 * Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1777 - remove docs and rescue sections (remove static fd)
1778 - add dvd-freespace and dvd-writepart files
1779 - update depkgs to 22Jun05
1780 - change database update to 8 to 9
1781 * Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1782 - minor cleanups before 1.38 changes
1783 - add popt and popt-devel build dependencies
1784 - add tetex and tetex-dvips dependencies for doc build
1785 - replace deprecated Copyright tag with License
1786 * Sat May 07 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1787 - move sqlite installation bindir to /usr/lib/bacula/sqlite and remove
1788 - conflict with sqlite packages. remove readline dependency.
1789 * Sun Apr 17 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1790 - release 1.36.3 update docs
1791 * Tue Apr 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1792 - add centos4 build tag
1793 - add x86_64 build tag
1794 * Sun Apr 03 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1795 - add rhel4 build tag
1796 - clean up for mysql4 which is now mdk-10.1, suse-9.2 and rhel4
1797 * Sun Mar 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1798 - add rhel3 build tag
1799 * Tue Mar 01 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1800 - fix tray-monitor.conf for noreplace
1801 * Mon Feb 28 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1802 - fix distribution check for Fedora and Whitebox
1803 * Sun Feb 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1804 - add logwatch script
1806 * Sat Jan 15 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1807 - add build for Fedora Core 3 (linc now included in ORDit2)
1808 - add mysql4 define for Mandrake 10.1
1809 * Fri Jan 14 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1810 - fix {group_file} variable in post scripts
1811 * Thu Dec 30 2004 D. Scott Barninger <barninger@fairfieldcomputers.com>
1812 - add distribution checking and custom Distribution tag
1813 * Thu Dec 09 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1814 - ASSIGNMENT OF COPYRIGHT
1815 - FOR VALUE RECEIVED, D. Scott Barninger hereby sells, transfers and
1816 - assigns unto Kern Sibbald, his successors, assigns and personal representatives,
1817 - all right, title and interest in and to the copyright in this software RPM
1818 - spec file. D. Scott Barninger warrants good title to said copyright, that it is
1819 - free of all liens, encumbrances or any known claims against said copyright.
1820 * Sat Dec 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1822 - thanks to Daniel Widyono
1823 - update description for rescue package to describe cdrom creation
1824 * Thu Nov 18 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1825 - update depkgs to 29Oct04
1826 * Fri Nov 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1827 - add cdrom rescue to bacula-rescue package
1828 * Sun Oct 31 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1829 - misc fixes from 1.36.0 suse feedback
1830 - fix situation where sqlite database exists but sqlite has been removed.
1831 * Fri Oct 22 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1832 - remove tray-monitor from RH8 build
1833 - fix permissions on tray-monitor files
1834 * Wed Oct 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1835 - add Mandrake support and tray-monitor, misc changes for 1.35.8/1.36.0,
1836 - change database update to 7 to 8 upgrade,
1837 - revert depkgs to 08Mar04 as there seems to be a bug in the sqlite
1838 - build in 30Jul04, add freetype dependancy to gnome package.
1839 * Sun Sep 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1840 - add documentation to console for groupadd
1841 * Sat Sep 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1842 - add support for running daemons as root.bacula
1843 - correct for change in location of floppy rescue files in 1.35.2
1844 - removed /etc/bacula/fd script from all packages as it has disappeared from 1.35.2
1845 - updated depgkgs to 30Jul04
1846 * Thu Jun 24 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1847 - really, really fix symlink creation for gconsole
1848 * Thu Jun 17 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1849 - fix symlink creation in gconsole post install
1850 * Sat Jun 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1851 - fixed error in gconsole post script
1852 * Fri Apr 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1853 - add check for gconsole symlink before trying to create it
1854 * Sun Apr 11 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1855 - fix some minor permissions issues on doc files that CVS won't let us fix
1856 * Sun Apr 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1857 - add pkgconfig to BuildRequires
1858 - clean up gnome1/2 menu entries for appropriate packages
1859 * Fri Apr 02 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1860 - tightened up doc distribution
1861 * Tue Mar 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1862 - added usermode (Redhat) and xsu (SuSE) support for gnome-console;
1863 - rpm's horrible bug that prevents nested conditional macros prevents me
1864 - from implementing these 2 separate approaches within the conditionals which
1865 - create the separate server packages.
1866 - the solution adopted is to remove the gnome-console files from the server packages
1867 - so bacula-gconsole is now an add on for both client and server packages.
1868 - this also now allows the server packages to be install on machines without
1869 - an X-server and we can still maintain a single spec file.
1870 - added tests to make sure we have defined platform and database macros.
1871 * Sat Mar 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1872 - corrected mysql prerequisites for suse
1873 * Mon Mar 1 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1874 - replaced all cp commands with cp -p
1875 - removed addition of a+x permissions on gnome-console
1876 - corrected permissions on init scripts
1877 * Sat Feb 28 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1878 - corrected creation of sqlite_bindir in install from !mysql to sqlite
1880 - various cleanup patches from Michael K. Johnson:
1881 - corrected post install routines for nicer chkconfig
1882 - removed chmod changes in post routines and moved to install section
1883 - removed interactive nature of post routine for rescue package
1884 - added description of building rescue disks to the description of rescue package
1885 - added clean of build root to beginning of install
1886 - removed specifying attr in all file lists
1887 * Fri Feb 20 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1888 - added bconsole to client package
1889 - added gconsole package as add-on to client
1890 - removed spurious dependancies on updatedb package (!cut/paste)
1891 * Thu Feb 19 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1892 - added updatedb package
1893 * Thu Feb 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1894 - added postgresql package
1895 * Wed Feb 11 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1896 - corrected the if else logic in the dependancy sections
1897 - changes for 1.34 release
1898 - /etc/bacula/console is now /etc/bacula/bconsole
1899 - /etc/bacula/console.conf is now /etc/bacula/bconsole.conf
1900 - /usr/sbin/btraceback.gdb is now /etc/bacula/btraceback.gdb
1901 - /usr/sbin/smtp is now /usr/sbin/bsmtp
1902 - added new /etc/bacula/drop_mysql_database
1903 - added new /etc/bacula/drop_sqlite_database
1904 - added new /etc/bacula/grant_sqlite_privileges
1905 - added new generic bacula database scripts in /etc/bacula
1906 - added pre-install sections to check for database versions older than 6
1907 - added check for /etc/bacula/console.conf and copy to bconsole.conf
1908 * Sun Feb 08 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1909 - added /etc/bacula/update_sqlite_tables and /etc/bacula/update_mysql_tables for 1.34 release
1910 - added testing for existing databases before executing any of the database creation scripts
1911 - added defines working_dir and sqlite_bindir in place of hard coded paths
1912 * Sat Jan 31 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1913 - added build configuration for SuSE.
1914 - Thanks to Matt Vollmar <matt at panamschool.edu.sv> for his input
1915 * Sat Jan 24 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1916 - added patch for create_sqlite_database to fix the installed bindir
1917 - added execute of create_sqlite_database to post of sqlite package
1918 * Sat Jan 10 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1919 - added virtual package Provides bacula-dir, bacula-sd, bacula-fd
1920 - added bacula-fd as Requires for rescue package
1921 - added build tag for Fedora Core 1
1922 - cleaned up dependancies for all builds
1923 * Thu Jan 1 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1924 - removed rh_version from package names
1925 - added platform build configuration section to beginning of file
1926 * Tue Nov 25 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1927 - removed make_static_bacula script from rescue package install
1928 * Sun Nov 23 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1929 - Added define at top of file for depkgs version
1930 - Added rescue sub-package
1931 - Moved requires statements into proper sub-package locations
1932 * Mon Oct 27 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1933 - Corrected Requires for Gnome 1.4/2.0 builds
1934 * Fri Oct 24 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1935 - Added separate source declaration for depkgs
1936 - added patch for make_catalog_backup script
1937 * Mon May 11 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1938 - Misc changes to mysql/sqlite build and rh7/8 menu differences
1939 - Added rh_version to sub-package names
1940 - Added installed but missing file /etc/bacula/gconsole
1941 - rm'd /etc/bacula/grant_mysql_privileges on sqlite builds
1942 * Thu May 08 2003 Kern Sibbald <kern at sibbald.com>
1943 - Update spec for version 1.31 and combine client
1944 * Sun Mar 30 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>