2 # Copyright (C) 2000-2006 Free Software Foundation Europe e.V.
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 # not necessary after 1.39.26 no longer references sqlite binary
828 #patch src/cats/create_sqlite_database.in src/cats/create_sqlite_database.in.patch
830 # patch the make_catalog_backup script for installation bindir
831 patch src/cats/make_catalog_backup.in src/cats/make_catalog_backup.in.patch
833 # patch the update_sqlite_tables script for installation bindir
834 patch src/cats/update_sqlite_tables.in src/cats/update_sqlite_tables.in.patch
836 # patch the bacula-dir init script to remove sqlite service
837 %if %{sqlite} && %{su9}
838 patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
840 %if %{sqlite} && %{su10}
841 patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
844 # 64 bit lib location hacks
845 # as of 1.39.18 it should not be necessary to enable x86_64 as configure is
846 # reported to be fixed to properly detect lib locations.
848 export LDFLAGS="${LDFLAGS} -L/usr/lib64"
850 %if %{mysql} && %{x86_64}
851 export LDFLAGS="${LDFLAGS} -L/usr/lib64/mysql"
853 %if %{python} && %{x86_64}
854 export LDFLAGS="${LDFLAGS} -L/usr/lib64/python%{pyver}"
859 --sbindir=/usr/sbin \
860 --sysconfdir=/etc/bacula \
861 --with-scriptdir=/etc/bacula \
862 --enable-smartalloc \
863 --enable-client-only \
873 --sbindir=/usr/sbin \
874 --sysconfdir=/etc/bacula \
875 --with-scriptdir=/etc/bacula \
876 --enable-smartalloc \
880 %if %{gconsole} && ! %{rh8}
881 --enable-tray-monitor \
887 --with-sqlite=${cwd}/%{depkgs}/sqlite \
893 --enable-wx-console \
899 --enable-client-only \
901 --mandir=%{_mandir} \
902 --with-working-dir=%{working_dir} \
903 --with-pid-dir=/var/run \
904 --with-subsys-dir=/var/lock/subsys \
905 --with-dir-user=%{director_daemon_user} \
906 --with-dir-group=%{daemon_group} \
907 --with-sd-user=%{storage_daemon_user} \
908 --with-sd-group=%{storage_daemon_group} \
909 --with-fd-user=%{file_daemon_user} \
910 --with-fd-group=%{daemon_group} \
911 --with-dir-password="XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX" \
912 --with-fd-password="XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX" \
913 --with-sd-password="XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX" \
914 --with-mon-dir-password="XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX" \
915 --with-mon-fd-password="XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX" \
916 --with-mon-sd-password="XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX" \
924 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
925 mkdir -p $RPM_BUILD_ROOT/etc/init.d
926 mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d
927 mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/logfiles
928 mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/services
929 mkdir -p $RPM_BUILD_ROOT/etc/log.d/scripts/services
930 mkdir -p $RPM_BUILD_ROOT/etc/bacula/updatedb
932 %if %{gconsole} || %{wxconsole}
933 mkdir -p $RPM_BUILD_ROOT/usr/share/applications
934 mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps
937 %if %{gconsole} || %{wxconsole}
938 %define usermode_iftrick 1
940 %define usermode_iftrick 0
943 %if %{usermode_iftrick} && ! %{su9} && ! %{su10}
944 mkdir -p $RPM_BUILD_ROOT/etc/pam.d
945 mkdir -p $RPM_BUILD_ROOT/etc/security/console.apps
946 mkdir -p $RPM_BUILD_ROOT/usr/bin
950 mkdir -p $RPM_BUILD_ROOT%{sqlite_bindir}
954 prefix=$RPM_BUILD_ROOT/usr \
955 sbindir=$RPM_BUILD_ROOT/usr/sbin \
956 sysconfdir=$RPM_BUILD_ROOT/etc/bacula \
957 scriptdir=$RPM_BUILD_ROOT/etc/bacula \
958 working_dir=$RPM_BUILD_ROOT%{working_dir} \
959 mandir=$RPM_BUILD_ROOT%{_mandir} \
965 prefix=$RPM_BUILD_ROOT/usr \
966 sbindir=$RPM_BUILD_ROOT/usr/sbin \
967 sysconfdir=$RPM_BUILD_ROOT/etc/bacula \
968 working_dir=$RPM_BUILD_ROOT%{working_dir} \
969 mandir=$RPM_BUILD_ROOT%{_mandir} \
974 # make install in manpages installs _everything_ shotgun style
975 # so now delete what we will not be packaging
977 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-wxconsole.1.gz
980 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-console-gnome.1.gz
981 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-tray-monitor.1.gz
984 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bsmtp.1.gz
985 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bacula-dir.8.gz
986 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bacula-sd.8.gz
987 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bcopy.8.gz
988 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bextract.8.gz
989 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bls.8.gz
990 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bscan.8.gz
991 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/btape.8.gz
992 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/dbcheck.8.gz
995 # fixme - make installs the mysql scripts for sqlite build
997 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
998 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
999 rm -f $RPM_BUILD_ROOT/etc/bacula/grant_mysql_privileges
1002 # fixme - make installs the mysql scripts for postgresql build
1004 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
1005 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
1008 # fixme - make installs gconsole script for build without gconsole
1010 rm -f $RPM_BUILD_ROOT/etc/bacula/gconsole
1013 rm -f $RPM_BUILD_ROOT/usr/sbin/static-bacula-fd
1015 # install the init scripts
1016 %if %{su9} || %{su10}
1017 cp -p platforms/suse/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1018 cp -p platforms/suse/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1019 cp -p platforms/suse/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1022 cp -p platforms/mandrake/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1023 cp -p platforms/mandrake/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1024 cp -p platforms/mandrake/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1026 %if ! %{su9} && ! %{su10} && ! %{mdk}
1027 cp -p platforms/redhat/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1028 cp -p platforms/redhat/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1029 cp -p platforms/redhat/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1031 chmod 0754 $RPM_BUILD_ROOT/etc/init.d/*
1033 rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1034 rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1037 # install the menu stuff
1038 %if %{gconsole} && %{su9}
1039 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1040 cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1041 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1042 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1044 %if %{gconsole} && %{su10}
1045 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1046 cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1047 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1048 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1050 %if %{wxconsole} && %{su10}
1051 cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
1052 cp -p scripts/wxconsole.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
1054 %if %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{fc3} || %{fc4} || %{fc5} || %{mdk}
1059 %if %{gconsole} && %{iftrick}
1060 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1061 cp -p scripts/bacula.desktop.gnome2.consolehelper $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1062 cp -p scripts/gnome-console.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/gnome-console
1063 cp -p scripts/gnome-console.pamd $RPM_BUILD_ROOT/etc/pam.d/gnome-console
1064 ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/gnome-console
1066 %if %{gconsole} && ! %{rh8}
1067 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1068 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1070 %if %{wxconsole} && %{iftrick}
1071 cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
1072 cp -p scripts/wxconsole.desktop.consolehelper $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
1073 cp -p scripts/wxconsole.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/wxconsole
1074 cp -p scripts/wxconsole.pamd $RPM_BUILD_ROOT/etc/pam.d/wxconsole
1075 ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/wxconsole
1080 cp -p %{depkgs}/sqlite/sqlite $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite
1081 cp -p %{depkgs}/sqlite/sqlite.h $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite.h
1082 cp -p %{depkgs}/sqlite/libsqlite.a $RPM_BUILD_ROOT%{sqlite_bindir}/libsqlite.a
1085 # install the logrotate file
1086 cp -p scripts/logrotate $RPM_BUILD_ROOT/etc/logrotate.d/bacula
1088 # install the updatedb scripts
1089 cp -p updatedb/* $RPM_BUILD_ROOT/etc/bacula/updatedb/
1091 # install the logwatch scripts
1092 %if ! %{client_only}
1093 cp -p scripts/logwatch/bacula $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
1094 cp -p scripts/logwatch/logfile.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
1095 cp -p scripts/logwatch/services.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
1096 chmod 755 $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
1097 chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
1098 chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
1101 # install the rescue files
1102 mkdir $RPM_BUILD_ROOT/etc/bacula/rescue
1103 cp -p %{_rescuesrc}/Makefile* $RPM_BUILD_ROOT/etc/bacula/rescue/
1104 cp -p %{_rescuesrc}/README $RPM_BUILD_ROOT/etc/bacula/rescue/
1105 cp -p %{_rescuesrc}/configure $RPM_BUILD_ROOT/etc/bacula/rescue/
1106 cp -p %{_rescuesrc}/version.h $RPM_BUILD_ROOT/etc/bacula/rescue/
1107 cp -pr %{_rescuesrc}/linux $RPM_BUILD_ROOT/etc/bacula/rescue/
1108 cp -pr %{_rescuesrc}/autoconf $RPM_BUILD_ROOT/etc/bacula/rescue/
1109 touch $RPM_BUILD_ROOT/etc/bacula/rescue/linux/cdrom/rpm_release
1110 cp -p src/filed/static-bacula-fd $RPM_BUILD_ROOT/etc/bacula/rescue/linux/cdrom/bacula/bin/bacula-fd
1111 rm -f src/filed/static-bacula-fd
1114 mv $RPM_BUILD_ROOT/usr/sbin/wx-console $RPM_BUILD_ROOT/usr/sbin/wxconsole
1115 mv $RPM_BUILD_ROOT/etc/bacula/wx-console.conf $RPM_BUILD_ROOT/etc/bacula/wxconsole.conf
1118 # now clean up permissions that are left broken by the install
1119 %if ! %{client_only}
1120 chmod o-r $RPM_BUILD_ROOT/etc/bacula/query.sql
1122 chmod o-rwx $RPM_BUILD_ROOT%{working_dir}
1123 %if %{gconsole} && ! %{rh8}
1124 chmod 755 $RPM_BUILD_ROOT/usr/sbin/bacula-tray-monitor
1125 chmod 644 $RPM_BUILD_ROOT/etc/bacula/tray-monitor.conf
1128 # fix me - building enable-client-only installs files not included in bacula-client package
1130 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula
1131 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula-ctl-dir
1132 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula-ctl-sd
1133 rm -f $RPM_BUILD_ROOT/etc/bacula/disk-changer
1134 rm -f $RPM_BUILD_ROOT/etc/bacula/dvd-handler
1135 rm -f $RPM_BUILD_ROOT/etc/bacula/mtx-changer
1136 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
1137 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
1138 rm -rf $RPM_BUILD_ROOT/etc/bacula/updatedb
1142 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
1145 # MySQL specific files
1147 %defattr(-, root, root)
1148 %attr(-, root, %{daemon_group}) /etc/bacula/create_mysql_database
1149 %attr(-, root, %{daemon_group}) /etc/bacula/drop_mysql_database
1150 %attr(-, root, %{daemon_group}) /etc/bacula/make_mysql_tables
1151 %attr(-, root, %{daemon_group}) /etc/bacula/drop_mysql_tables
1152 %attr(-, root, %{daemon_group}) /etc/bacula/update_mysql_tables
1153 %attr(-, root, %{daemon_group}) /etc/bacula/grant_mysql_privileges
1154 %attr(-, root, %{daemon_group}) /etc/bacula/startmysql
1155 %attr(-, root, %{daemon_group}) /etc/bacula/stopmysql
1160 %defattr(-,root,root)
1161 %attr(-, root, %{daemon_group}) /etc/bacula/create_sqlite_database
1162 %attr(-, root, %{daemon_group}) /etc/bacula/drop_sqlite_database
1163 %attr(-, root, %{daemon_group}) /etc/bacula/grant_sqlite_privileges
1164 %attr(-, root, %{daemon_group}) /etc/bacula/make_sqlite_tables
1165 %attr(-, root, %{daemon_group}) /etc/bacula/drop_sqlite_tables
1166 %attr(-, root, %{daemon_group}) /etc/bacula/update_sqlite_tables
1167 %{sqlite_bindir}/libsqlite.a
1168 %{sqlite_bindir}/sqlite.h
1169 %{sqlite_bindir}/sqlite
1174 %defattr(-,root,root)
1175 %attr(-, root, %{daemon_group}) /etc/bacula/create_postgresql_database
1176 %attr(-, root, %{daemon_group}) /etc/bacula/drop_postgresql_database
1177 %attr(-, root, %{daemon_group}) /etc/bacula/make_postgresql_tables
1178 %attr(-, root, %{daemon_group}) /etc/bacula/drop_postgresql_tables
1179 %attr(-, root, %{daemon_group}) /etc/bacula/update_postgresql_tables
1180 %attr(-, root, %{daemon_group}) /etc/bacula/grant_postgresql_privileges
1183 # The rest is DB backend independent
1184 %if ! %{client_only}
1185 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1186 %attr(-, root, %{daemon_group}) /etc/bacula/bacula
1187 %attr(-, root, %{daemon_group}) /etc/bacula/bconsole
1188 %attr(-, root, %{daemon_group}) /etc/bacula/create_bacula_database
1189 %attr(-, root, %{daemon_group}) /etc/bacula/drop_bacula_database
1190 %attr(-, root, %{daemon_group}) /etc/bacula/grant_bacula_privileges
1191 %attr(-, root, %{daemon_group}) /etc/bacula/make_bacula_tables
1192 %attr(-, root, %{daemon_group}) /etc/bacula/drop_bacula_tables
1193 %attr(-, root, %{daemon_group}) /etc/bacula/update_bacula_tables
1194 %attr(-, root, %{daemon_group}) /etc/bacula/make_catalog_backup
1195 %attr(-, root, %{daemon_group}) /etc/bacula/delete_catalog_backup
1196 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.dbx
1197 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.gdb
1198 %attr(-, root, %{daemon_group}) /etc/bacula/rescue
1199 %attr(-, root, %{daemon_group}) /etc/bacula/disk-changer
1200 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-dir
1201 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-fd
1202 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-sd
1203 %attr(-, root, %{daemon_group}) /etc/init.d/bacula-dir
1204 %attr(-, root, %{daemon_group}) /etc/init.d/bacula-fd
1205 %attr(-, root, %{storage_daemon_group}) /etc/bacula/dvd-handler
1206 %attr(-, root, %{storage_daemon_group}) /etc/init.d/bacula-sd
1207 %attr(-, root, %{storage_daemon_group}) /etc/bacula/mtx-changer
1209 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo
1210 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
1212 /etc/logrotate.d/bacula
1213 /etc/log.d/scripts/services/bacula
1214 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-dir.conf
1215 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-fd.conf
1216 %attr(-, root, %{storage_daemon_group}) %config(noreplace) /etc/bacula/bacula-sd.conf
1217 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bconsole.conf
1218 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/logfiles/bacula.conf
1219 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/services/bacula.conf
1220 %attr(-, root, %{daemon_group}) /etc/bacula/query.sql
1222 %attr(-, %{storage_daemon_user}, %{daemon_group}) %dir %{working_dir}
1224 /usr/sbin/bacula-dir
1232 /usr/sbin/btraceback
1238 %{_mandir}/man8/bacula-fd.8.%{manpage_ext}
1239 %{_mandir}/man8/bacula-dir.8.%{manpage_ext}
1240 %{_mandir}/man8/bacula-sd.8.%{manpage_ext}
1241 %{_mandir}/man8/bacula.8.%{manpage_ext}
1242 %{_mandir}/man8/bconsole.8.%{manpage_ext}
1243 %{_mandir}/man8/bcopy.8.%{manpage_ext}
1244 %{_mandir}/man8/bextract.8.%{manpage_ext}
1245 %{_mandir}/man8/bls.8.%{manpage_ext}
1246 %{_mandir}/man8/bscan.8.%{manpage_ext}
1247 %{_mandir}/man8/btape.8.%{manpage_ext}
1248 %{_mandir}/man8/btraceback.8.%{manpage_ext}
1249 %{_mandir}/man8/dbcheck.8.%{manpage_ext}
1250 %{_mandir}/man1/bsmtp.1.%{manpage_ext}
1255 # test for bacula database older than version 9
1256 # note: this ASSUMES no password has been set for bacula database
1257 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
1262 # test for bacula database older than version 9
1263 if [ -s %{working_dir}/bacula.db ] && [ -s %{sqlite_bindir}/sqlite ];then
1264 DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
1269 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
1272 %if ! %{client_only}
1273 if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "9" ]; then
1274 echo "This bacula upgrade will update a bacula database from version 9 to 10."
1275 echo "You appear to be running database version $DB_VER. You must first update"
1276 echo "your database to version 9 and then install this upgrade. The alternative"
1277 echo "is to use /etc/bacula/drop_%{db_backend}_tables to delete all your your current"
1278 echo "catalog information, then do the upgrade. Information on updating a"
1279 echo "database older than version 9 can be found in the release notes."
1288 %if ! %{client_only}
1289 # check for and copy /etc/bacula/console.conf to bconsole.conf
1290 if [ -s /etc/bacula/console.conf ];then
1291 cp -p /etc/bacula/console.conf /etc/bacula/bconsole.conf
1294 # create the daemon users and groups
1295 # first create the groups if they don't exist
1296 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1297 if [ -z "$HAVE_BACULA" ]; then
1298 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1299 echo "The group %{daemon_group} has been added to %{group_file}."
1300 echo "See the manual chapter \"Running Bacula\" for details."
1302 HAVE_BACULA=`grep %{storage_daemon_group} %{group_file} 2>/dev/null`
1303 if [ -z "$HAVE_BACULA" ]; then
1304 %{groupadd} -r %{storage_daemon_group} > /dev/null 2>&1
1305 echo "The group %{storage_daemon_group} has been added to %{group_file}."
1306 echo "See the manual chapter \"Running Bacula\" for details."
1308 # now create the users if they do not exist
1309 # we do not use the -g option allowing the primary group to be set to system default
1310 # this will be a unique group on redhat type systems or the group users on some systems
1311 HAVE_BACULA=`grep %{storage_daemon_user} %{user_file} 2>/dev/null`
1312 if [ -z "$HAVE_BACULA" ]; then
1313 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{storage_daemon_group} -M -s /sbin/nologin %{storage_daemon_user} > /dev/null 2>&1
1314 echo "The user %{storage_daemon_user} has been added to %{user_file}."
1315 echo "See the manual chapter \"Running Bacula\" for details."
1317 HAVE_BACULA=`grep %{director_daemon_user} %{user_file} 2>/dev/null`
1318 if [ -z "$HAVE_BACULA" ]; then
1319 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{director_daemon_user} > /dev/null 2>&1
1320 echo "The user %{director_daemon_user} has been added to %{user_file}."
1321 echo "See the manual chapter \"Running Bacula\" for details."
1323 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
1324 if [ -z "$HAVE_BACULA" ]; then
1325 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
1326 echo "The user %{file_daemon_user} has been added to %{user_file}."
1327 echo "See the manual chapter \"Running Bacula\" for details."
1329 # now we add the supplementary groups, this is ok to call even if the users already exist
1330 # we only do this if the user is NOT root
1331 IS_ROOT=%{director_daemon_user}
1332 if [ "$IS_ROOT" != "root" ]; then
1333 %{usermod} -G %{daemon_group} %{director_daemon_user}
1335 IS_ROOT=%{storage_daemon_user}
1336 if [ "$IS_ROOT" != "root" ]; then
1337 %{usermod} -G %{daemon_group},%{storage_daemon_group} %{storage_daemon_user}
1339 IS_ROOT=%{file_daemon_user}
1340 if [ "$IS_ROOT" != "root" ]; then
1341 %{usermod} -G %{daemon_group} %{file_daemon_user}
1355 %if ! %{client_only}
1357 if [ "$1" -ge 1 ] ; then
1358 /sbin/chkconfig --add bacula-dir
1359 /sbin/chkconfig --add bacula-fd
1360 /sbin/chkconfig --add bacula-sd
1365 # test for an existing database
1366 # note: this ASSUMES no password has been set for bacula database
1367 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
1369 # grant privileges and create tables if they do not exist
1370 if [ -z "$DB_VER" ]; then
1371 echo "Hmm, doesn't look like you have an existing database."
1372 echo "Granting privileges for MySQL user bacula..."
1373 /etc/bacula/grant_mysql_privileges
1374 echo "Creating MySQL bacula database..."
1375 /etc/bacula/create_mysql_database
1376 echo "Creating bacula tables..."
1377 /etc/bacula/make_mysql_tables
1379 # check to see if we need to upgrade a 1.38 or lower database
1380 elif [ "$DB_VER" -lt "10" ]; then
1381 echo "This release requires an upgrade to your bacula database."
1382 echo "Backing up your current database..."
1383 mysqldump -f --opt bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1384 echo "Upgrading bacula database ..."
1385 /etc/bacula/update_mysql_tables
1386 echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1392 # test for an existing database
1393 if [ -s %{working_dir}/bacula.db ]; then
1394 DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
1395 # check to see if we need to upgrade a 1.38 or lower database
1396 if [ "$DB_VER" -lt "10" ] && [ "$DB_VER" -ge "9" ]; then
1397 echo "This release requires an upgrade to your bacula database."
1398 echo "Backing up your current database..."
1399 echo ".dump" | %{sqlite_bindir}/sqlite %{working_dir}/bacula.db | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1400 echo "Upgrading bacula database ..."
1401 /etc/bacula/update_sqlite_tables
1402 echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1405 # create the database and tables
1406 echo "Hmm, doesn't look like you have an existing database."
1407 echo "Creating SQLite database..."
1408 /etc/bacula/create_sqlite_database
1409 echo "Creating the SQLite tables..."
1410 /etc/bacula/make_sqlite_tables
1415 # test for an existing database
1416 # note: this ASSUMES no password has been set for bacula database
1417 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
1419 # grant privileges and create tables if they do not exist
1420 if [ -z "$DB_VER" ]; then
1421 echo "Hmm, doesn't look like you have an existing database."
1422 echo "Creating PostgreSQL bacula database..."
1423 /etc/bacula/create_postgresql_database
1424 echo "Creating bacula tables..."
1425 /etc/bacula/make_postgresql_tables
1426 echo "Granting privileges for PostgreSQL user bacula..."
1427 /etc/bacula/grant_postgresql_privileges
1429 # check to see if we need to upgrade a 1.38 or lower database
1430 elif [ "$DB_VER" -lt "10" ]; then
1431 echo "This release requires an upgrade to your bacula database."
1432 echo "Backing up your current database..."
1433 pg_dump bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1434 echo "Upgrading bacula database ..."
1435 /etc/bacula/update_postgresql_tables
1436 echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1441 %if ! %{client_only}
1442 # generate passwords if needed
1443 if [ -d /etc/bacula ]; then
1445 for file in *.conf; do
1446 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
1447 need_password=`grep $string $file 2>/dev/null`
1448 if [ -n "$need_password" ]; then
1449 pass=`openssl rand -base64 33`
1450 sed "s-$string-$pass-g" $file > $file.new
1451 cp -f $file.new $file; rm -f $file.new
1468 %if ! %{client_only}
1471 /sbin/chkconfig --del bacula-dir
1472 /sbin/chkconfig --del bacula-fd
1473 /sbin/chkconfig --del bacula-sd
1478 %if ! %{client_only}
1480 %defattr(-,root,root)
1481 %attr(-, root, %{storage_daemon_group}) /usr/sbin/loaderinfo
1482 %attr(-, root, %{storage_daemon_group}) /usr/sbin/mtx
1483 %attr(-, root, %{storage_daemon_group}) /usr/sbin/scsitape
1484 %attr(-, root, %{storage_daemon_group}) /usr/sbin/tapeinfo
1485 %{_mandir}/man1/loaderinfo.1.%{manpage_ext}
1486 %{_mandir}/man1/mtx.1.%{manpage_ext}
1487 %{_mandir}/man1/scsitape.1.%{manpage_ext}
1488 %{_mandir}/man1/tapeinfo.1.%{manpage_ext}
1493 %defattr(-,root,root)
1494 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1495 %attr(-, root, %{daemon_group}) /etc/bacula/bconsole
1496 /etc/bacula/bacula-ctl-fd
1497 /etc/init.d/bacula-fd
1498 %attr(-, root, %{daemon_group}) /etc/bacula/rescue
1500 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo
1501 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
1503 /etc/logrotate.d/bacula
1505 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-fd.conf
1506 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bconsole.conf
1508 %attr(-, root, %{daemon_group}) %dir %{working_dir}
1511 /usr/sbin/btraceback
1512 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.gdb
1513 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.dbx
1515 %{_mandir}/man8/bacula-fd.8.%{manpage_ext}
1516 %{_mandir}/man8/bacula.8.%{manpage_ext}
1517 %{_mandir}/man8/bconsole.8.%{manpage_ext}
1518 %{_mandir}/man8/btraceback.8.%{manpage_ext}
1522 # create the daemon group and user
1523 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1524 if [ -z "$HAVE_BACULA" ]; then
1525 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1526 echo "The group %{daemon_group} has been added to %{group_file}."
1527 echo "See the manual chapter \"Running Bacula\" for details."
1529 # we do not use the -g option allowing the primary group to be set to system default
1530 # this will be a unique group on redhat type systems or the group users on some systems
1531 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
1532 if [ -z "$HAVE_BACULA" ]; then
1533 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
1534 echo "The user %{file_daemon_user} has been added to %{user_file}."
1535 echo "See the manual chapter \"Running Bacula\" for details."
1537 # now we add the supplementary group, this is ok to call even if the user already exists
1538 # we only do this if the user is NOT root
1539 IS_ROOT=%{file_daemon_user}
1540 if [ "$IS_ROOT" != "root" ]; then
1541 %{usermod} -G %{daemon_group} %{file_daemon_user}
1546 if [ "$1" -ge 1 ] ; then
1547 /sbin/chkconfig --add bacula-fd
1550 # generate passwords if needed
1551 if [ -d /etc/bacula ]; then
1553 for file in *.conf; do
1554 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
1555 need_password=`grep $string $file 2>/dev/null`
1556 if [ -n "$need_password" ]; then
1557 pass=`openssl rand -base64 33`
1558 sed "s-$string-$pass-g" $file > $file.new
1559 cp -f $file.new $file; rm -f $file.new
1568 /sbin/chkconfig --del bacula-fd
1571 %if ! %{client_only}
1573 %defattr(-,root,%{daemon_group})
1574 /etc/bacula/updatedb/*
1577 # create the daemon group
1578 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1579 if [ -z "$HAVE_BACULA" ]; then
1580 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1581 echo "The group %{daemon_group} has been added to %{group_file}."
1582 echo "See the manual chapter \"Running Bacula\" for details."
1586 echo "The database update scripts were installed to /etc/bacula/updatedb"
1591 %defattr(-,root,root)
1592 /usr/sbin/gnome-console
1593 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1594 %attr(-, root, %{daemon_group}) /etc/bacula/gconsole
1595 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/gnome-console.conf
1596 /usr/share/pixmaps/bacula.png
1597 /usr/share/applications/bacula.desktop
1598 %{_mandir}/man1/bacula-console-gnome.1.%{manpage_ext}
1601 %if %{gconsole} && ! %{rh8}
1602 /usr/sbin/bacula-tray-monitor
1603 %config(noreplace) /etc/bacula/tray-monitor.conf
1604 /usr/share/pixmaps/bacula-tray-monitor.xpm
1605 /usr/share/applications/bacula-tray-monitor.desktop
1606 %{_mandir}/man1/bacula-tray-monitor.1.%{manpage_ext}
1609 %if %{gconsole} && ! %{su9} && ! %{su10}
1610 # add the console helper files
1611 %config(noreplace,missingok) /etc/pam.d/gnome-console
1612 %config(noreplace,missingok) /etc/security/console.apps/gnome-console
1613 /usr/bin/gnome-console
1618 # create the daemon group
1619 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1620 if [ -z "$HAVE_BACULA" ]; then
1621 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1622 echo "The group %{daemon_group} has been added to %{group_file}."
1623 echo "See the manual chapter \"Running Bacula\" for details."
1627 # generate passwords if needed
1628 if [ -d /etc/bacula ]; then
1630 for file in *.conf; do
1631 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
1632 need_password=`grep $string $file 2>/dev/null`
1633 if [ -n "$need_password" ]; then
1634 pass=`openssl rand -base64 33`
1635 sed "s-$string-$pass-g" $file > $file.new
1636 cp -f $file.new $file; rm -f $file.new
1645 %defattr(-,root,root)
1647 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1648 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/wxconsole.conf
1649 /usr/share/pixmaps/wxwin16x16.xpm
1650 /usr/share/applications/wxconsole.desktop
1651 %{_mandir}/man1/bacula-wxconsole.1.%{manpage_ext}
1654 %if %{wxconsole} && ! %{su9} && ! %{su10}
1655 # add the console helper files
1656 %config(noreplace,missingok) /etc/pam.d/wxconsole
1657 %config(noreplace,missingok) /etc/security/console.apps/wxconsole
1663 # create the daemon group
1664 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1665 if [ -z "$HAVE_BACULA" ]; then
1666 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1667 echo "The group %{daemon_group} has been added to %{group_file}."
1668 echo "See the manual chapter \"Running Bacula\" for details."
1672 # generate passwords if needed
1673 if [ -d /etc/bacula ]; then
1675 for file in *.conf; do
1676 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
1677 need_password=`grep $string $file 2>/dev/null`
1678 if [ -n "$need_password" ]; then
1679 pass=`openssl rand -base64 33`
1680 sed "s-$string-$pass-g" $file > $file.new
1681 cp -f $file.new $file; rm -f $file.new
1689 * Sun Oct 15 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1690 - 1.39.26 remove create_sqlite_database.in.patch
1691 * Sun Sep 24 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1692 - change ownership of working_dir on server packages to bacula.bacula so that
1693 - bacula-sd can create bootstrap files
1694 * Sat Sep 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1695 - 1.39.22 remove separate cd and make of manpages the main Makefile does it now
1696 * Sun Aug 06 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1697 - fix manpages file extension for mdk
1698 * Sat Aug 05 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1699 - bug 648 re-enable and update sqlite patches
1703 - lock out gconsole build for gtk+ < 2.4
1704 * Mon Jul 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1705 - move pango-devel BuildRequires into gconsole only build
1706 * Sat Jul 15 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1707 - add provides and conflicts for standard suse packages
1708 - add third party packager tag support
1709 - add build_client_only tag
1710 - remove bsmtp from client package
1711 - add bacula-ctl-fd to client package
1712 * Thu Jul 13 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1713 - fix directory creation when wxconsole and not gconsole
1714 * Tue Jul 04 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1715 - add check to buildrequires to make sure libstdc++ version matches gcc
1716 * Mon Jul 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1717 - add python build support
1718 - fix LDFLAGS declarations
1719 * Sun Jul 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1720 - add requires for standard compiler toolchain
1721 - move version and release tags up
1723 - add docs_version tag
1724 * Sat Jul 01 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1725 - update rescuever to 1.8.6
1726 * Sun Jun 25 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1727 - update depkgs to 25Jun06
1728 - add mysql5 build tag
1729 * Mon Jun 12 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1730 - 1.38.10 bump rescue version
1731 * Sun Jun 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1732 - fix usermod statements
1734 * Thu Apr 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1735 - add -g param back to useradd statements Bug 605
1736 * Mon Apr 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1737 - redundant code cleanup
1738 * Sun Apr 16 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1739 - add wxconsole package
1740 * Fri Apr 14 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1742 - dependency update for Mandriva
1743 * Sun Apr 08 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1745 - remove -n option from useradd scripts
1746 * Sun Apr 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1748 - fix problem specifying more than one primary group for user bacula
1749 - add build switch to not build gconsole regardless of platform
1750 * Sun Jan 29 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1751 - add centos3 build tag
1752 - fix link error of static-fd on Mandrake with --disable-nls
1753 * Fri Jan 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1754 - add fc4 dependencies
1755 * Mon Jan 23 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1756 - add SuSE 10.0 build
1757 - remove specific permission in attrib macros
1758 * Sat Jan 21 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1760 - fix usermode required on suse, suse doesn't have usermode (xsu instead)
1761 - refix compat for _dist on SLES9 which seems to have been removed
1762 - added note regarding Aleksandar's use of specific permissions in attrib macros
1763 - need to review and add specific fc4 build currently using fc3 Requires
1764 * Wed Dec 14 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1766 - Reorganize files and pre/post sections to remove repetitions
1767 - Always build separate mtx package
1768 - Fix file ownerships for /etc/bacula and Bacula's working dir
1769 * Wed Nov 23 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1770 - Disable GNOME on RH7
1771 * Fri Nov 18 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1772 - Red Hat and look alikes have mtx RPM, do not build/package our version
1773 * Sun Nov 13 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1774 - minor edit to _dist for SLES9 compatibility
1775 * Sat Nov 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1777 - kern changed location of pdf files and html manual in docs package
1778 * Sun Oct 30 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1780 - add docs (from prebuilt tarball) and rescue packages back in
1781 - remove dvd-freespace and dvd-writepart files, add dvd-handler
1782 - remove 3 of 4 sqlite script patches as not needed
1783 * Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1785 - remove docs and rescue sections (remove static fd)
1786 - add dvd-freespace and dvd-writepart files
1787 - update depkgs to 22Jun05
1788 - change database update to 8 to 9
1789 * Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1790 - minor cleanups before 1.38 changes
1791 - add popt and popt-devel build dependencies
1792 - add tetex and tetex-dvips dependencies for doc build
1793 - replace deprecated Copyright tag with License
1794 * Sat May 07 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1795 - move sqlite installation bindir to /usr/lib/bacula/sqlite and remove
1796 - conflict with sqlite packages. remove readline dependency.
1797 * Sun Apr 17 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1798 - release 1.36.3 update docs
1799 * Tue Apr 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1800 - add centos4 build tag
1801 - add x86_64 build tag
1802 * Sun Apr 03 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1803 - add rhel4 build tag
1804 - clean up for mysql4 which is now mdk-10.1, suse-9.2 and rhel4
1805 * Sun Mar 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1806 - add rhel3 build tag
1807 * Tue Mar 01 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1808 - fix tray-monitor.conf for noreplace
1809 * Mon Feb 28 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1810 - fix distribution check for Fedora and Whitebox
1811 * Sun Feb 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1812 - add logwatch script
1814 * Sat Jan 15 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1815 - add build for Fedora Core 3 (linc now included in ORDit2)
1816 - add mysql4 define for Mandrake 10.1
1817 * Fri Jan 14 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1818 - fix {group_file} variable in post scripts
1819 * Thu Dec 30 2004 D. Scott Barninger <barninger@fairfieldcomputers.com>
1820 - add distribution checking and custom Distribution tag
1821 * Thu Dec 09 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1822 - ASSIGNMENT OF COPYRIGHT
1823 - FOR VALUE RECEIVED, D. Scott Barninger hereby sells, transfers and
1824 - assigns unto Kern Sibbald, his successors, assigns and personal representatives,
1825 - all right, title and interest in and to the copyright in this software RPM
1826 - spec file. D. Scott Barninger warrants good title to said copyright, that it is
1827 - free of all liens, encumbrances or any known claims against said copyright.
1828 * Sat Dec 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1830 - thanks to Daniel Widyono
1831 - update description for rescue package to describe cdrom creation
1832 * Thu Nov 18 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1833 - update depkgs to 29Oct04
1834 * Fri Nov 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1835 - add cdrom rescue to bacula-rescue package
1836 * Sun Oct 31 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1837 - misc fixes from 1.36.0 suse feedback
1838 - fix situation where sqlite database exists but sqlite has been removed.
1839 * Fri Oct 22 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1840 - remove tray-monitor from RH8 build
1841 - fix permissions on tray-monitor files
1842 * Wed Oct 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1843 - add Mandrake support and tray-monitor, misc changes for 1.35.8/1.36.0,
1844 - change database update to 7 to 8 upgrade,
1845 - revert depkgs to 08Mar04 as there seems to be a bug in the sqlite
1846 - build in 30Jul04, add freetype dependancy to gnome package.
1847 * Sun Sep 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1848 - add documentation to console for groupadd
1849 * Sat Sep 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1850 - add support for running daemons as root.bacula
1851 - correct for change in location of floppy rescue files in 1.35.2
1852 - removed /etc/bacula/fd script from all packages as it has disappeared from 1.35.2
1853 - updated depgkgs to 30Jul04
1854 * Thu Jun 24 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1855 - really, really fix symlink creation for gconsole
1856 * Thu Jun 17 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1857 - fix symlink creation in gconsole post install
1858 * Sat Jun 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1859 - fixed error in gconsole post script
1860 * Fri Apr 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1861 - add check for gconsole symlink before trying to create it
1862 * Sun Apr 11 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1863 - fix some minor permissions issues on doc files that CVS won't let us fix
1864 * Sun Apr 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1865 - add pkgconfig to BuildRequires
1866 - clean up gnome1/2 menu entries for appropriate packages
1867 * Fri Apr 02 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1868 - tightened up doc distribution
1869 * Tue Mar 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1870 - added usermode (Redhat) and xsu (SuSE) support for gnome-console;
1871 - rpm's horrible bug that prevents nested conditional macros prevents me
1872 - from implementing these 2 separate approaches within the conditionals which
1873 - create the separate server packages.
1874 - the solution adopted is to remove the gnome-console files from the server packages
1875 - so bacula-gconsole is now an add on for both client and server packages.
1876 - this also now allows the server packages to be install on machines without
1877 - an X-server and we can still maintain a single spec file.
1878 - added tests to make sure we have defined platform and database macros.
1879 * Sat Mar 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1880 - corrected mysql prerequisites for suse
1881 * Mon Mar 1 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1882 - replaced all cp commands with cp -p
1883 - removed addition of a+x permissions on gnome-console
1884 - corrected permissions on init scripts
1885 * Sat Feb 28 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1886 - corrected creation of sqlite_bindir in install from !mysql to sqlite
1888 - various cleanup patches from Michael K. Johnson:
1889 - corrected post install routines for nicer chkconfig
1890 - removed chmod changes in post routines and moved to install section
1891 - removed interactive nature of post routine for rescue package
1892 - added description of building rescue disks to the description of rescue package
1893 - added clean of build root to beginning of install
1894 - removed specifying attr in all file lists
1895 * Fri Feb 20 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1896 - added bconsole to client package
1897 - added gconsole package as add-on to client
1898 - removed spurious dependancies on updatedb package (!cut/paste)
1899 * Thu Feb 19 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1900 - added updatedb package
1901 * Thu Feb 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1902 - added postgresql package
1903 * Wed Feb 11 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1904 - corrected the if else logic in the dependancy sections
1905 - changes for 1.34 release
1906 - /etc/bacula/console is now /etc/bacula/bconsole
1907 - /etc/bacula/console.conf is now /etc/bacula/bconsole.conf
1908 - /usr/sbin/btraceback.gdb is now /etc/bacula/btraceback.gdb
1909 - /usr/sbin/smtp is now /usr/sbin/bsmtp
1910 - added new /etc/bacula/drop_mysql_database
1911 - added new /etc/bacula/drop_sqlite_database
1912 - added new /etc/bacula/grant_sqlite_privileges
1913 - added new generic bacula database scripts in /etc/bacula
1914 - added pre-install sections to check for database versions older than 6
1915 - added check for /etc/bacula/console.conf and copy to bconsole.conf
1916 * Sun Feb 08 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1917 - added /etc/bacula/update_sqlite_tables and /etc/bacula/update_mysql_tables for 1.34 release
1918 - added testing for existing databases before executing any of the database creation scripts
1919 - added defines working_dir and sqlite_bindir in place of hard coded paths
1920 * Sat Jan 31 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1921 - added build configuration for SuSE.
1922 - Thanks to Matt Vollmar <matt at panamschool.edu.sv> for his input
1923 * Sat Jan 24 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1924 - added patch for create_sqlite_database to fix the installed bindir
1925 - added execute of create_sqlite_database to post of sqlite package
1926 * Sat Jan 10 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1927 - added virtual package Provides bacula-dir, bacula-sd, bacula-fd
1928 - added bacula-fd as Requires for rescue package
1929 - added build tag for Fedora Core 1
1930 - cleaned up dependancies for all builds
1931 * Thu Jan 1 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1932 - removed rh_version from package names
1933 - added platform build configuration section to beginning of file
1934 * Tue Nov 25 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1935 - removed make_static_bacula script from rescue package install
1936 * Sun Nov 23 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1937 - Added define at top of file for depkgs version
1938 - Added rescue sub-package
1939 - Moved requires statements into proper sub-package locations
1940 * Mon Oct 27 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1941 - Corrected Requires for Gnome 1.4/2.0 builds
1942 * Fri Oct 24 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1943 - Added separate source declaration for depkgs
1944 - added patch for make_catalog_backup script
1945 * Mon May 11 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1946 - Misc changes to mysql/sqlite build and rh7/8 menu differences
1947 - Added rh_version to sub-package names
1948 - Added installed but missing file /etc/bacula/gconsole
1949 - rm'd /etc/bacula/grant_mysql_privileges on sqlite builds
1950 * Thu May 08 2003 Kern Sibbald <kern at sibbald.com>
1951 - Update spec for version 1.31 and combine client
1952 * Sun Mar 30 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>