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 04Jan07
10 %define _rescuever 2.0.0
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}
94 %{?build_fc6:%define fc6 1}
95 # Whitebox Enterprise build
97 %{?build_wb3:%define wb3 1}
98 # RedHat Enterprise builds
100 %{?build_rhel3:%define rhel3 1}
101 %{?build_rhel3:%define wb3 1}
103 %{?build_rhel4:%define rhel4 1}
104 %{?build_rhel4:%define fc3 1}
107 %{?build_centos3:%define centos3 1}
108 %{?build_centos3:%define wb3 1}
110 %{?build_centos4:%define centos4 1}
111 %{?build_centos4:%define fc3 1}
114 %{?build_su9:%define su9 1}
116 %{?build_su10:%define su10 1}
119 %{?build_mdk:%define mdk 1}
121 %{?build_mdv:%define mdv 1}
122 %{?build_mdv:%define mdk 1}
125 %define client_only 0
126 %{?build_client_only:%define client_only 1}
128 # test for a platform definition
129 %if ! %{rh7} && ! %{rh8} && ! %{rh9} && ! %{fc1} && ! %{fc3} && ! %{fc4} && ! %{fc5} && ! %{fc6} && ! %{wb3} && ! %{su9} && ! %{su10} && ! %{mdk}
130 %{error: You must specify a platform. Please examine the spec file.}
135 # set for database support desired or define the build_xxx on the command line
137 %{?build_mysql:%define mysql 1}
138 # if using mysql 4.x define this and mysql above
139 # currently: Mandrake 10.1, SuSE 9.x & 10.0, RHEL4 and Fedora Core 4
141 %{?build_mysql4:%define mysql4 1}
142 %{?build_mysql4:%define mysql 1}
143 # if using mysql 5.x define this and mysql above
144 # currently: SuSE 10.1 and Fedora Core 5
146 %{?build_mysql5:%define mysql5 1}
147 %{?build_mysql5:%define mysql 1}
149 %{?build_sqlite:%define sqlite 1}
151 %{?build_postgresql:%define postgresql 1}
153 # test for a database definition
154 %if ! %{mysql} && ! %{sqlite} && ! %{postgresql} && ! %{client_only}
155 %{error: You must specify database support. Please examine the spec file.}
160 %define db_backend mysql
163 %define db_backend sqlite
166 %define db_backend postgresql
171 %{?build_x86_64:%define x86_64 1}
173 # check what distribution we are
174 %if %{rh7} || %{rh8} || %{rh9} || %{rhel3} || %{rhel4}
175 %define _dist %(grep Red /etc/redhat-release)
177 %if %{fc1} || %{fc4} || %{fc5} || %{fc6}
178 %define _dist %(grep Fedora /etc/redhat-release)
180 %if %{centos4} || %{centos3}
181 %define _dist %(grep CentOS /etc/redhat-release)
183 %if %{fc3} && ! %{rhel4} && ! %{centos4}
184 %define _dist %(grep Fedora /etc/redhat-release)
186 %if %{wb3} && ! %{rhel3} && ! %{centos3}
187 %define _dist %(grep White /etc/whitebox-release)
189 %if %{su9} || %{su10}
190 %define _dist %(grep -i SuSE /etc/SuSE-release)
193 %define _dist %(grep Mand /etc/mandrake-release)
195 Distribution: %{_dist}
197 # Should we build gconsole, possible only if gtk= >= 2.4 available.
198 # leaving all the BuildRequires and Requires in place below for now.
201 %if %{rh7} || %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{su9}
204 %if %{mdk} && ! %{mdv}
208 # specifically disallow gconsole if desired
209 %{?nobuild_gconsole:%define gconsole 0}
211 # Should we build wxconsole, only wxWidgets >=2.6 is supported
212 # currently only SuSE 10 and FC4/FC5
214 %{?build_wxconsole:%define wxconsole 1}
216 # should we turn on python support
218 %{?build_python:%define python 1}
220 # Mandriva somehow forces the manpage file extension to bz2 rather than gz
222 %define manpage_ext bz2
224 %define manpage_ext gz
227 # for client only build
238 %{expand: %%define gccver %(rpm -q --queryformat %%{version} gcc)}
239 %{expand: %%define gccrel %(rpm -q --queryformat %%{release} gcc)}
241 BuildRequires: gcc, gcc-c++, make, autoconf
242 BuildRequires: ncurses-devel, perl
243 BuildRequires: libstdc++-devel = %{gccver}-%{gccrel}, libxml2-devel, zlib-devel
244 BuildRequires: openssl-devel
246 BuildRequires: python, python-devel
247 %{expand: %%define pyver %(python -c 'import sys;print(sys.version[0:3])')}
250 BuildRequires: pkgconfig, pango-devel, atk-devel
253 BuildRequires: libtermcap-devel
254 BuildRequires: glibc-devel >= 2.2
257 BuildRequires: termcap
258 BuildRequires: glibc-devel >= 2.3
260 %if %{su9} && %{gconsole}
261 BuildRequires: libgnome >= 2.0
262 BuildRequires: gtk2-devel >= 2.0
263 BuildRequires: libgnomeui-devel >= 2.0
264 BuildRequires: ORBit2-devel
265 BuildRequires: libart_lgpl-devel >= 2.0
266 BuildRequires: libbonobo-devel >= 2.0
267 BuildRequires: libbonoboui-devel >= 2.0
268 BuildRequires: bonobo-activation-devel
269 BuildRequires: gconf2-devel
270 BuildRequires: linc-devel
271 BuildRequires: freetype2-devel
274 BuildRequires: termcap
275 BuildRequires: glibc-devel >= 2.3
277 %if %{su10} && %{gconsole}
278 BuildRequires: libgnome >= 2.12
279 BuildRequires: gtk2-devel >= 2.8
280 BuildRequires: libgnomeui-devel >= 2.12
281 BuildRequires: ORBit2-devel
282 BuildRequires: libart_lgpl-devel >= 2.3
283 BuildRequires: libbonobo-devel >= 2.10
284 BuildRequires: libbonoboui-devel >= 2.10
285 BuildRequires: bonobo-activation-devel
286 BuildRequires: gconf2-devel
287 BuildRequires: freetype2-devel
288 BuildRequires: cairo-devel
289 BuildRequires: fontconfig-devel >= 2.3
290 BuildRequires: gnome-vfs2-devel >= 2.12
291 BuildRequires: libpng-devel
294 BuildRequires: libtermcap-devel
295 BuildRequires: libstdc++-static-devel
296 BuildRequires: glibc-static-devel
297 BuildRequires: glibc-devel >= 2.3
299 %if %{mdk} && !%{mdv} && %{gconsole}
300 BuildRequires: gtk2-devel >= 2.0
301 BuildRequires: libgnomeui2-devel >= 2.0
302 BuildRequires: libORBit2-devel
303 BuildRequires: libart_lgpl-devel >= 2.0
304 BuildRequires: libbonobo2_0-devel
305 BuildRequires: libbonoboui2_0-devel
306 BuildRequires: libbonobo-activation-devel
307 BuildRequires: libGConf2-devel
308 BuildRequires: freetype2-devel
310 %if %{mdv} && %{gconsole}
311 BuildRequires: gtk2-devel >= 2.8
312 BuildRequires: libgnomeui2-devel >= 2.10
313 BuildRequires: libORBit2-devel
314 BuildRequires: libart_lgpl-devel >= 2.3
315 BuildRequires: libbonobo2_0-devel
316 BuildRequires: libbonoboui2_0-devel
317 BuildRequires: libbonobo-activation-devel
318 BuildRequires: libGConf2-devel
319 BuildRequires: freetype2-devel
322 BuildRequires: libtermcap-devel
323 BuildRequires: glibc-devel >= 2.3
325 %if %{fc3} && %{gconsole}
326 BuildRequires: gtk2-devel >= 2.4
327 BuildRequires: libgnomeui-devel >= 2.8
328 BuildRequires: ORBit2-devel
329 BuildRequires: libart_lgpl-devel >= 2.3
330 BuildRequires: libbonobo-devel >= 2.8
331 BuildRequires: libbonoboui-devel >= 2.8
332 BuildRequires: bonobo-activation-devel
333 BuildRequires: GConf2-devel
334 BuildRequires: freetype-devel
337 BuildRequires: libtermcap-devel
338 BuildRequires: glibc-devel >= 2.3
340 %if %{fc4} && %{gconsole}
341 BuildRequires: gtk2-devel >= 2.6
342 BuildRequires: libgnomeui-devel >= 2.10
343 BuildRequires: ORBit2-devel
344 BuildRequires: libart_lgpl-devel >= 2.3
345 BuildRequires: libbonobo-devel >= 2.8
346 BuildRequires: libbonoboui-devel >= 2.8
347 BuildRequires: bonobo-activation-devel
348 BuildRequires: GConf2-devel
349 BuildRequires: freetype-devel
352 BuildRequires: libtermcap-devel
353 BuildRequires: glibc-devel >= 2.4
355 %if %{fc5} && %{gconsole}
356 BuildRequires: gtk2-devel >= 2.8
357 BuildRequires: libgnomeui-devel >= 2.14
358 BuildRequires: ORBit2-devel
359 BuildRequires: libart_lgpl-devel >= 2.3
360 BuildRequires: libbonobo-devel >= 2.14
361 BuildRequires: libbonoboui-devel >= 2.14
362 BuildRequires: GConf2-devel
363 BuildRequires: freetype-devel
366 BuildRequires: libtermcap-devel
367 BuildRequires: glibc-devel >= 2.5
369 %if %{fc6} && %{gconsole}
370 BuildRequires: gtk2-devel >= 2.10
371 BuildRequires: libgnomeui-devel >= 2.16
372 BuildRequires: ORBit2-devel
373 BuildRequires: libart_lgpl-devel >= 2.3
374 BuildRequires: libbonobo-devel >= 2.16
375 BuildRequires: libbonoboui-devel >= 2.16
376 BuildRequires: GConf2-devel
377 BuildRequires: freetype-devel
379 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5} && ! %{fc6}
380 BuildRequires: libtermcap-devel
381 BuildRequires: glibc-devel >= 2.3
383 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5} && ! %{fc6} && %{gconsole}
384 BuildRequires: gtk2-devel >= 2.0
385 BuildRequires: libgnomeui-devel >= 2.0
386 BuildRequires: ORBit2-devel
387 BuildRequires: libart_lgpl-devel >= 2.0
388 BuildRequires: libbonobo-devel >= 2.0
389 BuildRequires: libbonoboui-devel >= 2.0
390 BuildRequires: bonobo-activation-devel
391 BuildRequires: GConf2-devel
392 BuildRequires: linc-devel
393 BuildRequires: freetype-devel
396 %if %{mysql} && ! %{mysql4} && ! %{mysql5}
397 BuildRequires: mysql-devel >= 3.23
400 %if %{mysql} && %{mysql4}
401 BuildRequires: mysql-devel >= 4.0
404 %if %{mysql} && %{mysql5}
405 BuildRequires: mysql-devel >= 5.0
408 %if %{postgresql} && %{wb3}
409 BuildRequires: rh-postgresql-devel >= 7
412 %if %{postgresql} && ! %{wb3}
413 BuildRequires: postgresql-devel >= 7
417 BuildRequires: wxGTK-devel >= 2.6
441 Summary: Bacula - The Network Backup Solution
442 Group: System Environment/Daemons
443 Provides: bacula-dir, bacula-sd, bacula-fd, bacula-server
444 Conflicts: bacula-client
445 Obsoletes: bacula-rescue
447 %if %{su9} || %{su10}
451 Requires: ncurses, libstdc++, zlib, openssl, mtx
454 Requires: glibc >= 2.2
457 %if %{su9} || %{su10}
458 Requires: glibc >= 2.3
461 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{fc5} && ! %{fc6}
462 Requires: glibc >= 2.3
466 Requires: glibc >= 2.4
470 Requires: glibc >= 2.5
474 %if %{mysql} && ! %{su9} && ! %{mdk} && ! %{mysql4} && ! %{mysql5}
475 Requires: mysql >= 3.23
476 Requires: mysql-server >= 3.23
478 %if %{mysql} && ! %{su9} && ! %{su10} && ! %{mdk} && %{mysql4}
479 Requires: mysql >= 4.0
480 Requires: mysql-server >= 4.0
482 %if %{mysql} && ! %{su9} && ! %{su10} && ! %{mdk} && %{mysql5}
483 Requires: mysql >= 5.0
484 Requires: mysql-server >= 5.0
487 %if %{mysql} && %{su9} && ! %{mysql4}
488 Requires: mysql >= 3.23
489 Requires: mysql-client >= 3.23
491 %if %{mysql} && %{su9} && %{mysql4}
492 Requires: mysql >= 4.0
493 Requires: mysql-client >= 4.0
495 %if %{mysql} && %{su10} && %{mysql4}
496 Requires: mysql >= 4.0
497 Requires: mysql-client >= 4.0
499 %if %{mysql} && %{su10} && %{mysql5}
500 Requires: mysql >= 5.0
501 Requires: mysql-client >= 5.0
504 %if %{mysql} && %{mdk} && ! %{mysql4}
505 Requires: mysql >= 3.23
506 Requires: mysql-client >= 3.23
508 %if %{mysql} && %{mdk} && %{mysql4}
509 Requires: mysql >= 4.0
510 Requires: mysql-client >= 4.0
513 %if %{postgresql} && %{wb3}
514 Requires: rh-postgresql >= 7
515 Requires: rh-postgresql-server >= 7
517 %if %{postgresql} && ! %{wb3}
518 Requires: postgresql >= 7
519 Requires: postgresql-server >= 7
529 %description postgresql
533 Requires: python >= %{pyver}
547 This build requires MySQL to be installed separately as the catalog database.
550 This build requires PostgreSQL to be installed separately as the catalog database.
553 This build incorporates sqlite as the catalog database, statically compiled.
556 This build includes python scripting support.
561 Summary: Bacula - The Network Backup Solution
562 Group: System Environment/Daemons
566 This is Bacula's version of mtx tape utilities for Linux distributions that
567 do not provide their own mtx package
571 Summary: Bacula - The Network Backup Solution
572 Group: System Environment/Daemons
574 Conflicts: bacula-mysql
575 Conflicts: bacula-sqlite
576 Conflicts: bacula-postgresql
577 Obsoletes: bacula-rescue
579 %if %{su9} || %{su10}
583 Requires: libstdc++, zlib, openssl
586 Requires: glibc >= 2.2
589 %if %{su9} || %{su10}
590 Requires: glibc >= 2.3
593 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{fc5} && ! %{fc6}
594 Requires: glibc >= 2.3
598 Requires: glibc >= 2.4
602 Requires: glibc >= 2.5
607 Requires: python >= %{pyver}
621 This is the File daemon (Client) only package. It includes the command line
624 This build includes python scripting support.
630 Summary: Bacula - The Network Backup Solution
631 Group: System Environment/Daemons
633 %description updatedb
644 This package installs scripts for updating older versions of the bacula
650 Summary: Bacula - The Network Backup Solution
651 Group: System Environment/Daemons
652 Requires: atk, libstdc++, zlib, pango, libxml2, bacula-fd, openssl
655 %if %{gconsole} && %{su9}
656 Requires: gtk2 >= 2.0
657 Requires: libgnome >= 2.0
658 Requires: libgnomeui >= 2.0
659 Requires: glibc >= 2.3
661 Requires: libart_lgpl >= 2.0
662 Requires: libbonobo >= 2.0
663 Requires: libbonoboui >= 2.0
664 Requires: bonobo-activation
669 %if %{gconsole} && %{su10}
670 Requires: gtk2 >= 2.8
671 Requires: libgnome >= 2.12
672 Requires: libgnomeui >= 2.12
673 Requires: glibc >= 2.3
675 Requires: libart_lgpl >= 2.3
676 Requires: libbonobo >= 2.10
677 Requires: libbonoboui >= 2.10
678 Requires: bonobo-activation
682 Requires: fontconfig >= 2.3
683 Requires: gnome-vfs2 >= 2.12
686 %if %{gconsole} && %{mdk} && !%{mdv}
687 Requires: gtk2 >= 2.0
688 Requires: libgnomeui2
689 Requires: glibc >= 2.3
691 Requires: libart_lgpl >= 2.0
692 Requires: libbonobo >= 2.0
693 Requires: libbonoboui >= 2.0
697 %if %{gconsole} && %{mdv}
698 Requires: gtk2 >= 2.8
699 Requires: libgnomeui2
700 Requires: glibc >= 2.3
702 Requires: libart_lgpl >= 2.3
703 Requires: libbonobo >= 2.10
704 Requires: libbonoboui >= 2.10
708 %if %{gconsole} && %{fc3}
709 Requires: gtk2 >= 2.4
710 Requires: libgnomeui >= 2.8
711 Requires: glibc >= 2.3
713 Requires: libart_lgpl >= 2.3
714 Requires: libbonobo >= 2.8
715 Requires: libbonoboui >= 2.8
716 Requires: bonobo-activation
720 %if %{gconsole} && %{fc4}
721 Requires: gtk2 >= 2.6
722 Requires: libgnomeui >= 2.10
723 Requires: glibc >= 2.3
725 Requires: libart_lgpl >= 2.3
726 Requires: libbonobo >= 2.8
727 Requires: libbonoboui >= 2.8
728 Requires: bonobo-activation
732 %if %{gconsole} && %{fc5}
733 Requires: gtk2 >= 2.8
734 Requires: libgnomeui >= 2.14
735 Requires: glibc >= 2.4
737 Requires: libart_lgpl >= 2.3
738 Requires: libbonobo >= 2.14
739 Requires: libbonoboui >= 2.14
743 %if %{gconsole} && %{fc6}
744 Requires: gtk2 >= 2.10
745 Requires: libgnomeui >= 2.16
746 Requires: glibc >= 2.5
748 Requires: libart_lgpl >= 2.3
749 Requires: libbonobo >= 2.16
750 Requires: libbonoboui >= 2.16
754 %if %{gconsole} && ! %{su9} && ! %{su10} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5} && ! %{fc6}
755 Requires: gtk2 >= 2.0
756 Requires: libgnomeui >= 2.0
757 Requires: glibc >= 2.3
759 Requires: libart_lgpl >= 2.0
760 Requires: libbonobo >= 2.0
761 Requires: libbonoboui >= 2.0
762 Requires: bonobo-activation
767 %if %{gconsole} && %{su9}
770 %if %{gconsole} && %{su10}
773 %if %{gconsole} && ! %{su9} && ! %{su10}
778 %description gconsole
789 This is the Gnome Console package. It is an add-on to the client or
795 Summary: Bacula - The Network Backup Solution
796 Group: System Environment/Daemons
797 Requires: wxGTK >= 2.6, libstdc++, openssl
800 %if %{wxconsole} && %{su10}
801 Requires: gtk2 >= 2.8
804 %if %{wxconsole} && %{fc3}
805 Requires: gtk2 >= 2.4
808 %if %{wxconsole} && %{fc4}
809 Requires: gtk2 >= 2.6
812 %if %{wxconsole} && %{fc5}
813 Requires: gtk2 >= 2.8
816 %if %{wxconsole} && %{fc6}
817 Requires: gtk2 >= 2.10
821 %description wxconsole
832 This is the WXWindows Console package. It is an add-on to the client or
846 %if %{su9} || %{su10}
847 export LDFLAGS="${LDFLAGS} -L/usr/lib/termcap"
860 # patches for the bundled sqlite scripts
862 # patch the make_sqlite_tables script for installation bindir
863 patch src/cats/make_sqlite_tables.in src/cats/make_sqlite_tables.in.patch
865 # patch the create_sqlite_database script for installation bindir
866 # not necessary after 1.39.26 no longer references sqlite binary
867 #patch src/cats/create_sqlite_database.in src/cats/create_sqlite_database.in.patch
869 # patch the make_catalog_backup script for installation bindir
870 patch src/cats/make_catalog_backup.in src/cats/make_catalog_backup.in.patch
872 # patch the update_sqlite_tables script for installation bindir
873 patch src/cats/update_sqlite_tables.in src/cats/update_sqlite_tables.in.patch
875 # patch the bacula-dir init script to remove sqlite service
876 %if %{sqlite} && %{su9}
877 patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
879 %if %{sqlite} && %{su10}
880 patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
883 # 64 bit lib location hacks
884 # as of 1.39.18 it should not be necessary to enable x86_64 as configure is
885 # reported to be fixed to properly detect lib locations.
887 export LDFLAGS="${LDFLAGS} -L/usr/lib64"
889 %if %{mysql} && %{x86_64}
890 export LDFLAGS="${LDFLAGS} -L/usr/lib64/mysql"
892 %if %{python} && %{x86_64}
893 export LDFLAGS="${LDFLAGS} -L/usr/lib64/python%{pyver}"
898 --sbindir=/usr/sbin \
899 --sysconfdir=/etc/bacula \
900 --with-scriptdir=/etc/bacula \
901 --enable-smartalloc \
902 --enable-client-only \
912 --sbindir=/usr/sbin \
913 --sysconfdir=/etc/bacula \
914 --with-scriptdir=/etc/bacula \
915 --enable-smartalloc \
919 %if %{gconsole} && ! %{rh8}
920 --enable-tray-monitor \
926 --with-sqlite=${cwd}/%{depkgs}/sqlite \
932 --enable-wx-console \
938 --enable-client-only \
940 --mandir=%{_mandir} \
941 --with-working-dir=%{working_dir} \
942 --with-pid-dir=/var/run \
943 --with-subsys-dir=/var/lock/subsys \
944 --with-dir-user=%{director_daemon_user} \
945 --with-dir-group=%{daemon_group} \
946 --with-sd-user=%{storage_daemon_user} \
947 --with-sd-group=%{storage_daemon_group} \
948 --with-fd-user=%{file_daemon_user} \
949 --with-fd-group=%{daemon_group} \
950 --with-dir-password="XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX" \
951 --with-fd-password="XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX" \
952 --with-sd-password="XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX" \
953 --with-mon-dir-password="XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX" \
954 --with-mon-fd-password="XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX" \
955 --with-mon-sd-password="XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX" \
963 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
964 mkdir -p $RPM_BUILD_ROOT/etc/init.d
965 mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d
966 mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/logfiles
967 mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/services
968 mkdir -p $RPM_BUILD_ROOT/etc/log.d/scripts/services
969 mkdir -p $RPM_BUILD_ROOT/etc/bacula/updatedb
971 %if %{gconsole} || %{wxconsole}
972 mkdir -p $RPM_BUILD_ROOT/usr/share/applications
973 mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps
976 %if %{gconsole} || %{wxconsole}
977 %define usermode_iftrick 1
979 %define usermode_iftrick 0
982 %if %{usermode_iftrick} && ! %{su9} && ! %{su10}
983 mkdir -p $RPM_BUILD_ROOT/etc/pam.d
984 mkdir -p $RPM_BUILD_ROOT/etc/security/console.apps
985 mkdir -p $RPM_BUILD_ROOT/usr/bin
989 mkdir -p $RPM_BUILD_ROOT%{sqlite_bindir}
993 prefix=$RPM_BUILD_ROOT/usr \
994 sbindir=$RPM_BUILD_ROOT/usr/sbin \
995 sysconfdir=$RPM_BUILD_ROOT/etc/bacula \
996 scriptdir=$RPM_BUILD_ROOT/etc/bacula \
997 working_dir=$RPM_BUILD_ROOT%{working_dir} \
998 mandir=$RPM_BUILD_ROOT%{_mandir} \
1001 %if ! %{client_only}
1004 prefix=$RPM_BUILD_ROOT/usr \
1005 sbindir=$RPM_BUILD_ROOT/usr/sbin \
1006 sysconfdir=$RPM_BUILD_ROOT/etc/bacula \
1007 working_dir=$RPM_BUILD_ROOT%{working_dir} \
1008 mandir=$RPM_BUILD_ROOT%{_mandir} \
1013 # make install in manpages installs _everything_ shotgun style
1014 # so now delete what we will not be packaging
1016 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-wxconsole.1.gz
1019 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-console-gnome.1.gz
1020 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-tray-monitor.1.gz
1023 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bsmtp.1.gz
1024 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bacula-dir.8.gz
1025 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bacula-sd.8.gz
1026 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bcopy.8.gz
1027 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bextract.8.gz
1028 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bls.8.gz
1029 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bscan.8.gz
1030 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/btape.8.gz
1031 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/dbcheck.8.gz
1034 # fixme - make installs the mysql scripts for sqlite build
1036 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
1037 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
1038 rm -f $RPM_BUILD_ROOT/etc/bacula/grant_mysql_privileges
1041 # fixme - make installs the mysql scripts for postgresql build
1043 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
1044 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
1047 # fixme - make installs gconsole script for build without gconsole
1049 rm -f $RPM_BUILD_ROOT/etc/bacula/gconsole
1052 rm -f $RPM_BUILD_ROOT/usr/sbin/static-bacula-fd
1054 # install the init scripts
1055 %if %{su9} || %{su10}
1056 cp -p platforms/suse/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1057 cp -p platforms/suse/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1058 cp -p platforms/suse/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1061 cp -p platforms/mandrake/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1062 cp -p platforms/mandrake/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1063 cp -p platforms/mandrake/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1065 %if ! %{su9} && ! %{su10} && ! %{mdk}
1066 cp -p platforms/redhat/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1067 cp -p platforms/redhat/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1068 cp -p platforms/redhat/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1070 chmod 0754 $RPM_BUILD_ROOT/etc/init.d/*
1072 rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1073 rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1076 # install the menu stuff
1077 %if %{gconsole} && %{su9}
1078 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1079 cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1080 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1081 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1083 %if %{gconsole} && %{su10}
1084 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1085 cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1086 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1087 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1089 %if %{wxconsole} && %{su10}
1090 cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
1091 cp -p scripts/wxconsole.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
1093 %if %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{fc3} || %{fc4} || %{fc5} || %{mdk}
1098 %if %{gconsole} && %{iftrick}
1099 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1100 cp -p scripts/bacula.desktop.gnome2.consolehelper $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1101 cp -p scripts/gnome-console.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/gnome-console
1102 cp -p scripts/gnome-console.pamd $RPM_BUILD_ROOT/etc/pam.d/gnome-console
1103 ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/gnome-console
1105 %if %{gconsole} && ! %{rh8}
1106 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1107 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1109 %if %{wxconsole} && %{iftrick}
1110 cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
1111 cp -p scripts/wxconsole.desktop.consolehelper $RPM_BUILD_ROOT/usr/share/applications/wxconsole.desktop
1112 cp -p scripts/wxconsole.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/wxconsole
1113 cp -p scripts/wxconsole.pamd $RPM_BUILD_ROOT/etc/pam.d/wxconsole
1114 ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/wxconsole
1119 cp -p %{depkgs}/sqlite/sqlite $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite
1120 cp -p %{depkgs}/sqlite/sqlite.h $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite.h
1121 cp -p %{depkgs}/sqlite/libsqlite.a $RPM_BUILD_ROOT%{sqlite_bindir}/libsqlite.a
1124 # install the logrotate file
1125 cp -p scripts/logrotate $RPM_BUILD_ROOT/etc/logrotate.d/bacula
1127 # install the updatedb scripts
1128 cp -p updatedb/* $RPM_BUILD_ROOT/etc/bacula/updatedb/
1130 # install the logwatch scripts
1131 %if ! %{client_only}
1132 cp -p scripts/logwatch/bacula $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
1133 cp -p scripts/logwatch/logfile.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
1134 cp -p scripts/logwatch/services.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
1135 chmod 755 $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
1136 chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
1137 chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
1140 # install the rescue files
1141 mkdir $RPM_BUILD_ROOT/etc/bacula/rescue
1142 cp -p %{_rescuesrc}/Makefile* $RPM_BUILD_ROOT/etc/bacula/rescue/
1143 cp -p %{_rescuesrc}/README $RPM_BUILD_ROOT/etc/bacula/rescue/
1144 cp -p %{_rescuesrc}/configure $RPM_BUILD_ROOT/etc/bacula/rescue/
1145 cp -p %{_rescuesrc}/version.h $RPM_BUILD_ROOT/etc/bacula/rescue/
1146 cp -pr %{_rescuesrc}/linux $RPM_BUILD_ROOT/etc/bacula/rescue/
1147 cp -pr %{_rescuesrc}/autoconf $RPM_BUILD_ROOT/etc/bacula/rescue/
1148 touch $RPM_BUILD_ROOT/etc/bacula/rescue/linux/cdrom/rpm_release
1149 cp -p src/filed/static-bacula-fd $RPM_BUILD_ROOT/etc/bacula/rescue/linux/cdrom/bacula/bin/bacula-fd
1150 rm -f src/filed/static-bacula-fd
1153 mv $RPM_BUILD_ROOT/usr/sbin/wx-console $RPM_BUILD_ROOT/usr/sbin/wxconsole
1154 mv $RPM_BUILD_ROOT/etc/bacula/wx-console.conf $RPM_BUILD_ROOT/etc/bacula/wxconsole.conf
1157 # now clean up permissions that are left broken by the install
1158 %if ! %{client_only}
1159 chmod o-r $RPM_BUILD_ROOT/etc/bacula/query.sql
1161 chmod o-rwx $RPM_BUILD_ROOT%{working_dir}
1162 %if %{gconsole} && ! %{rh8}
1163 chmod 755 $RPM_BUILD_ROOT/usr/sbin/bacula-tray-monitor
1164 chmod 644 $RPM_BUILD_ROOT/etc/bacula/tray-monitor.conf
1167 # fix me - building enable-client-only installs files not included in bacula-client package
1169 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula
1170 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula-ctl-dir
1171 rm -f $RPM_BUILD_ROOT/etc/bacula/bacula-ctl-sd
1172 rm -f $RPM_BUILD_ROOT/etc/bacula/disk-changer
1173 rm -f $RPM_BUILD_ROOT/etc/bacula/dvd-handler
1174 rm -f $RPM_BUILD_ROOT/etc/bacula/mtx-changer
1175 rm -f $RPM_BUILD_ROOT/etc/bacula/startmysql
1176 rm -f $RPM_BUILD_ROOT/etc/bacula/stopmysql
1177 rm -rf $RPM_BUILD_ROOT/etc/bacula/updatedb
1181 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
1182 rm -rf $RPM_BUILD_DIR/%{name}-docs-%{docs_version}
1183 rm -rf $RPM_BUILD_DIR/%{name}-rescue-%{_rescuever}
1184 rm -rf $RPM_BUILD_DIR/depkgs
1185 rm -f $RPM_BUILD_DIR/Release_Notes-%{version}-%{release}.txt
1188 # MySQL specific files
1190 %defattr(-, root, root)
1191 %attr(-, root, %{daemon_group}) /etc/bacula/create_mysql_database
1192 %attr(-, root, %{daemon_group}) /etc/bacula/drop_mysql_database
1193 %attr(-, root, %{daemon_group}) /etc/bacula/make_mysql_tables
1194 %attr(-, root, %{daemon_group}) /etc/bacula/drop_mysql_tables
1195 %attr(-, root, %{daemon_group}) /etc/bacula/update_mysql_tables
1196 %attr(-, root, %{daemon_group}) /etc/bacula/grant_mysql_privileges
1197 %attr(-, root, %{daemon_group}) /etc/bacula/startmysql
1198 %attr(-, root, %{daemon_group}) /etc/bacula/stopmysql
1203 %defattr(-,root,root)
1204 %attr(-, root, %{daemon_group}) /etc/bacula/create_sqlite_database
1205 %attr(-, root, %{daemon_group}) /etc/bacula/drop_sqlite_database
1206 %attr(-, root, %{daemon_group}) /etc/bacula/grant_sqlite_privileges
1207 %attr(-, root, %{daemon_group}) /etc/bacula/make_sqlite_tables
1208 %attr(-, root, %{daemon_group}) /etc/bacula/drop_sqlite_tables
1209 %attr(-, root, %{daemon_group}) /etc/bacula/update_sqlite_tables
1210 %{sqlite_bindir}/libsqlite.a
1211 %{sqlite_bindir}/sqlite.h
1212 %{sqlite_bindir}/sqlite
1217 %defattr(-,root,root)
1218 %attr(-, root, %{daemon_group}) /etc/bacula/create_postgresql_database
1219 %attr(-, root, %{daemon_group}) /etc/bacula/drop_postgresql_database
1220 %attr(-, root, %{daemon_group}) /etc/bacula/make_postgresql_tables
1221 %attr(-, root, %{daemon_group}) /etc/bacula/drop_postgresql_tables
1222 %attr(-, root, %{daemon_group}) /etc/bacula/update_postgresql_tables
1223 %attr(-, root, %{daemon_group}) /etc/bacula/grant_postgresql_privileges
1226 # The rest is DB backend independent
1227 %if ! %{client_only}
1228 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1229 %attr(-, root, %{daemon_group}) /etc/bacula/bacula
1230 %attr(-, root, %{daemon_group}) /etc/bacula/bconsole
1231 %attr(-, root, %{daemon_group}) /etc/bacula/create_bacula_database
1232 %attr(-, root, %{daemon_group}) /etc/bacula/drop_bacula_database
1233 %attr(-, root, %{daemon_group}) /etc/bacula/grant_bacula_privileges
1234 %attr(-, root, %{daemon_group}) /etc/bacula/make_bacula_tables
1235 %attr(-, root, %{daemon_group}) /etc/bacula/drop_bacula_tables
1236 %attr(-, root, %{daemon_group}) /etc/bacula/update_bacula_tables
1237 %attr(-, root, %{daemon_group}) /etc/bacula/make_catalog_backup
1238 %attr(-, root, %{daemon_group}) /etc/bacula/delete_catalog_backup
1239 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.dbx
1240 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.gdb
1241 %attr(-, root, %{daemon_group}) /etc/bacula/rescue
1242 %attr(-, root, %{daemon_group}) /etc/bacula/disk-changer
1243 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-dir
1244 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-fd
1245 %attr(-, root, %{daemon_group}) /etc/bacula/bacula-ctl-sd
1246 %attr(-, root, %{daemon_group}) /etc/init.d/bacula-dir
1247 %attr(-, root, %{daemon_group}) /etc/init.d/bacula-fd
1248 %attr(-, root, %{storage_daemon_group}) /etc/bacula/dvd-handler
1249 %attr(-, root, %{storage_daemon_group}) /etc/init.d/bacula-sd
1250 %attr(-, root, %{storage_daemon_group}) /etc/bacula/mtx-changer
1252 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo
1253 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
1255 /etc/logrotate.d/bacula
1256 /etc/log.d/scripts/services/bacula
1257 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-dir.conf
1258 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-fd.conf
1259 %attr(-, root, %{storage_daemon_group}) %config(noreplace) /etc/bacula/bacula-sd.conf
1260 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bconsole.conf
1261 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/logfiles/bacula.conf
1262 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/services/bacula.conf
1263 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/query.sql
1265 %attr(-, %{storage_daemon_user}, %{daemon_group}) %dir %{working_dir}
1267 /usr/sbin/bacula-dir
1275 /usr/sbin/btraceback
1281 %{_mandir}/man8/bacula-fd.8.%{manpage_ext}
1282 %{_mandir}/man8/bacula-dir.8.%{manpage_ext}
1283 %{_mandir}/man8/bacula-sd.8.%{manpage_ext}
1284 %{_mandir}/man8/bacula.8.%{manpage_ext}
1285 %{_mandir}/man8/bconsole.8.%{manpage_ext}
1286 %{_mandir}/man8/bcopy.8.%{manpage_ext}
1287 %{_mandir}/man8/bextract.8.%{manpage_ext}
1288 %{_mandir}/man8/bls.8.%{manpage_ext}
1289 %{_mandir}/man8/bscan.8.%{manpage_ext}
1290 %{_mandir}/man8/btape.8.%{manpage_ext}
1291 %{_mandir}/man8/btraceback.8.%{manpage_ext}
1292 %{_mandir}/man8/dbcheck.8.%{manpage_ext}
1293 %{_mandir}/man1/bsmtp.1.%{manpage_ext}
1298 # test for bacula database older than version 9
1299 # note: this ASSUMES no password has been set for bacula database
1300 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
1305 # test for bacula database older than version 9
1306 if [ -s %{working_dir}/bacula.db ] && [ -s %{sqlite_bindir}/sqlite ];then
1307 DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
1312 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
1315 %if ! %{client_only}
1316 if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "9" ]; then
1317 echo "This bacula upgrade will update a bacula database from version 9 to 10."
1318 echo "You appear to be running database version $DB_VER. You must first update"
1319 echo "your database to version 9 and then install this upgrade. The alternative"
1320 echo "is to use /etc/bacula/drop_%{db_backend}_tables to delete all your your current"
1321 echo "catalog information, then do the upgrade. Information on updating a"
1322 echo "database older than version 9 can be found in the release notes."
1331 %if ! %{client_only}
1332 # check for and copy /etc/bacula/console.conf to bconsole.conf
1333 if [ -s /etc/bacula/console.conf ];then
1334 cp -p /etc/bacula/console.conf /etc/bacula/bconsole.conf
1337 # create the daemon users and groups
1338 # first create the groups if they don't exist
1339 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1340 if [ -z "$HAVE_BACULA" ]; then
1341 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1342 echo "The group %{daemon_group} has been added to %{group_file}."
1343 echo "See the manual chapter \"Running Bacula\" for details."
1345 HAVE_BACULA=`grep %{storage_daemon_group} %{group_file} 2>/dev/null`
1346 if [ -z "$HAVE_BACULA" ]; then
1347 %{groupadd} -r %{storage_daemon_group} > /dev/null 2>&1
1348 echo "The group %{storage_daemon_group} has been added to %{group_file}."
1349 echo "See the manual chapter \"Running Bacula\" for details."
1351 # now create the users if they do not exist
1352 # we do not use the -g option allowing the primary group to be set to system default
1353 # this will be a unique group on redhat type systems or the group users on some systems
1354 HAVE_BACULA=`grep %{storage_daemon_user} %{user_file} 2>/dev/null`
1355 if [ -z "$HAVE_BACULA" ]; then
1356 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{storage_daemon_group} -M -s /sbin/nologin %{storage_daemon_user} > /dev/null 2>&1
1357 echo "The user %{storage_daemon_user} has been added to %{user_file}."
1358 echo "See the manual chapter \"Running Bacula\" for details."
1360 HAVE_BACULA=`grep %{director_daemon_user} %{user_file} 2>/dev/null`
1361 if [ -z "$HAVE_BACULA" ]; then
1362 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{director_daemon_user} > /dev/null 2>&1
1363 echo "The user %{director_daemon_user} has been added to %{user_file}."
1364 echo "See the manual chapter \"Running Bacula\" for details."
1366 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
1367 if [ -z "$HAVE_BACULA" ]; then
1368 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
1369 echo "The user %{file_daemon_user} has been added to %{user_file}."
1370 echo "See the manual chapter \"Running Bacula\" for details."
1372 # now we add the supplementary groups, this is ok to call even if the users already exist
1373 # we only do this if the user is NOT root
1374 IS_ROOT=%{director_daemon_user}
1375 if [ "$IS_ROOT" != "root" ]; then
1376 %{usermod} -G %{daemon_group} %{director_daemon_user}
1378 IS_ROOT=%{storage_daemon_user}
1379 if [ "$IS_ROOT" != "root" ]; then
1380 %{usermod} -G %{daemon_group},%{storage_daemon_group} %{storage_daemon_user}
1382 IS_ROOT=%{file_daemon_user}
1383 if [ "$IS_ROOT" != "root" ]; then
1384 %{usermod} -G %{daemon_group} %{file_daemon_user}
1398 %if ! %{client_only}
1400 if [ "$1" -ge 1 ] ; then
1401 /sbin/chkconfig --add bacula-dir
1402 /sbin/chkconfig --add bacula-fd
1403 /sbin/chkconfig --add bacula-sd
1408 # test for an existing database
1409 # note: this ASSUMES no password has been set for bacula database
1410 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
1412 # grant privileges and create tables if they do not exist
1413 if [ -z "$DB_VER" ]; then
1414 echo "Hmm, doesn't look like you have an existing database."
1415 echo "Granting privileges for MySQL user bacula..."
1416 /etc/bacula/grant_mysql_privileges
1417 echo "Creating MySQL bacula database..."
1418 /etc/bacula/create_mysql_database
1419 echo "Creating bacula tables..."
1420 /etc/bacula/make_mysql_tables
1422 # check to see if we need to upgrade a 1.38 or lower database
1423 elif [ "$DB_VER" -lt "10" ]; then
1424 echo "This release requires an upgrade to your bacula database."
1425 echo "Backing up your current database..."
1426 mysqldump -f --opt bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1427 echo "Upgrading bacula database ..."
1428 /etc/bacula/update_mysql_tables
1429 echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1435 # test for an existing database
1436 if [ -s %{working_dir}/bacula.db ]; then
1437 DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
1438 # check to see if we need to upgrade a 1.38 or lower database
1439 if [ "$DB_VER" -lt "10" ] && [ "$DB_VER" -ge "9" ]; then
1440 echo "This release requires an upgrade to your bacula database."
1441 echo "Backing up your current database..."
1442 echo ".dump" | %{sqlite_bindir}/sqlite %{working_dir}/bacula.db | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1443 echo "Upgrading bacula database ..."
1444 /etc/bacula/update_sqlite_tables
1445 echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1448 # create the database and tables
1449 echo "Hmm, doesn't look like you have an existing database."
1450 echo "Creating SQLite database..."
1451 /etc/bacula/create_sqlite_database
1452 echo "Creating the SQLite tables..."
1453 /etc/bacula/make_sqlite_tables
1458 # test for an existing database
1459 # note: this ASSUMES no password has been set for bacula database
1460 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
1462 # grant privileges and create tables if they do not exist
1463 if [ -z "$DB_VER" ]; then
1464 echo "Hmm, doesn't look like you have an existing database."
1465 echo "Creating PostgreSQL bacula database..."
1466 /etc/bacula/create_postgresql_database
1467 echo "Creating bacula tables..."
1468 /etc/bacula/make_postgresql_tables
1469 echo "Granting privileges for PostgreSQL user bacula..."
1470 /etc/bacula/grant_postgresql_privileges
1472 # check to see if we need to upgrade a 1.38 or lower database
1473 elif [ "$DB_VER" -lt "10" ]; then
1474 echo "This release requires an upgrade to your bacula database."
1475 echo "Backing up your current database..."
1476 pg_dump bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1477 echo "Upgrading bacula database ..."
1478 /etc/bacula/update_postgresql_tables
1479 echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1484 %if ! %{client_only}
1485 # generate passwords if needed
1486 if [ -d /etc/bacula ]; then
1488 for file in *.conf; do
1489 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
1490 need_password=`grep $string $file 2>/dev/null`
1491 if [ -n "$need_password" ]; then
1492 pass=`openssl rand -base64 33`
1493 sed "s-$string-$pass-g" $file > $file.new
1494 cp -f $file.new $file; rm -f $file.new
1511 %if ! %{client_only}
1514 /sbin/chkconfig --del bacula-dir
1515 /sbin/chkconfig --del bacula-fd
1516 /sbin/chkconfig --del bacula-sd
1521 %if ! %{client_only}
1523 %defattr(-,root,root)
1524 %attr(-, root, %{storage_daemon_group}) /usr/sbin/loaderinfo
1525 %attr(-, root, %{storage_daemon_group}) /usr/sbin/mtx
1526 %attr(-, root, %{storage_daemon_group}) /usr/sbin/scsitape
1527 %attr(-, root, %{storage_daemon_group}) /usr/sbin/tapeinfo
1528 %{_mandir}/man1/loaderinfo.1.%{manpage_ext}
1529 %{_mandir}/man1/mtx.1.%{manpage_ext}
1530 %{_mandir}/man1/scsitape.1.%{manpage_ext}
1531 %{_mandir}/man1/tapeinfo.1.%{manpage_ext}
1536 %defattr(-,root,root)
1537 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1538 %attr(-, root, %{daemon_group}) /etc/bacula/bconsole
1539 /etc/bacula/bacula-ctl-fd
1540 /etc/init.d/bacula-fd
1541 %attr(-, root, %{daemon_group}) /etc/bacula/rescue
1543 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo
1544 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
1546 /etc/logrotate.d/bacula
1548 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bacula-fd.conf
1549 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/bconsole.conf
1551 %attr(-, root, %{daemon_group}) %dir %{working_dir}
1554 /usr/sbin/btraceback
1555 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.gdb
1556 %attr(-, root, %{daemon_group}) /etc/bacula/btraceback.dbx
1558 %{_mandir}/man8/bacula-fd.8.%{manpage_ext}
1559 %{_mandir}/man8/bacula.8.%{manpage_ext}
1560 %{_mandir}/man8/bconsole.8.%{manpage_ext}
1561 %{_mandir}/man8/btraceback.8.%{manpage_ext}
1565 # create the daemon group and user
1566 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1567 if [ -z "$HAVE_BACULA" ]; then
1568 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1569 echo "The group %{daemon_group} has been added to %{group_file}."
1570 echo "See the manual chapter \"Running Bacula\" for details."
1572 # we do not use the -g option allowing the primary group to be set to system default
1573 # this will be a unique group on redhat type systems or the group users on some systems
1574 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
1575 if [ -z "$HAVE_BACULA" ]; then
1576 %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
1577 echo "The user %{file_daemon_user} has been added to %{user_file}."
1578 echo "See the manual chapter \"Running Bacula\" for details."
1580 # now we add the supplementary group, this is ok to call even if the user already exists
1581 # we only do this if the user is NOT root
1582 IS_ROOT=%{file_daemon_user}
1583 if [ "$IS_ROOT" != "root" ]; then
1584 %{usermod} -G %{daemon_group} %{file_daemon_user}
1589 if [ "$1" -ge 1 ] ; then
1590 /sbin/chkconfig --add bacula-fd
1593 # generate passwords if needed
1594 if [ -d /etc/bacula ]; then
1596 for file in *.conf; do
1597 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
1598 need_password=`grep $string $file 2>/dev/null`
1599 if [ -n "$need_password" ]; then
1600 pass=`openssl rand -base64 33`
1601 sed "s-$string-$pass-g" $file > $file.new
1602 cp -f $file.new $file; rm -f $file.new
1611 /sbin/chkconfig --del bacula-fd
1614 %if ! %{client_only}
1616 %defattr(-,root,%{daemon_group})
1617 /etc/bacula/updatedb/*
1620 # create the daemon group
1621 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1622 if [ -z "$HAVE_BACULA" ]; then
1623 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1624 echo "The group %{daemon_group} has been added to %{group_file}."
1625 echo "See the manual chapter \"Running Bacula\" for details."
1629 echo "The database update scripts were installed to /etc/bacula/updatedb"
1634 %defattr(-,root,root)
1635 /usr/sbin/gnome-console
1636 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1637 %attr(-, root, %{daemon_group}) /etc/bacula/gconsole
1638 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/gnome-console.conf
1639 /usr/share/pixmaps/bacula.png
1640 /usr/share/applications/bacula.desktop
1641 %{_mandir}/man1/bacula-console-gnome.1.%{manpage_ext}
1644 %if %{gconsole} && ! %{rh8}
1645 /usr/sbin/bacula-tray-monitor
1646 %config(noreplace) /etc/bacula/tray-monitor.conf
1647 /usr/share/pixmaps/bacula-tray-monitor.xpm
1648 /usr/share/applications/bacula-tray-monitor.desktop
1649 %{_mandir}/man1/bacula-tray-monitor.1.%{manpage_ext}
1652 %if %{gconsole} && ! %{su9} && ! %{su10}
1653 # add the console helper files
1654 %config(noreplace,missingok) /etc/pam.d/gnome-console
1655 %config(noreplace,missingok) /etc/security/console.apps/gnome-console
1656 /usr/bin/gnome-console
1661 # create the daemon group
1662 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1663 if [ -z "$HAVE_BACULA" ]; then
1664 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1665 echo "The group %{daemon_group} has been added to %{group_file}."
1666 echo "See the manual chapter \"Running Bacula\" for details."
1670 # generate passwords if needed
1671 if [ -d /etc/bacula ]; then
1673 for file in *.conf; do
1674 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
1675 need_password=`grep $string $file 2>/dev/null`
1676 if [ -n "$need_password" ]; then
1677 pass=`openssl rand -base64 33`
1678 sed "s-$string-$pass-g" $file > $file.new
1679 cp -f $file.new $file; rm -f $file.new
1688 %defattr(-,root,root)
1690 %attr(-, root, %{daemon_group}) %dir /etc/bacula
1691 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/bacula/wxconsole.conf
1692 /usr/share/pixmaps/wxwin16x16.xpm
1693 /usr/share/applications/wxconsole.desktop
1694 %{_mandir}/man1/bacula-wxconsole.1.%{manpage_ext}
1697 %if %{wxconsole} && ! %{su9} && ! %{su10}
1698 # add the console helper files
1699 %config(noreplace,missingok) /etc/pam.d/wxconsole
1700 %config(noreplace,missingok) /etc/security/console.apps/wxconsole
1706 # create the daemon group
1707 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1708 if [ -z "$HAVE_BACULA" ]; then
1709 %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1710 echo "The group %{daemon_group} has been added to %{group_file}."
1711 echo "See the manual chapter \"Running Bacula\" for details."
1715 # generate passwords if needed
1716 if [ -d /etc/bacula ]; then
1718 for file in *.conf; do
1719 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
1720 need_password=`grep $string $file 2>/dev/null`
1721 if [ -n "$need_password" ]; then
1722 pass=`openssl rand -base64 33`
1723 sed "s-$string-$pass-g" $file > $file.new
1724 cp -f $file.new $file; rm -f $file.new
1732 * Sat Jan 20 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
1734 - set query.sql as config file
1736 * Sun Jan 14 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
1738 - change determination of gcc version per patch from Marc Hennes
1739 - move BuildRequire for atk-devel to gnome only builds
1741 * Sat Jan 06 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
1743 * Sun Oct 15 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1744 - 1.39.26 remove create_sqlite_database.in.patch
1745 * Sun Sep 24 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1746 - change ownership of working_dir on server packages to bacula.bacula so that
1747 - bacula-sd can create bootstrap files
1748 * Sat Sep 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1749 - 1.39.22 remove separate cd and make of manpages the main Makefile does it now
1750 * Sun Aug 06 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1751 - fix manpages file extension for mdk
1752 * Sat Aug 05 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1753 - bug 648 re-enable and update sqlite patches
1757 - lock out gconsole build for gtk+ < 2.4
1758 * Mon Jul 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1759 - move pango-devel BuildRequires into gconsole only build
1760 * Sat Jul 15 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1761 - add provides and conflicts for standard suse packages
1762 - add third party packager tag support
1763 - add build_client_only tag
1764 - remove bsmtp from client package
1765 - add bacula-ctl-fd to client package
1766 * Thu Jul 13 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1767 - fix directory creation when wxconsole and not gconsole
1768 * Tue Jul 04 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1769 - add check to buildrequires to make sure libstdc++ version matches gcc
1770 * Mon Jul 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1771 - add python build support
1772 - fix LDFLAGS declarations
1773 * Sun Jul 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1774 - add requires for standard compiler toolchain
1775 - move version and release tags up
1777 - add docs_version tag
1778 * Sat Jul 01 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1779 - update rescuever to 1.8.6
1780 * Sun Jun 25 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1781 - update depkgs to 25Jun06
1782 - add mysql5 build tag
1783 * Mon Jun 12 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1784 - 1.38.10 bump rescue version
1785 * Sun Jun 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1786 - fix usermod statements
1788 * Thu Apr 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1789 - add -g param back to useradd statements Bug 605
1790 * Mon Apr 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1791 - redundant code cleanup
1792 * Sun Apr 16 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1793 - add wxconsole package
1794 * Fri Apr 14 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1796 - dependency update for Mandriva
1797 * Sun Apr 08 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1799 - remove -n option from useradd scripts
1800 * Sun Apr 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1802 - fix problem specifying more than one primary group for user bacula
1803 - add build switch to not build gconsole regardless of platform
1804 * Sun Jan 29 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1805 - add centos3 build tag
1806 - fix link error of static-fd on Mandrake with --disable-nls
1807 * Fri Jan 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1808 - add fc4 dependencies
1809 * Mon Jan 23 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1810 - add SuSE 10.0 build
1811 - remove specific permission in attrib macros
1812 * Sat Jan 21 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1814 - fix usermode required on suse, suse doesn't have usermode (xsu instead)
1815 - refix compat for _dist on SLES9 which seems to have been removed
1816 - added note regarding Aleksandar's use of specific permissions in attrib macros
1817 - need to review and add specific fc4 build currently using fc3 Requires
1818 * Wed Dec 14 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1820 - Reorganize files and pre/post sections to remove repetitions
1821 - Always build separate mtx package
1822 - Fix file ownerships for /etc/bacula and Bacula's working dir
1823 * Wed Nov 23 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1824 - Disable GNOME on RH7
1825 * Fri Nov 18 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1826 - Red Hat and look alikes have mtx RPM, do not build/package our version
1827 * Sun Nov 13 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1828 - minor edit to _dist for SLES9 compatibility
1829 * Sat Nov 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1831 - kern changed location of pdf files and html manual in docs package
1832 * Sun Oct 30 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1834 - add docs (from prebuilt tarball) and rescue packages back in
1835 - remove dvd-freespace and dvd-writepart files, add dvd-handler
1836 - remove 3 of 4 sqlite script patches as not needed
1837 * Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1839 - remove docs and rescue sections (remove static fd)
1840 - add dvd-freespace and dvd-writepart files
1841 - update depkgs to 22Jun05
1842 - change database update to 8 to 9
1843 * Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1844 - minor cleanups before 1.38 changes
1845 - add popt and popt-devel build dependencies
1846 - add tetex and tetex-dvips dependencies for doc build
1847 - replace deprecated Copyright tag with License
1848 * Sat May 07 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1849 - move sqlite installation bindir to /usr/lib/bacula/sqlite and remove
1850 - conflict with sqlite packages. remove readline dependency.
1851 * Sun Apr 17 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1852 - release 1.36.3 update docs
1853 * Tue Apr 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1854 - add centos4 build tag
1855 - add x86_64 build tag
1856 * Sun Apr 03 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1857 - add rhel4 build tag
1858 - clean up for mysql4 which is now mdk-10.1, suse-9.2 and rhel4
1859 * Sun Mar 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1860 - add rhel3 build tag
1861 * Tue Mar 01 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1862 - fix tray-monitor.conf for noreplace
1863 * Mon Feb 28 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1864 - fix distribution check for Fedora and Whitebox
1865 * Sun Feb 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1866 - add logwatch script
1868 * Sat Jan 15 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1869 - add build for Fedora Core 3 (linc now included in ORDit2)
1870 - add mysql4 define for Mandrake 10.1
1871 * Fri Jan 14 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1872 - fix {group_file} variable in post scripts
1873 * Thu Dec 30 2004 D. Scott Barninger <barninger@fairfieldcomputers.com>
1874 - add distribution checking and custom Distribution tag
1875 * Thu Dec 09 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1876 - ASSIGNMENT OF COPYRIGHT
1877 - FOR VALUE RECEIVED, D. Scott Barninger hereby sells, transfers and
1878 - assigns unto Kern Sibbald, his successors, assigns and personal representatives,
1879 - all right, title and interest in and to the copyright in this software RPM
1880 - spec file. D. Scott Barninger warrants good title to said copyright, that it is
1881 - free of all liens, encumbrances or any known claims against said copyright.
1882 * Sat Dec 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1884 - thanks to Daniel Widyono
1885 - update description for rescue package to describe cdrom creation
1886 * Thu Nov 18 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1887 - update depkgs to 29Oct04
1888 * Fri Nov 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1889 - add cdrom rescue to bacula-rescue package
1890 * Sun Oct 31 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1891 - misc fixes from 1.36.0 suse feedback
1892 - fix situation where sqlite database exists but sqlite has been removed.
1893 * Fri Oct 22 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1894 - remove tray-monitor from RH8 build
1895 - fix permissions on tray-monitor files
1896 * Wed Oct 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1897 - add Mandrake support and tray-monitor, misc changes for 1.35.8/1.36.0,
1898 - change database update to 7 to 8 upgrade,
1899 - revert depkgs to 08Mar04 as there seems to be a bug in the sqlite
1900 - build in 30Jul04, add freetype dependancy to gnome package.
1901 * Sun Sep 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1902 - add documentation to console for groupadd
1903 * Sat Sep 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1904 - add support for running daemons as root.bacula
1905 - correct for change in location of floppy rescue files in 1.35.2
1906 - removed /etc/bacula/fd script from all packages as it has disappeared from 1.35.2
1907 - updated depgkgs to 30Jul04
1908 * Thu Jun 24 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1909 - really, really fix symlink creation for gconsole
1910 * Thu Jun 17 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1911 - fix symlink creation in gconsole post install
1912 * Sat Jun 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1913 - fixed error in gconsole post script
1914 * Fri Apr 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1915 - add check for gconsole symlink before trying to create it
1916 * Sun Apr 11 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1917 - fix some minor permissions issues on doc files that CVS won't let us fix
1918 * Sun Apr 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1919 - add pkgconfig to BuildRequires
1920 - clean up gnome1/2 menu entries for appropriate packages
1921 * Fri Apr 02 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1922 - tightened up doc distribution
1923 * Tue Mar 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1924 - added usermode (Redhat) and xsu (SuSE) support for gnome-console;
1925 - rpm's horrible bug that prevents nested conditional macros prevents me
1926 - from implementing these 2 separate approaches within the conditionals which
1927 - create the separate server packages.
1928 - the solution adopted is to remove the gnome-console files from the server packages
1929 - so bacula-gconsole is now an add on for both client and server packages.
1930 - this also now allows the server packages to be install on machines without
1931 - an X-server and we can still maintain a single spec file.
1932 - added tests to make sure we have defined platform and database macros.
1933 * Sat Mar 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1934 - corrected mysql prerequisites for suse
1935 * Mon Mar 1 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1936 - replaced all cp commands with cp -p
1937 - removed addition of a+x permissions on gnome-console
1938 - corrected permissions on init scripts
1939 * Sat Feb 28 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1940 - corrected creation of sqlite_bindir in install from !mysql to sqlite
1942 - various cleanup patches from Michael K. Johnson:
1943 - corrected post install routines for nicer chkconfig
1944 - removed chmod changes in post routines and moved to install section
1945 - removed interactive nature of post routine for rescue package
1946 - added description of building rescue disks to the description of rescue package
1947 - added clean of build root to beginning of install
1948 - removed specifying attr in all file lists
1949 * Fri Feb 20 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1950 - added bconsole to client package
1951 - added gconsole package as add-on to client
1952 - removed spurious dependancies on updatedb package (!cut/paste)
1953 * Thu Feb 19 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1954 - added updatedb package
1955 * Thu Feb 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1956 - added postgresql package
1957 * Wed Feb 11 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1958 - corrected the if else logic in the dependancy sections
1959 - changes for 1.34 release
1960 - /etc/bacula/console is now /etc/bacula/bconsole
1961 - /etc/bacula/console.conf is now /etc/bacula/bconsole.conf
1962 - /usr/sbin/btraceback.gdb is now /etc/bacula/btraceback.gdb
1963 - /usr/sbin/smtp is now /usr/sbin/bsmtp
1964 - added new /etc/bacula/drop_mysql_database
1965 - added new /etc/bacula/drop_sqlite_database
1966 - added new /etc/bacula/grant_sqlite_privileges
1967 - added new generic bacula database scripts in /etc/bacula
1968 - added pre-install sections to check for database versions older than 6
1969 - added check for /etc/bacula/console.conf and copy to bconsole.conf
1970 * Sun Feb 08 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1971 - added /etc/bacula/update_sqlite_tables and /etc/bacula/update_mysql_tables for 1.34 release
1972 - added testing for existing databases before executing any of the database creation scripts
1973 - added defines working_dir and sqlite_bindir in place of hard coded paths
1974 * Sat Jan 31 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1975 - added build configuration for SuSE.
1976 - Thanks to Matt Vollmar <matt at panamschool.edu.sv> for his input
1977 * Sat Jan 24 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1978 - added patch for create_sqlite_database to fix the installed bindir
1979 - added execute of create_sqlite_database to post of sqlite package
1980 * Sat Jan 10 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1981 - added virtual package Provides bacula-dir, bacula-sd, bacula-fd
1982 - added bacula-fd as Requires for rescue package
1983 - added build tag for Fedora Core 1
1984 - cleaned up dependancies for all builds
1985 * Thu Jan 1 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1986 - removed rh_version from package names
1987 - added platform build configuration section to beginning of file
1988 * Tue Nov 25 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1989 - removed make_static_bacula script from rescue package install
1990 * Sun Nov 23 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1991 - Added define at top of file for depkgs version
1992 - Added rescue sub-package
1993 - Moved requires statements into proper sub-package locations
1994 * Mon Oct 27 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1995 - Corrected Requires for Gnome 1.4/2.0 builds
1996 * Fri Oct 24 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
1997 - Added separate source declaration for depkgs
1998 - added patch for make_catalog_backup script
1999 * Mon May 11 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
2000 - Misc changes to mysql/sqlite build and rh7/8 menu differences
2001 - Added rh_version to sub-package names
2002 - Added installed but missing file /etc/bacula/gconsole
2003 - rm'd /etc/bacula/grant_mysql_privileges on sqlite builds
2004 * Thu May 08 2003 Kern Sibbald <kern at sibbald.com>
2005 - Update spec for version 1.31 and combine client
2006 * Sun Mar 30 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>