]> git.sur5r.net Git - bacula/bacula/blob - bacula/platforms/mandrake/bacula.spec.in
70d0529210efe3e463d7b8465e8ec54f9f55bce1
[bacula/bacula] / bacula / platforms / mandrake / bacula.spec.in
1 # Bacula RPM spec file
2 # Copyright (C) 2000-2007 Free Software Foundation Europe, e.V.
3
4 # Platform Build Configuration
5
6 # basic defines for every build
7 %define _version @VERSION@
8 %define _release 1
9 %define depkgs_version 04Jan07
10 %define _rescuever 2.0.0
11 %define docs_version @VERSION@
12
13 # any patches for this release
14 # be sure to check the setup section for patch macros
15
16
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 #--------------------------------------------------------------------------
21
22 # third party packagers
23 %define _packager D. Scott Barninger <barninger@fairfieldcomputers.com>
24 %{?contrib_packager:%define _packager %{contrib_packager}}
25
26 Summary: Bacula - The Network Backup Solution
27 Name: bacula
28 Version: %{_version}
29 Release: %{_release}
30 Group: System Environment/Daemons
31 License: GPL v2
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}
41
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.
51
52 # directory locations
53 %define sqlite_bindir /usr/lib/bacula/sqlite
54 %define _docsrc ../%{name}-docs-%{docs_version}
55 %define _rescuesrc ../%{name}-rescue-%{_rescuever}
56 %define depkgs ../depkgs
57 %define _mandir /usr/share/man
58
59 # directory locations for FHS-compatibility
60 %define sysconf_dir /etc/bacula
61 %define script_dir /etc/bacula
62 %define working_dir /var/lib/bacula
63 %define pid_dir /var/run
64
65 # NOTE these defines are used in some rather complex useradd and groupadd
66 # commands. If you change them examine the post scripts for consequences.
67 %define director_daemon_user bacula
68 %define storage_daemon_user bacula
69 %define file_daemon_user root
70 %define daemon_group bacula
71 # group that has write access to tape devices, usually disk on Linux
72 %define storage_daemon_group disk
73 %define user_file /etc/passwd
74 %define group_file /etc/group
75
76 # program locations
77 %define useradd /usr/sbin/useradd
78 %define groupadd /usr/sbin/groupadd
79 %define usermod /usr/sbin/usermod
80
81 # platform defines - set one below or define the build_xxx on the command line
82 # RedHat builds
83 %define rh7 0
84 %{?build_rh7:%define rh7 1}
85 %define rh8 0
86 %{?build_rh8:%define rh8 1}
87 %define rh9 0
88 %{?build_rh9:%define rh9 1}
89 # Fedora Core build
90 %define fc1 0
91 %{?build_fc1:%define fc1 1}
92 %define fc3 0
93 %{?build_fc3:%define fc3 1}
94 %define fc4 0
95 %{?build_fc4:%define fc4 1}
96 %define fc5 0
97 %{?build_fc5:%define fc5 1}
98 %define fc6 0
99 %{?build_fc6:%define fc6 1}
100 # Whitebox Enterprise build
101 %define wb3 0
102 %{?build_wb3:%define wb3 1}
103 # RedHat Enterprise builds
104 %define rhel3 0
105 %{?build_rhel3:%define rhel3 1}
106 %{?build_rhel3:%define wb3 1}
107 %define rhel4 0
108 %{?build_rhel4:%define rhel4 1}
109 %{?build_rhel4:%define fc3 1}
110 # CentOS build
111 %define centos3 0
112 %{?build_centos3:%define centos3 1}
113 %{?build_centos3:%define wb3 1}
114 %define centos4 0
115 %{?build_centos4:%define centos4 1}
116 %{?build_centos4:%define fc3 1}
117 # SL build
118 %define sl3 0
119 %{?build_sl3:%define sl3 1}
120 %{?build_sl3:%define wb3 1}
121 %define sl4 0
122 %{?build_sl4:%define sl4 1}
123 %{?build_sl4:%define fc3 1}
124 # SuSE build
125 %define su9 0
126 %{?build_su9:%define su9 1}
127 %define su10 0
128 %{?build_su10:%define su10 1}
129 %define su102 0
130 %{?build_su102:%define su102 1}
131 # Mandrake builds
132 %define mdk 0
133 %{?build_mdk:%define mdk 1}
134 %define mdv 0
135 %{?build_mdv:%define mdv 1}
136 %{?build_mdv:%define mdk 1}
137
138 # client only build
139 %define client_only 0
140 %{?build_client_only:%define client_only 1}
141
142 # test for a platform definition
143 %if ! %{rh7} && ! %{rh8} && ! %{rh9} && ! %{fc1} && ! %{fc3} && ! %{fc4} && ! %{fc5} && ! %{fc6} && ! %{wb3} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{mdk}
144 %{error: You must specify a platform. Please examine the spec file.}
145 exit 1
146 %endif
147
148 # database defines
149 # set for database support desired or define the build_xxx on the command line
150 %define mysql 0
151 %{?build_mysql:%define mysql 1}
152 # if using mysql 4.x define this and mysql above
153 # currently: Mandrake 10.1, SuSE 9.x & 10.0, RHEL4 and Fedora Core 4
154 %define mysql4 0
155 %{?build_mysql4:%define mysql4 1}
156 %{?build_mysql4:%define mysql 1}
157 # if using mysql 5.x define this and mysql above
158 # currently: SuSE 10.1 and Fedora Core 5
159 %define mysql5 0
160 %{?build_mysql5:%define mysql5 1}
161 %{?build_mysql5:%define mysql 1}
162 %define sqlite 0
163 %{?build_sqlite:%define sqlite 1}
164 %define postgresql 0
165 %{?build_postgresql:%define postgresql 1}
166
167 # test for a database definition
168 %if ! %{mysql} && ! %{sqlite} && ! %{postgresql} && ! %{client_only}
169 %{error: You must specify database support. Please examine the spec file.}
170 exit 1
171 %endif
172
173 %if %{mysql}
174 %define db_backend mysql
175 %endif
176 %if %{sqlite}
177 %define db_backend sqlite
178 %endif
179 %if %{postgresql}
180 %define db_backend postgresql
181 %endif
182
183 # 64 bit support
184 %define x86_64 0
185 %{?build_x86_64:%define x86_64 1}
186
187 # check what distribution we are
188 %if %{rh7} || %{rh8} || %{rh9} || %{rhel3} || %{rhel4}
189 %define _dist %(grep Red /etc/redhat-release)
190 %endif
191 %if %{fc1} || %{fc4} || %{fc5} || %{fc6}
192 %define _dist %(grep Fedora /etc/redhat-release)
193 %endif
194 %if %{centos4} || %{centos3}
195 %define _dist %(grep CentOS /etc/redhat-release)
196 %endif
197 %if %{sl4} || %{sl3}
198 %define _dist %(grep 'Scientific Linux' /etc/redhat-release)
199 %endif
200 %if %{fc3} && ! %{rhel4} && ! %{centos4} && ! %{sl4}
201 %define _dist %(grep Fedora /etc/redhat-release)
202 %endif
203 %if %{wb3} && ! %{rhel3} && ! %{centos3} && ! %{sl3}
204 %define _dist %(grep White /etc/whitebox-release)
205 %endif
206 %if %{su9} || %{su10} || %{su102}
207 %define _dist %(grep -i SuSE /etc/SuSE-release)
208 %endif
209 %if %{mdk}
210 %define _dist %(grep Mand /etc/mandrake-release)
211 %endif
212 Distribution: %{_dist}
213
214 # Should we build bgconsole, possible only if gtk= >= 2.4 available.
215 # leaving all the BuildRequires and Requires in place below for now.
216
217 %define bgconsole 1
218 %if %{rh7} || %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{su9}
219 %define bgconsole 0
220 %endif
221 %if %{mdk} && ! %{mdv}
222 %define bgconsole 0
223 %endif
224
225 # specifically disallow bgconsole if desired
226 %{?nobuild_bgconsole:%define bgconsole 0}
227
228 # Should we build bwxconsole, only wxWidgets >=2.6 is supported
229 # currently only SuSE 10 and FC4/FC5
230 %define bwxconsole 0
231 %{?build_bwxconsole:%define bwxconsole 1}
232
233 # should we turn on python support
234 %define python 0
235 %{?build_python:%define python 1}
236
237 # Mandriva somehow forces the manpage file extension to bz2 rather than gz
238 %if %{mdk}
239 %define manpage_ext bz2
240 %else
241 %define manpage_ext gz
242 %endif
243
244 # for client only build
245 %if %{client_only}
246 %define mysql 0
247 %define mysql4 0
248 %define mysql5 0
249 %define postgresql 0
250 %define sqlite 0
251 %define bgconsole 0
252 %define bwxconsole 0
253 %endif
254
255 %{expand: %%define gccver %(rpm -q --queryformat %%{version} gcc)}
256 %{expand: %%define gccrel %(rpm -q --queryformat %%{release} gcc)}
257
258 BuildRequires: gcc, gcc-c++, make, autoconf
259 BuildRequires: ncurses-devel, perl
260 BuildRequires: libstdc++-devel = %{gccver}-%{gccrel}, libxml2-devel, zlib-devel
261 BuildRequires: openssl-devel
262 %if %{python}
263 BuildRequires: python, python-devel
264 %{expand: %%define pyver %(python -c 'import sys;print(sys.version[0:3])')}
265 %endif
266 %if %{bgconsole}
267 BuildRequires: pkgconfig, pango-devel, atk-devel
268 %endif
269 %if %{rh7}
270 BuildRequires: libtermcap-devel
271 BuildRequires: glibc-devel >= 2.2
272 %endif
273 %if %{su9}
274 BuildRequires: termcap
275 BuildRequires: glibc-devel >= 2.3
276 %endif
277 %if %{su9} && %{bgconsole}
278 BuildRequires: libgnome >= 2.0
279 BuildRequires: gtk2-devel >= 2.0
280 BuildRequires: libgnomeui-devel >= 2.0
281 BuildRequires: ORBit2-devel
282 BuildRequires: libart_lgpl-devel >= 2.0
283 BuildRequires: libbonobo-devel >= 2.0
284 BuildRequires: libbonoboui-devel >= 2.0
285 BuildRequires: bonobo-activation-devel
286 BuildRequires: gconf2-devel
287 BuildRequires: linc-devel
288 BuildRequires: freetype2-devel
289 %endif
290 %if %{su10}
291 BuildRequires: termcap
292 BuildRequires: glibc-devel >= 2.3
293 %endif
294 %if %{su10} && %{bgconsole}
295 BuildRequires: libgnome >= 2.12
296 BuildRequires: gtk2-devel >= 2.8
297 BuildRequires: libgnomeui-devel >= 2.12
298 BuildRequires: ORBit2-devel
299 BuildRequires: libart_lgpl-devel >= 2.3
300 BuildRequires: libbonobo-devel >= 2.10
301 BuildRequires: libbonoboui-devel >= 2.10
302 BuildRequires: bonobo-activation-devel
303 BuildRequires: gconf2-devel
304 BuildRequires: freetype2-devel
305 BuildRequires: cairo-devel
306 BuildRequires: fontconfig-devel >= 2.3
307 BuildRequires: gnome-vfs2-devel >= 2.12
308 BuildRequires: libpng-devel
309 %endif
310 %if %{su102}
311 BuildRequires: termcap
312 BuildRequires: glibc-devel >= 2.5
313 %endif
314 %if %{su102} && %{bgconsole}
315 BuildRequires: libgnome >= 2.16
316 BuildRequires: gtk2-devel >= 2.10
317 BuildRequires: libgnomeui-devel >= 2.16
318 BuildRequires: ORBit2-devel
319 BuildRequires: libart_lgpl-devel >= 2.3
320 BuildRequires: libbonobo-devel >= 2.16
321 BuildRequires: libbonoboui-devel >= 2.16
322 BuildRequires: bonobo-activation-devel
323 BuildRequires: gconf2-devel
324 BuildRequires: freetype2-devel
325 BuildRequires: cairo-devel
326 BuildRequires: fontconfig-devel >= 2.4
327 BuildRequires: gnome-vfs2-devel >= 2.16
328 BuildRequires: libpng-devel
329 %endif
330 %if %{mdk}
331 BuildRequires: libtermcap-devel
332 BuildRequires: libstdc++-static-devel
333 BuildRequires: glibc-static-devel
334 BuildRequires: glibc-devel >= 2.3
335 %endif
336 %if %{mdk} && !%{mdv} && %{bgconsole}
337 BuildRequires: gtk2-devel >= 2.0
338 BuildRequires: libgnomeui2-devel >= 2.0
339 BuildRequires: libORBit2-devel
340 BuildRequires: libart_lgpl-devel >= 2.0
341 BuildRequires: libbonobo2_0-devel
342 BuildRequires: libbonoboui2_0-devel
343 BuildRequires: libbonobo-activation-devel
344 BuildRequires: libGConf2-devel
345 BuildRequires: freetype2-devel
346 %endif
347 %if %{mdv} && %{bgconsole}
348 BuildRequires: gtk2-devel >= 2.8
349 BuildRequires: libgnomeui2-devel >= 2.10
350 BuildRequires: libORBit2-devel
351 BuildRequires: libart_lgpl-devel >= 2.3
352 BuildRequires: libbonobo2_0-devel
353 BuildRequires: libbonoboui2_0-devel
354 BuildRequires: libbonobo-activation-devel
355 BuildRequires: libGConf2-devel
356 BuildRequires: freetype2-devel
357 %endif
358 %if %{fc3}
359 BuildRequires: libtermcap-devel
360 BuildRequires: glibc-devel >= 2.3
361 %endif
362 %if %{fc3} && %{bgconsole}
363 BuildRequires: gtk2-devel >= 2.4
364 BuildRequires: libgnomeui-devel >= 2.8
365 BuildRequires: ORBit2-devel
366 BuildRequires: libart_lgpl-devel >= 2.3
367 BuildRequires: libbonobo-devel >= 2.8
368 BuildRequires: libbonoboui-devel >= 2.8
369 BuildRequires: bonobo-activation-devel
370 BuildRequires: GConf2-devel
371 BuildRequires: freetype-devel
372 %endif
373 %if %{fc4}
374 BuildRequires: libtermcap-devel
375 BuildRequires: glibc-devel >= 2.3
376 %endif
377 %if %{fc4} && %{bgconsole}
378 BuildRequires: gtk2-devel >= 2.6
379 BuildRequires: libgnomeui-devel >= 2.10
380 BuildRequires: ORBit2-devel
381 BuildRequires: libart_lgpl-devel >= 2.3
382 BuildRequires: libbonobo-devel >= 2.8
383 BuildRequires: libbonoboui-devel >= 2.8
384 BuildRequires: bonobo-activation-devel
385 BuildRequires: GConf2-devel
386 BuildRequires: freetype-devel
387 %endif
388 %if %{fc5}
389 BuildRequires: libtermcap-devel
390 BuildRequires: glibc-devel >= 2.4
391 %endif
392 %if %{fc5} && %{bgconsole}
393 BuildRequires: gtk2-devel >= 2.8
394 BuildRequires: libgnomeui-devel >= 2.14
395 BuildRequires: ORBit2-devel
396 BuildRequires: libart_lgpl-devel >= 2.3
397 BuildRequires: libbonobo-devel >= 2.14
398 BuildRequires: libbonoboui-devel >= 2.14
399 BuildRequires: GConf2-devel
400 BuildRequires: freetype-devel
401 %endif
402 %if %{fc6}
403 BuildRequires: libtermcap-devel
404 BuildRequires: glibc-devel >= 2.5
405 %endif
406 %if %{fc6} && %{bgconsole}
407 BuildRequires: gtk2-devel >= 2.10
408 BuildRequires: libgnomeui-devel >= 2.16
409 BuildRequires: ORBit2-devel
410 BuildRequires: libart_lgpl-devel >= 2.3
411 BuildRequires: libbonobo-devel >= 2.16
412 BuildRequires: libbonoboui-devel >= 2.16
413 BuildRequires: GConf2-devel
414 BuildRequires: freetype-devel
415 %endif
416 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5} && ! %{fc6}
417 BuildRequires: libtermcap-devel
418 BuildRequires: glibc-devel >= 2.3
419 %endif
420 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5} && ! %{fc6} && %{bgconsole}
421 BuildRequires: gtk2-devel >= 2.0
422 BuildRequires: libgnomeui-devel >= 2.0
423 BuildRequires: ORBit2-devel
424 BuildRequires: libart_lgpl-devel >= 2.0
425 BuildRequires: libbonobo-devel >= 2.0
426 BuildRequires: libbonoboui-devel >= 2.0
427 BuildRequires: bonobo-activation-devel
428 BuildRequires: GConf2-devel
429 BuildRequires: linc-devel
430 BuildRequires: freetype-devel
431 %endif
432
433 %if %{mysql} && ! %{mysql4} && ! %{mysql5}
434 BuildRequires: mysql-devel >= 3.23
435 %endif
436
437 %if %{mysql} && %{mysql4}
438 BuildRequires: mysql-devel >= 4.0
439 %endif
440
441 %if %{mysql} && %{mysql5}
442 BuildRequires: mysql-devel >= 5.0
443 %endif
444
445 %if %{postgresql} && %{wb3}
446 BuildRequires: rh-postgresql-devel >= 7
447 %endif
448
449 %if %{postgresql} && ! %{wb3}
450 BuildRequires: postgresql-devel >= 7
451 %endif
452
453 %if %{bwxconsole}
454 BuildRequires: wxGTK-devel >= 2.6
455 %endif
456
457 %description
458 %{blurb}
459
460 %{blurb2}
461 %{blurb3}
462 %{blurb4}
463 %{blurb5}
464 %{blurb6}
465 %{blurb7}
466 %{blurb8}
467
468 %if %{mysql}
469 %package mysql
470 %endif
471 %if %{sqlite}
472 %package sqlite
473 %endif
474 %if %{postgresql}
475 %package postgresql
476 %endif
477
478 Summary: Bacula - The Network Backup Solution
479 Group: System Environment/Daemons
480 Provides: bacula-dir, bacula-sd, bacula-fd, bacula-server
481 Conflicts: bacula-client
482 Obsoletes: bacula-rescue
483
484 %if %{su9} || %{su10} || %{su102}
485 Conflicts: bacula
486 %endif
487
488 Requires: ncurses, libstdc++, zlib, openssl, mtx
489
490 %if %{rh7}
491 Requires: glibc >= 2.2
492 Requires: libtermcap
493 %endif
494 %if %{su9} || %{su10}
495 Requires: glibc >= 2.3
496 Requires: termcap
497 %endif
498 %if %{su102}
499 Requires: glibc >= 2.5
500 Requires: termcap
501 %endif
502 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{fc5} && ! %{fc6}
503 Requires: glibc >= 2.3
504 Requires: libtermcap
505 %endif
506 %if %{fc5}
507 Requires: glibc >= 2.4
508 Requires: libtermcap
509 %endif
510 %if %{fc6}
511 Requires: glibc >= 2.5
512 Requires: libtermcap
513 %endif
514
515 %if %{mysql} && ! %{su9} && ! %{mdk} && ! %{mysql4} && ! %{mysql5}
516 Requires: mysql >= 3.23
517 Requires: mysql-server >= 3.23
518 %endif
519 %if %{mysql} && ! %{su9} && ! %{su10} && ! %{mdk} && %{mysql4}
520 Requires: mysql >= 4.0
521 Requires: mysql-server >= 4.0
522 %endif
523 %if %{mysql} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{mdk} && %{mysql5}
524 Requires: mysql >= 5.0
525 Requires: mysql-server >= 5.0
526 %endif
527
528 %if %{mysql} && %{su9} && ! %{mysql4}
529 Requires: mysql >= 3.23
530 Requires: mysql-client >= 3.23
531 %endif
532 %if %{mysql} && %{su9} && %{mysql4}
533 Requires: mysql >= 4.0
534 Requires: mysql-client >= 4.0
535 %endif
536 %if %{mysql} && %{su10} && %{mysql4}
537 Requires: mysql >= 4.0
538 Requires: mysql-client >= 4.0
539 %endif
540 %if %{mysql} && %{su10} && %{mysql5}
541 Requires: mysql >= 5.0
542 Requires: mysql-client >= 5.0
543 %endif
544 %if %{mysql} && %{su102} && %{mysql5}
545 Requires: mysql >= 5.0
546 Requires: mysql-client >= 5.0
547 %endif
548
549 %if %{mysql} && %{mdk} && ! %{mysql4}
550 Requires: mysql >= 3.23
551 Requires: mysql-client >= 3.23
552 %endif
553 %if %{mysql} && %{mdk} && %{mysql4}
554 Requires: mysql >= 4.0
555 Requires: mysql-client >= 4.0
556 %endif
557
558 %if %{postgresql} && %{wb3}
559 Requires: rh-postgresql >= 7
560 Requires: rh-postgresql-server >= 7
561 %endif
562 %if %{postgresql} && ! %{wb3}
563 Requires: postgresql >= 7
564 Requires: postgresql-server >= 7
565 %endif
566
567 %if %{mysql}
568 %description mysql
569 %endif
570 %if %{sqlite}
571 %description sqlite
572 %endif
573 %if %{postgresql}
574 %description postgresql
575 %endif
576
577 %if %{python}
578 Requires: python >= %{pyver}
579 %endif
580
581 %{blurb}
582
583 %{blurb2}
584 %{blurb3}
585 %{blurb4}
586 %{blurb5}
587 %{blurb6}
588 %{blurb7}
589 %{blurb8}
590
591 %if %{mysql}
592 This build requires MySQL to be installed separately as the catalog database.
593 %endif
594 %if %{postgresql}
595 This build requires PostgreSQL to be installed separately as the catalog database.
596 %endif
597 %if %{sqlite}
598 This build incorporates sqlite as the catalog database, statically compiled.
599 %endif
600 %if %{python}
601 This build includes python scripting support.
602 %endif
603
604 %if ! %{client_only}
605 %package mtx
606 Summary: Bacula - The Network Backup Solution
607 Group: System Environment/Daemons
608 Provides: mtx
609
610 %description mtx
611 This is Bacula's version of mtx tape utilities for Linux distributions that
612 do not provide their own mtx package
613 %endif
614
615 %package client
616 Summary: Bacula - The Network Backup Solution
617 Group: System Environment/Daemons
618 Provides: bacula-fd
619 Conflicts: bacula-mysql
620 Conflicts: bacula-sqlite
621 Conflicts: bacula-postgresql
622 Obsoletes: bacula-rescue
623
624 %if %{su9} || %{su10} || %{su102}
625 Provides: bacula
626 %endif
627
628 Requires: libstdc++, zlib, openssl
629
630 %if %{rh7}
631 Requires: glibc >= 2.2
632 Requires: libtermcap
633 %endif
634 %if %{su9} || %{su10}
635 Requires: glibc >= 2.3
636 Requires: termcap
637 %endif
638 %if %{su102}
639 Requires: glibc >= 2.5
640 Requires: termcap
641 %endif
642 %if ! %{rh7} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{fc5} && ! %{fc6}
643 Requires: glibc >= 2.3
644 Requires: libtermcap
645 %endif
646 %if %{fc5}
647 Requires: glibc >= 2.4
648 Requires: libtermcap
649 %endif
650 %if %{fc6}
651 Requires: glibc >= 2.5
652 Requires: libtermcap
653 %endif
654
655 %if %{python}
656 Requires: python >= %{pyver}
657 %endif
658
659 %description client
660 %{blurb}
661
662 %{blurb2}
663 %{blurb3}
664 %{blurb4}
665 %{blurb5}
666 %{blurb6}
667 %{blurb7}
668 %{blurb8}
669
670 This is the File daemon (Client) only package. It includes the command line 
671 console program.
672 %if %{python}
673 This build includes python scripting support.
674 %endif
675
676 %if ! %{client_only}
677 %package updatedb
678
679 Summary: Bacula - The Network Backup Solution
680 Group: System Environment/Daemons
681
682 %description updatedb
683 %{blurb}
684
685 %{blurb2}
686 %{blurb3}
687 %{blurb4}
688 %{blurb5}
689 %{blurb6}
690 %{blurb7}
691 %{blurb8}
692
693 This package installs scripts for updating older versions of the bacula
694 database.
695 %endif
696
697 %if %{bgconsole}
698 %package bgconsole
699 Summary: Bacula - The Network Backup Solution
700 Group: System Environment/Daemons
701 Requires: atk, libstdc++, zlib, pango, libxml2, bacula-fd, openssl
702 %endif
703
704 %if %{bgconsole} && %{su9}
705 Requires: gtk2 >= 2.0
706 Requires: libgnome >= 2.0
707 Requires: libgnomeui >= 2.0
708 Requires: glibc >= 2.3
709 Requires: ORBit2
710 Requires: libart_lgpl >= 2.0
711 Requires: libbonobo >= 2.0
712 Requires: libbonoboui >= 2.0
713 Requires: bonobo-activation
714 Requires: gconf2
715 Requires: linc
716 Requires: freetype2
717 %endif
718 %if %{bgconsole} && %{su10}
719 Requires: gtk2 >= 2.8
720 Requires: libgnome >= 2.12
721 Requires: libgnomeui >= 2.12
722 Requires: glibc >= 2.3
723 Requires: ORBit2
724 Requires: libart_lgpl >= 2.3
725 Requires: libbonobo >= 2.10
726 Requires: libbonoboui >= 2.10
727 Requires: bonobo-activation
728 Requires: gconf2
729 Requires: freetype2
730 Requires: cairo
731 Requires: fontconfig >= 2.3
732 Requires: gnome-vfs2 >= 2.12
733 Requires: libpng
734 %endif
735 %if %{bgconsole} && %{su102}
736 Requires: gtk2 >= 2.10
737 Requires: libgnome >= 2.16
738 Requires: libgnomeui >= 2.16
739 Requires: glibc >= 2.5
740 Requires: ORBit2
741 Requires: libart_lgpl >= 2.3
742 Requires: libbonobo >= 2.16
743 Requires: libbonoboui >= 2.16
744 Requires: bonobo-activation
745 Requires: gconf2
746 Requires: freetype2
747 Requires: cairo
748 Requires: fontconfig >= 2.4
749 Requires: gnome-vfs2 >= 2.16
750 Requires: libpng
751 %endif
752 %if %{bgconsole} && %{mdk} && !%{mdv}
753 Requires: gtk2 >= 2.0
754 Requires: libgnomeui2
755 Requires: glibc >= 2.3
756 Requires: ORBit2
757 Requires: libart_lgpl >= 2.0
758 Requires: libbonobo >= 2.0
759 Requires: libbonoboui >= 2.0
760 Requires: GConf2
761 Requires: freetype2
762 %endif
763 %if %{bgconsole} && %{mdv}
764 Requires: gtk2 >= 2.8
765 Requires: libgnomeui2
766 Requires: glibc >= 2.3
767 Requires: ORBit2
768 Requires: libart_lgpl >= 2.3
769 Requires: libbonobo >= 2.10
770 Requires: libbonoboui >= 2.10
771 Requires: GConf2
772 Requires: freetype2
773 %endif
774 %if %{bgconsole} && %{fc3}  
775 Requires: gtk2 >= 2.4
776 Requires: libgnomeui >= 2.8
777 Requires: glibc >= 2.3
778 Requires: ORBit2
779 Requires: libart_lgpl >= 2.3
780 Requires: libbonobo >= 2.8
781 Requires: libbonoboui >= 2.8
782 Requires: bonobo-activation
783 Requires: GConf2
784 Requires: freetype
785 %endif
786 %if %{bgconsole} && %{fc4}  
787 Requires: gtk2 >= 2.6
788 Requires: libgnomeui >= 2.10
789 Requires: glibc >= 2.3
790 Requires: ORBit2
791 Requires: libart_lgpl >= 2.3
792 Requires: libbonobo >= 2.8
793 Requires: libbonoboui >= 2.8
794 Requires: bonobo-activation
795 Requires: GConf2
796 Requires: freetype
797 %endif
798 %if %{bgconsole} && %{fc5}  
799 Requires: gtk2 >= 2.8
800 Requires: libgnomeui >= 2.14
801 Requires: glibc >= 2.4
802 Requires: ORBit2
803 Requires: libart_lgpl >= 2.3
804 Requires: libbonobo >= 2.14
805 Requires: libbonoboui >= 2.14
806 Requires: GConf2
807 Requires: freetype
808 %endif
809 %if %{bgconsole} && %{fc6}  
810 Requires: gtk2 >= 2.10
811 Requires: libgnomeui >= 2.16
812 Requires: glibc >= 2.5
813 Requires: ORBit2
814 Requires: libart_lgpl >= 2.3
815 Requires: libbonobo >= 2.16
816 Requires: libbonoboui >= 2.16
817 Requires: GConf2
818 Requires: freetype
819 %endif
820 %if %{bgconsole} && ! %{su9} && ! %{su10} && ! %{su102} && ! %{mdk} && ! %{fc3} && ! %{fc4} && ! %{fc5} && ! %{fc6}
821 Requires: gtk2 >= 2.0
822 Requires: libgnomeui >= 2.0
823 Requires: glibc >= 2.3
824 Requires: ORBit2
825 Requires: libart_lgpl >= 2.0
826 Requires: libbonobo >= 2.0
827 Requires: libbonoboui >= 2.0
828 Requires: bonobo-activation
829 Requires: GConf2
830 Requires: linc
831 Requires: freetype
832 %endif
833 %if %{bgconsole} && %{su9}
834 Requires: xsu
835 %endif
836 %if %{bgconsole} && %{su10}
837 Requires: xsu
838 %endif
839 %if %{bgconsole} && %{su102}
840 Requires: xsu
841 %endif
842 %if %{bgconsole} && ! %{su9} && ! %{su10} && ! %{su102}
843 Requires: usermode
844 %endif
845
846 %if %{bgconsole}
847 %description bgconsole
848 %{blurb}
849
850 %{blurb2}
851 %{blurb3}
852 %{blurb4}
853 %{blurb5}
854 %{blurb6}
855 %{blurb7}
856 %{blurb8}
857
858 This is the Gnome Console package. It is an add-on to the client or
859 server packages.
860 %endif
861
862 %if %{bwxconsole}
863 %package bwxconsole
864 Summary: Bacula - The Network Backup Solution
865 Group: System Environment/Daemons
866 Requires: wxGTK >= 2.6, libstdc++, openssl
867 %endif
868
869 %if %{bwxconsole} && %{su10}
870 Requires: gtk2 >= 2.8
871 %endif
872
873 %if %{bwxconsole} && %{su102}
874 Requires: gtk2 >= 2.10
875 %endif
876
877 %if %{bwxconsole} && %{fc3}  
878 Requires: gtk2 >= 2.4
879 %endif
880
881 %if %{bwxconsole} && %{fc4}  
882 Requires: gtk2 >= 2.6
883 %endif
884
885 %if %{bwxconsole} && %{fc5}  
886 Requires: gtk2 >= 2.8
887 %endif
888
889 %if %{bwxconsole} && %{fc6}  
890 Requires: gtk2 >= 2.10
891 %endif
892
893 %if %{bwxconsole}
894 %description bwxconsole
895 %{blurb}
896
897 %{blurb2}
898 %{blurb3}
899 %{blurb4}
900 %{blurb5}
901 %{blurb6}
902 %{blurb7}
903 %{blurb8}
904
905 This is the WXWindows Console package. It is an add-on to the client or
906 server packages.
907 %endif
908
909 %prep
910
911 %setup
912 %setup -T -D -b 1
913 %setup -T -D -b 2
914 %setup -T -D -b 3
915 %setup -T -D -b 4
916
917 %build
918
919 %if %{su9} || %{su10} || %{su102}
920 export LDFLAGS="${LDFLAGS} -L/usr/lib/termcap"
921 %endif
922
923 cwd=${PWD}
924 cd %{depkgs}
925 %if %{sqlite}
926 make sqlite
927 %endif
928 %if ! %{client_only}
929 make mtx
930 %endif
931 cd ${cwd}
932
933 # patches for the bundled sqlite scripts
934
935 # patch the make_sqlite_tables script for installation bindir
936 patch src/cats/make_sqlite_tables.in src/cats/make_sqlite_tables.in.patch
937
938 # patch the create_sqlite_database script for installation bindir
939 # not necessary after 1.39.26 no longer references sqlite binary
940 #patch src/cats/create_sqlite_database.in src/cats/create_sqlite_database.in.patch
941
942 # patch the make_catalog_backup script for installation bindir
943 patch src/cats/make_catalog_backup.in src/cats/make_catalog_backup.in.patch
944
945 # patch the update_sqlite_tables script for installation bindir
946 patch src/cats/update_sqlite_tables.in src/cats/update_sqlite_tables.in.patch
947
948 # patch the bacula-dir init script to remove sqlite service
949 %if %{sqlite} && %{su9}
950 patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
951 %endif
952 %if %{sqlite} && %{su10}
953 patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
954 %endif
955 %if %{sqlite} && %{su102}
956 patch platforms/suse/bacula-dir.in platforms/suse/bacula-dir-suse-sqlite.patch
957 %endif
958
959 # 64 bit lib location hacks
960 # as of 1.39.18 it should not be necessary to enable x86_64 as configure is
961 # reported to be fixed to properly detect lib locations.
962 %if %{x86_64}
963 export LDFLAGS="${LDFLAGS} -L/usr/lib64"
964 %endif
965 %if %{mysql} && %{x86_64}
966 export LDFLAGS="${LDFLAGS} -L/usr/lib64/mysql"
967 %endif
968 %if %{python} && %{x86_64}
969 export LDFLAGS="${LDFLAGS} -L/usr/lib64/python%{pyver}"
970 %endif
971
972 %configure \
973         --prefix=/usr \
974         --sbindir=/usr/sbin \
975         --sysconfdir=%{sysconf_dir} \
976         --with-scriptdir=%{script_dir} \
977         --with-working-dir=%{working_dir} \
978         --with-pid-dir=%{pid_dir} \
979         --enable-smartalloc \
980         --enable-client-only \
981         %if %{mdk}
982         --disable-nls \
983         %endif
984         --enable-static-fd
985
986 make
987
988 %configure \
989         --prefix=/usr \
990         --sbindir=/usr/sbin \
991         --sysconfdir=%{sysconf_dir} \
992         --with-scriptdir=%{script_dir} \
993         --with-working-dir=%{working_dir} \
994         --with-pid-dir=%{pid_dir} \
995         --enable-smartalloc \
996 %if %{bgconsole}
997         --enable-gnome \
998 %endif
999 %if %{bgconsole} && ! %{rh8}
1000         --enable-tray-monitor \
1001 %endif
1002 %if %{mysql}
1003         --with-mysql \
1004 %endif
1005 %if %{sqlite}
1006         --with-sqlite=${cwd}/%{depkgs}/sqlite \
1007 %endif
1008 %if %{postgresql}
1009         --with-postgresql \
1010 %endif
1011 %if %{bwxconsole}
1012         --enable-bwx-console \
1013 %endif
1014 %if %{python}
1015         --with-python \
1016 %endif
1017 %if %{client_only}
1018         --enable-client-only \
1019 %endif
1020         --mandir=%{_mandir} \
1021         --with-subsys-dir=/var/lock/subsys \
1022         --with-dir-user=%{director_daemon_user} \
1023         --with-dir-group=%{daemon_group} \
1024         --with-sd-user=%{storage_daemon_user} \
1025         --with-sd-group=%{storage_daemon_group} \
1026         --with-fd-user=%{file_daemon_user} \
1027         --with-fd-group=%{daemon_group} \
1028         --with-dir-password="XXX_REPLACE_WITH_DIRECTOR_PASSWORD_XXX" \
1029         --with-fd-password="XXX_REPLACE_WITH_CLIENT_PASSWORD_XXX" \
1030         --with-sd-password="XXX_REPLACE_WITH_STORAGE_PASSWORD_XXX" \
1031         --with-mon-dir-password="XXX_REPLACE_WITH_DIRECTOR_MONITOR_PASSWORD_XXX" \
1032         --with-mon-fd-password="XXX_REPLACE_WITH_CLIENT_MONITOR_PASSWORD_XXX" \
1033         --with-mon-sd-password="XXX_REPLACE_WITH_STORAGE_MONITOR_PASSWORD_XXX" \
1034         --with-openssl
1035
1036 make
1037
1038 %install
1039  
1040 cwd=${PWD}
1041 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
1042 mkdir -p $RPM_BUILD_ROOT/etc/init.d
1043 mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d
1044 mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/logfiles
1045 mkdir -p $RPM_BUILD_ROOT/etc/log.d/conf/services
1046 mkdir -p $RPM_BUILD_ROOT/etc/log.d/scripts/services
1047 mkdir -p $RPM_BUILD_ROOT%{script_dir}/updatedb
1048
1049 %if %{bgconsole} || %{bwxconsole}
1050 mkdir -p $RPM_BUILD_ROOT/usr/share/applications
1051 mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps
1052 %endif
1053
1054 %if %{bgconsole} || %{bwxconsole}
1055 %define usermode_iftrick 1
1056 %else
1057 %define usermode_iftrick 0
1058 %endif
1059
1060 %if %{usermode_iftrick} && ! %{su9} && ! %{su10} && ! %{su102}
1061 mkdir -p $RPM_BUILD_ROOT/etc/pam.d
1062 mkdir -p $RPM_BUILD_ROOT/etc/security/console.apps
1063 mkdir -p $RPM_BUILD_ROOT/usr/bin
1064 %endif
1065
1066 %if %{sqlite}
1067 mkdir -p $RPM_BUILD_ROOT%{sqlite_bindir}
1068 %endif
1069
1070 make \
1071         prefix=$RPM_BUILD_ROOT/usr \
1072         sbindir=$RPM_BUILD_ROOT/usr/sbin \
1073         sysconfdir=$RPM_BUILD_ROOT%{sysconf_dir} \
1074         scriptdir=$RPM_BUILD_ROOT%{script_dir} \
1075         working_dir=$RPM_BUILD_ROOT%{working_dir} \
1076         piddir=$RPM_BUILD_ROOT%{pid_dir} \
1077         mandir=$RPM_BUILD_ROOT%{_mandir} \
1078         install
1079
1080 %if ! %{client_only}
1081 cd %{depkgs}
1082 make \
1083         prefix=$RPM_BUILD_ROOT/usr \
1084         sbindir=$RPM_BUILD_ROOT/usr/sbin \
1085         sysconfdir=$RPM_BUILD_ROOT%{sysconf_dir} \
1086         scriptdir=$RPM_BUILD_ROOT%{script_dir} \
1087         working_dir=$RPM_BUILD_ROOT%{working_dir} \
1088         piddir=$RPM_BUILD_ROOT%{pid_dir} \
1089         mandir=$RPM_BUILD_ROOT%{_mandir} \
1090         mtx-install
1091 cd ${cwd}
1092 %endif
1093
1094 # make install in manpages installs _everything_ shotgun style
1095 # so now delete what we will not be packaging
1096 %if ! %{bwxconsole}
1097 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-bwxconsole.1.gz
1098 %endif
1099 %if ! %{bgconsole}
1100 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-console-gnome.1.gz
1101 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bacula-tray-monitor.1.gz
1102 %endif
1103 %if %{client_only}
1104 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/bsmtp.1.gz
1105 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bacula-dir.8.gz
1106 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bacula-sd.8.gz
1107 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bcopy.8.gz
1108 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bextract.8.gz
1109 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bls.8.gz
1110 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/bscan.8.gz
1111 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/btape.8.gz
1112 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/dbcheck.8.gz
1113 %endif
1114
1115 # fixme - make installs the mysql scripts for sqlite build
1116 %if %{sqlite}
1117 rm -f $RPM_BUILD_ROOT%{script_dir}/startmysql
1118 rm -f $RPM_BUILD_ROOT%{script_dir}/stopmysql
1119 rm -f $RPM_BUILD_ROOT%{script_dir}/grant_mysql_privileges
1120 %endif
1121
1122 # fixme - make installs the mysql scripts for postgresql build
1123 %if %{postgresql}
1124 rm -f $RPM_BUILD_ROOT%{script_dir}/startmysql
1125 rm -f $RPM_BUILD_ROOT%{script_dir}/stopmysql
1126 %endif
1127
1128 # fixme - make installs bgconsole script for build without bgconsole
1129 %if ! %{bgconsole}
1130 rm -f $RPM_BUILD_ROOT%{script_dir}/bgconsole
1131 %endif
1132
1133 rm -f $RPM_BUILD_ROOT/usr/sbin/static-bacula-fd
1134
1135 # install the init scripts
1136 %if %{su9} || %{su10} || %{su102}
1137 cp -p platforms/suse/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1138 cp -p platforms/suse/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1139 cp -p platforms/suse/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1140 %endif
1141 %if %{mdk}
1142 cp -p platforms/mandrake/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1143 cp -p platforms/mandrake/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1144 cp -p platforms/mandrake/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1145 %endif
1146 %if ! %{su9} && ! %{su10} && ! %{su102} && ! %{mdk}
1147 cp -p platforms/redhat/bacula-dir $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1148 cp -p platforms/redhat/bacula-fd $RPM_BUILD_ROOT/etc/init.d/bacula-fd
1149 cp -p platforms/redhat/bacula-sd $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1150 %endif
1151 chmod 0754 $RPM_BUILD_ROOT/etc/init.d/*
1152 %if %{client_only}
1153 rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-dir
1154 rm -f $RPM_BUILD_ROOT/etc/init.d/bacula-sd
1155 %endif
1156
1157 # install the menu stuff
1158 %if %{bgconsole} && %{su9}
1159 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1160 cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1161 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1162 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1163 %endif
1164 %if %{bgconsole} && %{su10}
1165 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1166 cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1167 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1168 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1169 %endif
1170 %if %{bgconsole} && %{su102}
1171 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1172 cp -p scripts/bacula.desktop.gnome2.xsu $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1173 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1174 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1175 %endif
1176 %if %{bwxconsole} && %{su10}
1177 cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
1178 cp -p scripts/bwxconsole.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/bwxconsole.desktop
1179 %endif
1180 %if %{bwxconsole} && %{su102}
1181 cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
1182 cp -p scripts/bwxconsole.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/bwxconsole.desktop
1183 %endif
1184 %if %{rh8} || %{rh9} || %{wb3} || %{fc1} || %{fc3} || %{fc4} || %{fc5} || %{mdk}
1185 %define iftrick 1
1186 %else
1187 %define iftrick 0
1188 %endif
1189 %if %{bgconsole} && %{iftrick}
1190 cp -p scripts/bacula.png $RPM_BUILD_ROOT/usr/share/pixmaps/bacula.png
1191 cp -p scripts/bacula.desktop.gnome2.consolehelper $RPM_BUILD_ROOT/usr/share/applications/bacula.desktop
1192 cp -p scripts/gnome-console.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/gnome-console
1193 cp -p scripts/gnome-console.pamd $RPM_BUILD_ROOT/etc/pam.d/gnome-console
1194 ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/gnome-console
1195 %endif
1196 %if %{bgconsole} && ! %{rh8}
1197 cp -p src/tray-monitor/generic.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/bacula-tray-monitor.xpm
1198 cp -p scripts/bacula-tray-monitor.desktop $RPM_BUILD_ROOT/usr/share/applications/bacula-tray-monitor.desktop
1199 %endif
1200 %if %{bwxconsole} && %{iftrick}
1201 cp -p src/wx-console/wxwin16x16.xpm $RPM_BUILD_ROOT/usr/share/pixmaps/wxwin16x16.xpm
1202 cp -p scripts/bwxconsole.desktop.consolehelper $RPM_BUILD_ROOT/usr/share/applications/bwxconsole.desktop
1203 cp -p scripts/bwxconsole.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/bwxconsole
1204 cp -p scripts/bwxconsole.pamd $RPM_BUILD_ROOT/etc/pam.d/bwxconsole
1205 ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/bwxconsole
1206 %endif
1207
1208 # install sqlite
1209 %if %{sqlite}
1210 cp -p %{depkgs}/sqlite/sqlite $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite
1211 cp -p %{depkgs}/sqlite/sqlite.h $RPM_BUILD_ROOT%{sqlite_bindir}/sqlite.h
1212 cp -p %{depkgs}/sqlite/libsqlite.a $RPM_BUILD_ROOT%{sqlite_bindir}/libsqlite.a
1213 %endif
1214
1215 # install the logrotate file
1216 cp -p scripts/logrotate $RPM_BUILD_ROOT/etc/logrotate.d/bacula
1217
1218 # install the updatedb scripts
1219 cp -p updatedb/* $RPM_BUILD_ROOT%{script_dir}/updatedb/
1220
1221 # install the logwatch scripts
1222 %if ! %{client_only}
1223 cp -p scripts/logwatch/bacula $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
1224 cp -p scripts/logwatch/logfile.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
1225 cp -p scripts/logwatch/services.bacula.conf $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
1226 chmod 755 $RPM_BUILD_ROOT/etc/log.d/scripts/services/bacula
1227 chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/logfiles/bacula.conf
1228 chmod 644 $RPM_BUILD_ROOT/etc/log.d/conf/services/bacula.conf
1229 %endif
1230
1231 # install the rescue files
1232 mkdir $RPM_BUILD_ROOT%{sysconf_dir}/rescue
1233 cp -p %{_rescuesrc}/Makefile* $RPM_BUILD_ROOT%{sysconf_dir}/rescue/
1234 cp -p %{_rescuesrc}/README $RPM_BUILD_ROOT%{sysconf_dir}/rescue/
1235 cp -p %{_rescuesrc}/configure $RPM_BUILD_ROOT%{sysconf_dir}/rescue/
1236 cp -p %{_rescuesrc}/version.h $RPM_BUILD_ROOT%{sysconf_dir}/rescue/
1237 cp -pr %{_rescuesrc}/linux $RPM_BUILD_ROOT%{sysconf_dir}/rescue/
1238 cp -pr %{_rescuesrc}/autoconf $RPM_BUILD_ROOT%{sysconf_dir}/rescue/
1239 touch $RPM_BUILD_ROOT%{sysconf_dir}/rescue/linux/cdrom/rpm_release
1240 cp -p src/filed/static-bacula-fd $RPM_BUILD_ROOT%{sysconf_dir}/rescue/linux/cdrom/bacula/bin/bacula-fd
1241 rm -f src/filed/static-bacula-fd
1242
1243 %if %{bwxconsole}
1244 mv $RPM_BUILD_ROOT/usr/sbin/bwx-console $RPM_BUILD_ROOT/usr/sbin/bwxconsole
1245 mv $RPM_BUILD_ROOT%{sysconf_dir}/bwx-console.conf $RPM_BUILD_ROOT%{sysconf_dir}/bwxconsole.conf
1246 %endif
1247
1248 # now clean up permissions that are left broken by the install
1249 %if ! %{client_only}
1250 chmod o-r $RPM_BUILD_ROOT%{script_dir}/query.sql
1251 %endif
1252 chmod o-rwx $RPM_BUILD_ROOT%{working_dir}
1253 %if %{bgconsole} && ! %{rh8}
1254 chmod 755 $RPM_BUILD_ROOT/usr/sbin/bacula-tray-monitor
1255 chmod 644 $RPM_BUILD_ROOT%{sysconf_dir}/tray-monitor.conf
1256 %endif
1257
1258 # fix me - building enable-client-only installs files not included in bacula-client package
1259 %if %{client_only}
1260 rm -f $RPM_BUILD_ROOT%{script_dir}/bacula
1261 rm -f $RPM_BUILD_ROOT%{script_dir}/bacula-ctl-dir
1262 rm -f $RPM_BUILD_ROOT%{script_dir}/bacula-ctl-sd
1263 rm -f $RPM_BUILD_ROOT%{script_dir}/disk-changer
1264 rm -f $RPM_BUILD_ROOT%{script_dir}/dvd-handler
1265 rm -f $RPM_BUILD_ROOT%{script_dir}/mtx-changer
1266 rm -f $RPM_BUILD_ROOT%{script_dir}/startmysql
1267 rm -f $RPM_BUILD_ROOT%{script_dir}/stopmysql
1268 rm -rf $RPM_BUILD_ROOT%{script_dir}/updatedb
1269 %endif
1270
1271 %clean
1272 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
1273 rm -rf $RPM_BUILD_DIR/%{name}-docs-%{docs_version}
1274 rm -rf $RPM_BUILD_DIR/%{name}-rescue-%{_rescuever}
1275 rm -rf $RPM_BUILD_DIR/depkgs
1276 rm -f $RPM_BUILD_DIR/Release_Notes-%{version}-%{release}.txt
1277
1278 %if %{mysql}
1279 # MySQL specific files
1280 %files mysql
1281 %defattr(-, root, root)
1282 %attr(-, root, %{daemon_group}) %{script_dir}/create_mysql_database
1283 %attr(-, root, %{daemon_group}) %{script_dir}/drop_mysql_database
1284 %attr(-, root, %{daemon_group}) %{script_dir}/make_mysql_tables
1285 %attr(-, root, %{daemon_group}) %{script_dir}/drop_mysql_tables
1286 %attr(-, root, %{daemon_group}) %{script_dir}/update_mysql_tables
1287 %attr(-, root, %{daemon_group}) %{script_dir}/grant_mysql_privileges
1288 %attr(-, root, %{daemon_group}) %{script_dir}/startmysql
1289 %attr(-, root, %{daemon_group}) %{script_dir}/stopmysql
1290 %endif
1291
1292 %if %{sqlite}
1293 %files sqlite
1294 %defattr(-,root,root)
1295 %attr(-, root, %{daemon_group}) %{script_dir}/create_sqlite_database
1296 %attr(-, root, %{daemon_group}) %{script_dir}/drop_sqlite_database
1297 %attr(-, root, %{daemon_group}) %{script_dir}/grant_sqlite_privileges
1298 %attr(-, root, %{daemon_group}) %{script_dir}/make_sqlite_tables
1299 %attr(-, root, %{daemon_group}) %{script_dir}/drop_sqlite_tables
1300 %attr(-, root, %{daemon_group}) %{script_dir}/update_sqlite_tables
1301 %{sqlite_bindir}/libsqlite.a
1302 %{sqlite_bindir}/sqlite.h
1303 %{sqlite_bindir}/sqlite
1304 %endif
1305
1306 %if %{postgresql}
1307 %files postgresql
1308 %defattr(-,root,root)
1309 %attr(-, root, %{daemon_group}) %{script_dir}/create_postgresql_database
1310 %attr(-, root, %{daemon_group}) %{script_dir}/drop_postgresql_database
1311 %attr(-, root, %{daemon_group}) %{script_dir}/make_postgresql_tables
1312 %attr(-, root, %{daemon_group}) %{script_dir}/drop_postgresql_tables
1313 %attr(-, root, %{daemon_group}) %{script_dir}/update_postgresql_tables
1314 %attr(-, root, %{daemon_group}) %{script_dir}/grant_postgresql_privileges
1315 %endif
1316
1317 # The rest is DB backend independent
1318 %if ! %{client_only}
1319 %attr(-, root, %{daemon_group}) %dir %{script_dir}
1320 %attr(-, root, %{daemon_group}) %{script_dir}/bacula
1321 %attr(-, root, %{daemon_group}) %{script_dir}/bconsole
1322 %attr(-, root, %{daemon_group}) %{script_dir}/create_bacula_database
1323 %attr(-, root, %{daemon_group}) %{script_dir}/drop_bacula_database
1324 %attr(-, root, %{daemon_group}) %{script_dir}/grant_bacula_privileges
1325 %attr(-, root, %{daemon_group}) %{script_dir}/make_bacula_tables
1326 %attr(-, root, %{daemon_group}) %{script_dir}/drop_bacula_tables
1327 %attr(-, root, %{daemon_group}) %{script_dir}/update_bacula_tables
1328 %attr(-, root, %{daemon_group}) %{script_dir}/make_catalog_backup
1329 %attr(-, root, %{daemon_group}) %{script_dir}/delete_catalog_backup
1330 %attr(-, root, %{daemon_group}) %{script_dir}/btraceback.dbx
1331 %attr(-, root, %{daemon_group}) %{script_dir}/btraceback.gdb
1332 %attr(-, root, %{daemon_group}) %{sysconf_dir}/rescue
1333 %attr(-, root, %{daemon_group}) %{script_dir}/disk-changer
1334 %attr(-, root, %{daemon_group}) %{script_dir}/bacula-ctl-dir
1335 %attr(-, root, %{daemon_group}) %{script_dir}/bacula-ctl-fd
1336 %attr(-, root, %{daemon_group}) %{script_dir}/bacula-ctl-sd
1337 %attr(-, root, %{daemon_group}) /etc/init.d/bacula-dir
1338 %attr(-, root, %{daemon_group}) /etc/init.d/bacula-fd
1339 %attr(-, root, %{storage_daemon_group}) %{script_dir}/dvd-handler
1340 %attr(-, root, %{storage_daemon_group}) /etc/init.d/bacula-sd
1341 %attr(-, root, %{storage_daemon_group}) %{script_dir}/mtx-changer
1342
1343 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
1344 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
1345
1346 /etc/logrotate.d/bacula
1347 /etc/log.d/scripts/services/bacula
1348 %attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bacula-dir.conf
1349 %attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bacula-fd.conf
1350 %attr(-, root, %{storage_daemon_group}) %config(noreplace) %{sysconf_dir}/bacula-sd.conf
1351 %attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bconsole.conf
1352 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/logfiles/bacula.conf
1353 %attr(-, root, %{daemon_group}) %config(noreplace) /etc/log.d/conf/services/bacula.conf
1354 %attr(-, root, %{daemon_group}) %config(noreplace) %{script_dir}/query.sql
1355
1356 %attr(-, %{storage_daemon_user}, %{daemon_group}) %dir %{working_dir}
1357
1358 /usr/sbin/bacula-dir
1359 /usr/sbin/bacula-fd
1360 /usr/sbin/bacula-sd
1361 /usr/sbin/bcopy
1362 /usr/sbin/bextract
1363 /usr/sbin/bls
1364 /usr/sbin/bscan
1365 /usr/sbin/btape
1366 /usr/sbin/btraceback
1367 /usr/sbin/bconsole
1368 /usr/sbin/dbcheck
1369 /usr/sbin/bsmtp
1370 /usr/sbin/bregex
1371 /usr/sbin/bwild
1372 %{_mandir}/man8/bacula-fd.8.%{manpage_ext}
1373 %{_mandir}/man8/bacula-dir.8.%{manpage_ext}
1374 %{_mandir}/man8/bacula-sd.8.%{manpage_ext}
1375 %{_mandir}/man8/bacula.8.%{manpage_ext}
1376 %{_mandir}/man8/bconsole.8.%{manpage_ext}
1377 %{_mandir}/man8/bcopy.8.%{manpage_ext}
1378 %{_mandir}/man8/bextract.8.%{manpage_ext}
1379 %{_mandir}/man8/bls.8.%{manpage_ext}
1380 %{_mandir}/man8/bscan.8.%{manpage_ext}
1381 %{_mandir}/man8/btape.8.%{manpage_ext}
1382 %{_mandir}/man8/btraceback.8.%{manpage_ext}
1383 %{_mandir}/man8/dbcheck.8.%{manpage_ext}
1384 %{_mandir}/man1/bsmtp.1.%{manpage_ext}
1385 %endif
1386
1387 %if %{mysql}
1388 %pre mysql
1389 # test for bacula database older than version 9
1390 # note: this ASSUMES no password has been set for bacula database
1391 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
1392 %endif
1393
1394 %if %{sqlite}
1395 %pre sqlite
1396 # test for bacula database older than version 9
1397 if [ -s %{working_dir}/bacula.db ] && [ -s %{sqlite_bindir}/sqlite ];then
1398         DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
1399 %endif
1400
1401 %if %{postgresql}
1402 %pre postgresql
1403 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
1404 %endif
1405
1406 %if ! %{client_only}
1407 if [ -n "$DB_VER" ] && [ "$DB_VER" -lt "9" ]; then
1408         echo "This bacula upgrade will update a bacula database from version 9 to 10."
1409         echo "You appear to be running database version $DB_VER. You must first update"
1410         echo "your database to version 9 and then install this upgrade. The alternative"
1411         echo "is to use %{script_dir}/drop_%{db_backend}_tables to delete all your your current"
1412         echo "catalog information, then do the upgrade. Information on updating a"
1413         echo "database older than version 9 can be found in the release notes."
1414         exit 1
1415 fi
1416 %endif
1417
1418 %if %{sqlite}
1419 fi
1420 %endif
1421
1422 %if ! %{client_only}
1423 # check for and copy %{sysconf_dir}/console.conf to bconsole.conf
1424 if [ -s %{sysconf_dir}/console.conf ];then
1425         cp -p %{sysconf_dir}/console.conf %{sysconf_dir}/bconsole.conf
1426 fi
1427
1428 # create the daemon users and groups
1429 # first create the groups if they don't exist
1430 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1431 if [ -z "$HAVE_BACULA" ]; then
1432         %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1433         echo "The group %{daemon_group} has been added to %{group_file}."
1434         echo "See the manual chapter \"Running Bacula\" for details."
1435 fi
1436 HAVE_BACULA=`grep %{storage_daemon_group} %{group_file} 2>/dev/null`
1437 if [ -z "$HAVE_BACULA" ]; then
1438         %{groupadd} -r %{storage_daemon_group} > /dev/null 2>&1
1439         echo "The group %{storage_daemon_group} has been added to %{group_file}."
1440         echo "See the manual chapter \"Running Bacula\" for details."
1441 fi
1442 # now create the users if they do not exist
1443 # we do not use the -g option allowing the primary group to be set to system default
1444 # this will be a unique group on redhat type systems or the group users on some systems
1445 HAVE_BACULA=`grep %{storage_daemon_user} %{user_file} 2>/dev/null`
1446 if [ -z "$HAVE_BACULA" ]; then
1447         %{useradd} -r -c "Bacula" -d %{working_dir} -g %{storage_daemon_group} -M -s /sbin/nologin %{storage_daemon_user} > /dev/null 2>&1
1448         echo "The user %{storage_daemon_user} has been added to %{user_file}."
1449         echo "See the manual chapter \"Running Bacula\" for details."
1450 fi
1451 HAVE_BACULA=`grep %{director_daemon_user} %{user_file} 2>/dev/null`
1452 if [ -z "$HAVE_BACULA" ]; then
1453         %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{director_daemon_user} > /dev/null 2>&1
1454         echo "The user %{director_daemon_user} has been added to %{user_file}."
1455         echo "See the manual chapter \"Running Bacula\" for details."
1456 fi
1457 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
1458 if [ -z "$HAVE_BACULA" ]; then
1459         %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
1460         echo "The user %{file_daemon_user} has been added to %{user_file}."
1461         echo "See the manual chapter \"Running Bacula\" for details."
1462 fi
1463 # now we add the supplementary groups, this is ok to call even if the users already exist
1464 # we only do this if the user is NOT root
1465 IS_ROOT=%{director_daemon_user}
1466 if [ "$IS_ROOT" != "root" ]; then
1467 %{usermod} -G %{daemon_group} %{director_daemon_user}
1468 fi
1469 IS_ROOT=%{storage_daemon_user}
1470 if [ "$IS_ROOT" != "root" ]; then
1471 %{usermod} -G %{daemon_group},%{storage_daemon_group} %{storage_daemon_user}
1472 fi
1473 IS_ROOT=%{file_daemon_user}
1474 if [ "$IS_ROOT" != "root" ]; then
1475 %{usermod} -G %{daemon_group} %{file_daemon_user}
1476 fi
1477 %endif
1478
1479 %if %{mysql}
1480 %post mysql
1481 %endif
1482 %if %{sqlite}
1483 %post sqlite
1484 %endif
1485 %if %{postgresql}
1486 %post postgresql
1487 %endif
1488
1489 %if ! %{client_only}
1490 # add our links
1491 if [ "$1" -ge 1 ] ; then
1492 /sbin/chkconfig --add bacula-dir
1493 /sbin/chkconfig --add bacula-fd
1494 /sbin/chkconfig --add bacula-sd
1495 fi
1496 %endif
1497
1498 %if %{mysql}
1499 # test for an existing database
1500 # note: this ASSUMES no password has been set for bacula database
1501 DB_VER=`mysql 2>/dev/null bacula -e 'select * from Version;'|tail -n 1`
1502
1503 # grant privileges and create tables if they do not exist
1504 if [ -z "$DB_VER" ]; then
1505         echo "Hmm, doesn't look like you have an existing database."
1506         echo "Granting privileges for MySQL user bacula..."
1507         %{script_dir}/grant_mysql_privileges
1508         echo "Creating MySQL bacula database..."
1509         %{script_dir}/create_mysql_database
1510         echo "Creating bacula tables..."
1511         %{script_dir}/make_mysql_tables
1512
1513 # check to see if we need to upgrade a 1.38 or lower database
1514 elif [ "$DB_VER" -lt "10" ]; then
1515         echo "This release requires an upgrade to your bacula database."
1516         echo "Backing up your current database..."
1517         mysqldump -f --opt bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1518         echo "Upgrading bacula database ..."
1519         %{script_dir}/update_mysql_tables
1520         echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1521
1522 fi
1523 %endif
1524
1525 %if %{sqlite}
1526 # test for an existing database
1527 if [ -s %{working_dir}/bacula.db ]; then
1528         DB_VER=`echo "select * from Version;" | %{sqlite_bindir}/sqlite 2>/dev/null %{working_dir}/bacula.db | tail -n 1`
1529         # check to see if we need to upgrade a 1.38 or lower database
1530         if [ "$DB_VER" -lt "10" ] && [ "$DB_VER" -ge "9" ]; then
1531                 echo "This release requires an upgrade to your bacula database."
1532                 echo "Backing up your current database..."
1533                 echo ".dump" | %{sqlite_bindir}/sqlite %{working_dir}/bacula.db | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1534                 echo "Upgrading bacula database ..."
1535                 %{script_dir}/update_sqlite_tables
1536                 echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1537         fi
1538 else
1539         # create the database and tables
1540         echo "Hmm, doesn't look like you have an existing database."
1541         echo "Creating SQLite database..."
1542         %{script_dir}/create_sqlite_database
1543         echo "Creating the SQLite tables..."
1544         %{script_dir}/make_sqlite_tables
1545 fi
1546 %endif
1547
1548 %if %{postgresql}
1549 # test for an existing database
1550 # note: this ASSUMES no password has been set for bacula database
1551 DB_VER=`echo 'select * from Version;' | psql bacula 2>/dev/null | tail -3 | head -1`
1552
1553 # grant privileges and create tables if they do not exist
1554 if [ -z "$DB_VER" ]; then
1555         echo "Hmm, doesn't look like you have an existing database."
1556         echo "Creating PostgreSQL bacula database..."
1557         %{script_dir}/create_postgresql_database
1558         echo "Creating bacula tables..."
1559         %{script_dir}/make_postgresql_tables
1560         echo "Granting privileges for PostgreSQL user bacula..."
1561         %{script_dir}/grant_postgresql_privileges
1562
1563 # check to see if we need to upgrade a 1.38 or lower database
1564 elif [ "$DB_VER" -lt "10" ]; then
1565         echo "This release requires an upgrade to your bacula database."
1566         echo "Backing up your current database..."
1567         pg_dump bacula | bzip2 > %{working_dir}/bacula_backup.sql.bz2
1568         echo "Upgrading bacula database ..."
1569         %{script_dir}/update_postgresql_tables
1570         echo "If bacula works correctly you can remove the backup file %{working_dir}/bacula_backup.sql.bz2"
1571         
1572 fi
1573 %endif
1574
1575 %if ! %{client_only}
1576 # generate passwords if needed
1577 if [ -d %{sysconf_dir} ]; then
1578         cd %{sysconf_dir}
1579         for file in *.conf; do
1580                 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
1581                         need_password=`grep $string $file 2>/dev/null`
1582                         if [ -n "$need_password" ]; then
1583                                 pass=`openssl rand -base64 33`
1584                                 sed "s-$string-$pass-g" $file > $file.new
1585                                 cp -f $file.new $file; rm -f $file.new
1586                         fi
1587                 done
1588         done
1589 fi
1590 %endif
1591
1592 %if %{mysql}
1593 %preun mysql
1594 %endif
1595 %if %{sqlite}
1596 %preun sqlite
1597 %endif
1598 %if %{postgresql}
1599 %preun postgresql
1600 %endif
1601
1602 %if ! %{client_only}
1603 # delete our links
1604 if [ $1 = 0 ]; then
1605 /sbin/chkconfig --del bacula-dir
1606 /sbin/chkconfig --del bacula-fd
1607 /sbin/chkconfig --del bacula-sd
1608 fi
1609 %endif
1610
1611
1612 %if ! %{client_only}
1613 %files mtx
1614 %defattr(-,root,root)
1615 %attr(-, root, %{storage_daemon_group}) /usr/sbin/loaderinfo
1616 %attr(-, root, %{storage_daemon_group}) /usr/sbin/mtx
1617 %attr(-, root, %{storage_daemon_group}) /usr/sbin/scsitape
1618 %attr(-, root, %{storage_daemon_group}) /usr/sbin/tapeinfo
1619 %{_mandir}/man1/loaderinfo.1.%{manpage_ext}
1620 %{_mandir}/man1/mtx.1.%{manpage_ext}
1621 %{_mandir}/man1/scsitape.1.%{manpage_ext}
1622 %{_mandir}/man1/tapeinfo.1.%{manpage_ext}
1623 %endif
1624
1625 %files client
1626 %defattr(-,root,root)
1627 %attr(-, root, %{daemon_group}) %dir %{script_dir}
1628 %attr(-, root, %{daemon_group}) %{script_dir}/bconsole
1629 %{script_dir}/bacula-ctl-fd
1630 /etc/init.d/bacula-fd
1631 %attr(-, root, %{daemon_group}) %{sysconf_dir}/rescue
1632
1633 %doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo 
1634 %doc %{_docsrc}/manual/bacula.pdf %{_docsrc}/developers/developers.pdf %{_docsrc}/manual/bacula ../Release_Notes-%{version}-%{release}.txt
1635
1636 /etc/logrotate.d/bacula
1637
1638 %attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bacula-fd.conf
1639 %attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bconsole.conf
1640
1641 %attr(-, root, %{daemon_group}) %dir %{working_dir}
1642
1643 /usr/sbin/bacula-fd
1644 /usr/sbin/btraceback
1645 %attr(-, root, %{daemon_group}) %{script_dir}/btraceback.gdb
1646 %attr(-, root, %{daemon_group}) %{script_dir}/btraceback.dbx
1647 /usr/sbin/bconsole
1648 %{_mandir}/man8/bacula-fd.8.%{manpage_ext}
1649 %{_mandir}/man8/bacula.8.%{manpage_ext}
1650 %{_mandir}/man8/bconsole.8.%{manpage_ext}
1651 %{_mandir}/man8/btraceback.8.%{manpage_ext}
1652
1653
1654 %pre client
1655 # create the daemon group and user
1656 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1657 if [ -z "$HAVE_BACULA" ]; then
1658         %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1659         echo "The group %{daemon_group} has been added to %{group_file}."
1660         echo "See the manual chapter \"Running Bacula\" for details."
1661 fi
1662 # we do not use the -g option allowing the primary group to be set to system default
1663 # this will be a unique group on redhat type systems or the group users on some systems
1664 HAVE_BACULA=`grep %{file_daemon_user} %{user_file} 2>/dev/null`
1665 if [ -z "$HAVE_BACULA" ]; then
1666         %{useradd} -r -c "Bacula" -d %{working_dir} -g %{daemon_group} -M -s /sbin/nologin %{file_daemon_user} > /dev/null 2>&1
1667         echo "The user %{file_daemon_user} has been added to %{user_file}."
1668         echo "See the manual chapter \"Running Bacula\" for details."
1669 fi
1670 # now we add the supplementary group, this is ok to call even if the user already exists
1671 # we only do this if the user is NOT root
1672 IS_ROOT=%{file_daemon_user}
1673 if [ "$IS_ROOT" != "root" ]; then
1674 %{usermod} -G %{daemon_group} %{file_daemon_user}
1675 fi
1676
1677 %post client
1678 # add our link
1679 if [ "$1" -ge 1 ] ; then
1680 /sbin/chkconfig --add bacula-fd
1681 fi
1682
1683 # generate passwords if needed
1684 if [ -d %{sysconf_dir} ]; then
1685         cd %{sysconf_dir}
1686         for file in *.conf; do
1687                 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
1688                         need_password=`grep $string $file 2>/dev/null`
1689                         if [ -n "$need_password" ]; then
1690                                 pass=`openssl rand -base64 33`
1691                                 sed "s-$string-$pass-g" $file > $file.new
1692                                 cp -f $file.new $file; rm -f $file.new
1693                         fi
1694                 done
1695         done
1696 fi
1697
1698 %preun client
1699 # delete our link
1700 if [ $1 = 0 ]; then
1701 /sbin/chkconfig --del bacula-fd
1702 fi
1703
1704 %if ! %{client_only}
1705 %files updatedb
1706 %defattr(-,root,%{daemon_group})
1707 %{script_dir}/updatedb/*
1708
1709 %pre updatedb
1710 # create the daemon group
1711 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1712 if [ -z "$HAVE_BACULA" ]; then
1713         %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1714         echo "The group %{daemon_group} has been added to %{group_file}."
1715         echo "See the manual chapter \"Running Bacula\" for details."
1716 fi
1717
1718 %post updatedb
1719 echo "The database update scripts were installed to %{script_dir}/updatedb"
1720 %endif
1721
1722 %if %{bgconsole}
1723 %files bgconsole
1724 %defattr(-,root,root)
1725 /usr/sbin/bgnome-console
1726 %attr(-, root, %{daemon_group}) %dir %{script_dir}
1727 %attr(-, root, %{daemon_group}) %{script_dir}/bgconsole
1728 %attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/gnome-console.conf
1729 /usr/share/pixmaps/bacula.png
1730 /usr/share/applications/bacula.desktop
1731 %{_mandir}/man1/bacula-console-gnome.1.%{manpage_ext}
1732 %endif
1733
1734 %if %{bgconsole} && ! %{rh8}
1735 /usr/sbin/bacula-tray-monitor
1736 %config(noreplace) %{sysconf_dir}/tray-monitor.conf
1737 /usr/share/pixmaps/bacula-tray-monitor.xpm
1738 /usr/share/applications/bacula-tray-monitor.desktop
1739 %{_mandir}/man1/bacula-tray-monitor.1.%{manpage_ext}
1740 %endif
1741
1742 %if %{bgconsole} && ! %{su9} && ! %{su10} && ! %{su102}
1743 # add the console helper files
1744 %config(noreplace,missingok) /etc/pam.d/gnome-console
1745 %config(noreplace,missingok) /etc/security/console.apps/gnome-console
1746 /usr/bin/gnome-console
1747 %endif
1748
1749 %if %{bgconsole}
1750 %pre bgconsole
1751 # create the daemon group
1752 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1753 if [ -z "$HAVE_BACULA" ]; then
1754         %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1755         echo "The group %{daemon_group} has been added to %{group_file}."
1756         echo "See the manual chapter \"Running Bacula\" for details."
1757 fi
1758
1759 %post bgconsole
1760 # generate passwords if needed
1761 if [ -d %{sysconf_dir} ]; then
1762         cd %{sysconf_dir}
1763         for file in *.conf; do
1764                 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
1765                         need_password=`grep $string $file 2>/dev/null`
1766                         if [ -n "$need_password" ]; then
1767                                 pass=`openssl rand -base64 33`
1768                                 sed "s-$string-$pass-g" $file > $file.new
1769                                 cp -f $file.new $file; rm -f $file.new
1770                         fi
1771                 done
1772         done
1773 fi
1774 %endif
1775
1776 %if %{bwxconsole}
1777 %files bwxconsole
1778 %defattr(-,root,root)
1779 /usr/sbin/bwxconsole
1780 %attr(-, root, %{daemon_group}) %dir %{sysconf_dir}
1781 %attr(-, root, %{daemon_group}) %config(noreplace) %{sysconf_dir}/bwxconsole.conf
1782 /usr/share/pixmaps/wxwin16x16.xpm
1783 /usr/share/applications/bwxconsole.desktop
1784 %{_mandir}/man1/bacula-bwxconsole.1.%{manpage_ext}
1785 %endif
1786
1787 %if %{bwxconsole} && ! %{su9} && ! %{su10} && ! %{su102}
1788 # add the console helper files
1789 %config(noreplace,missingok) /etc/pam.d/bwxconsole
1790 %config(noreplace,missingok) /etc/security/console.apps/bwxconsole
1791 /usr/bin/bwxconsole
1792 %endif
1793
1794 %if %{bwxconsole}
1795 %pre bwxconsole
1796 # create the daemon group
1797 HAVE_BACULA=`grep %{daemon_group} %{group_file} 2>/dev/null`
1798 if [ -z "$HAVE_BACULA" ]; then
1799         %{groupadd} -r %{daemon_group} > /dev/null 2>&1
1800         echo "The group %{daemon_group} has been added to %{group_file}."
1801         echo "See the manual chapter \"Running Bacula\" for details."
1802 fi
1803
1804 %post bwxconsole
1805 # generate passwords if needed
1806 if [ -d %{sysconf_dir} ]; then
1807         cd %{sysconf_dir}
1808         for file in *.conf; do
1809                 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
1810                         need_password=`grep $string $file 2>/dev/null`
1811                         if [ -n "$need_password" ]; then
1812                                 pass=`openssl rand -base64 33`
1813                                 sed "s-$string-$pass-g" $file > $file.new
1814                                 cp -f $file.new $file; rm -f $file.new
1815                         fi
1816                 done
1817         done
1818 fi
1819 %endif
1820
1821 %changelog
1822 * Sat Apr 08 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
1823 - merge Otto Mueller's patch but keep script dir set to /etc/bacula
1824 - add build tag for Scientific Linux per Jon Peatfield <J.S.Peatfield@damtp.cam.ac.uk>
1825 * Tue Mar 27 2007 Otto Mueller <otto.mueller@bundestag.de>
1826 - adjust directory locations for FHS-compatibility
1827   sysconf_dir (/etc/bacula), script_dir (/usr/lib/bacula),
1828   working_dir (/var/lib/bacula) and pid_dir (/var/run)
1829 * Mon Feb 26 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
1830 - add SuSE 10.2 target
1831 * Sat Jan 20 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
1832 - correct bug 752
1833 - set query.sql as config file
1834 - correct bug 754
1835 * Sun Jan 14 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
1836 - 2.0.1 release
1837 - change determination of gcc version per patch from Marc Hennes
1838 - move BuildRequire for atk-devel to gnome only builds
1839 - add fc6 build tag
1840 * Sat Jan 06 2007 D. Scott Barninger <barninger@fairfieldcomputers.com>
1841 - 2.0.0 release
1842 * Sun Oct 15 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1843 - 1.39.26 remove create_sqlite_database.in.patch
1844 * Sun Sep 24 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1845 - change ownership of working_dir on server packages to bacula.bacula so that
1846 - bacula-sd can create bootstrap files
1847 * Sat Sep 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1848 - 1.39.22 remove separate cd and make of manpages the main Makefile does it now
1849 * Sun Aug 06 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1850 - fix manpages file extension for mdk
1851 * Sat Aug 05 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1852 - bug 648 re-enable and update sqlite patches
1853 - 1.39.18 changes
1854 - updatedb 9 to 10
1855 - install man pages
1856 - lock out gconsole build for gtk+ < 2.4
1857 * Mon Jul 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1858 - move pango-devel BuildRequires into gconsole only build
1859 * Sat Jul 15 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1860 - add provides and conflicts for standard suse packages
1861 - add third party packager tag support
1862 - add build_client_only tag
1863 - remove bsmtp from client package
1864 - add bacula-ctl-fd to client package
1865 * Thu Jul 13 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1866 - fix directory creation when wxconsole and not gconsole
1867 * Tue Jul 04 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1868 - add check to buildrequires to make sure libstdc++ version matches gcc
1869 * Mon Jul 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1870 - add python build support
1871 - fix LDFLAGS declarations
1872 * Sun Jul 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1873 - add requires for standard compiler toolchain
1874 - move version and release tags up
1875 - move patches up
1876 - add docs_version tag
1877 * Sat Jul 01 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1878 - update rescuever to 1.8.6
1879 * Sun Jun 25 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1880 - update depkgs to 25Jun06
1881 - add mysql5 build tag
1882 * Mon Jun 12 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1883 - 1.38.10 bump rescue version
1884 * Sun Jun 03 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1885 - fix usermod statements
1886 - add fc5 target
1887 * Thu Apr 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1888 - add -g param back to useradd statements Bug 605
1889 * Mon Apr 17 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1890 - redundant code cleanup
1891 * Sun Apr 16 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1892 - add wxconsole package
1893 * Fri Apr 14 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1894 - 1.38.8 release
1895 - dependency update for Mandriva
1896 * Sun Apr 08 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1897 - 1.38.7 release
1898 - remove -n option from useradd scripts
1899 * Sun Apr 02 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1900 - 1.38.6 release
1901 - fix problem specifying more than one primary group for user bacula
1902 - add build switch to not build gconsole regardless of platform
1903 * Sun Jan 29 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1904 - add centos3 build tag
1905 - fix link error of static-fd on Mandrake with --disable-nls
1906 * Fri Jan 27 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1907 - add fc4 dependencies
1908 * Mon Jan 23 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1909 - add SuSE 10.0 build
1910 - remove specific permission in attrib macros
1911 * Sat Jan 21 2006 D. Scott Barninger <barninger@fairfieldcomputers.com>
1912 - 1.38.5 release
1913 - fix usermode required on suse, suse doesn't have usermode (xsu instead)
1914 - refix compat for _dist on SLES9 which seems to have been removed
1915 - added note regarding Aleksandar's use of specific permissions in attrib macros
1916 - need to review and add specific fc4 build currently using fc3 Requires
1917 * Wed Dec 14 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1918 - 1.38.2 release
1919 - Reorganize files and pre/post sections to remove repetitions
1920 - Always build separate mtx package
1921 - Fix file ownerships for /etc/bacula and Bacula's working dir
1922 * Wed Nov 23 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1923 - Disable GNOME on RH7
1924 * Fri Nov 18 2005 Aleksandar Milivojevic <alex@milivojevic.org>
1925 - Red Hat and look alikes have mtx RPM, do not build/package our version
1926 * Sun Nov 13 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1927 - minor edit to _dist for SLES9 compatibility
1928 * Sat Nov 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1929 - 1.38.0 release
1930 - kern changed location of pdf files and html manual in docs package
1931 * Sun Oct 30 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1932 - 1.38.0 release
1933 - add docs (from prebuilt tarball) and rescue packages back in
1934 - remove dvd-freespace and dvd-writepart files, add dvd-handler
1935 - remove 3 of 4 sqlite script patches as not needed
1936 * Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1937 - changes for 1.38
1938 - remove docs and rescue sections (remove static fd)
1939 - add dvd-freespace and dvd-writepart files
1940 - update depkgs to 22Jun05
1941 - change database update to 8 to 9
1942 * Sun Jul 24 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1943 - minor cleanups before 1.38 changes
1944 - add popt and popt-devel build dependencies
1945 - add tetex and tetex-dvips dependencies for doc build
1946 - replace deprecated Copyright tag with License
1947 * Sat May 07 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1948 - move sqlite installation bindir to /usr/lib/bacula/sqlite and remove
1949 - conflict with sqlite packages. remove readline dependency.
1950 * Sun Apr 17 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1951 - release 1.36.3 update docs
1952 * Tue Apr 05 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1953 - add centos4 build tag
1954 - add x86_64 build tag
1955 * Sun Apr 03 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1956 - add rhel4 build tag
1957 - clean up for mysql4 which is now mdk-10.1, suse-9.2 and rhel4
1958 * Sun Mar 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1959 - add rhel3 build tag
1960 * Tue Mar 01 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1961 - fix tray-monitor.conf for noreplace
1962 * Mon Feb 28 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1963 - fix distribution check for Fedora and Whitebox
1964 * Sun Feb 06 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1965 - add logwatch script
1966 - add dvd scripts
1967 * Sat Jan 15 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1968 - add build for Fedora Core 3 (linc now included in ORDit2)
1969 - add mysql4 define for Mandrake 10.1
1970 * Fri Jan 14 2005 D. Scott Barninger <barninger@fairfieldcomputers.com>
1971 - fix {group_file} variable in post scripts
1972 * Thu Dec 30 2004 D. Scott Barninger <barninger@fairfieldcomputers.com>
1973 - add distribution checking and custom Distribution tag
1974 * Thu Dec 09 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1975 - ASSIGNMENT OF COPYRIGHT
1976 - FOR VALUE RECEIVED, D. Scott Barninger hereby sells, transfers and 
1977 - assigns unto Kern Sibbald, his successors, assigns and personal representatives, 
1978 - all right, title and interest in and to the copyright in this software RPM
1979 - spec file. D. Scott Barninger warrants good title to said copyright, that it is 
1980 - free of all liens, encumbrances or any known claims against said copyright.
1981 * Sat Dec 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1982 - bug 183 fixes
1983 - thanks to Daniel Widyono
1984 - update description for rescue package to describe cdrom creation
1985 * Thu Nov 18 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1986 - update depkgs to 29Oct04
1987 * Fri Nov 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1988 - add cdrom rescue to bacula-rescue package
1989 * Sun Oct 31 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1990 - misc fixes from 1.36.0 suse feedback
1991 - fix situation where sqlite database exists but sqlite has been removed.
1992 * Fri Oct 22 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1993 - remove tray-monitor from RH8 build
1994 - fix permissions on tray-monitor files
1995 * Wed Oct 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
1996 - add Mandrake support and tray-monitor, misc changes for 1.35.8/1.36.0,
1997 - change database update to 7 to 8 upgrade,
1998 - revert depkgs to 08Mar04 as there seems to be a bug in the sqlite
1999 - build in 30Jul04, add freetype dependancy to gnome package.
2000 * Sun Sep 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2001 - add documentation to console for groupadd
2002 * Sat Sep 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2003 - add support for running daemons as root.bacula
2004 - correct for change in location of floppy rescue files in 1.35.2
2005 - removed /etc/bacula/fd script from all packages as it has disappeared from 1.35.2
2006 - updated depgkgs to 30Jul04
2007 * Thu Jun 24 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2008 - really, really fix symlink creation for gconsole
2009 * Thu Jun 17 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2010 - fix symlink creation in gconsole post install
2011 * Sat Jun 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2012 - fixed error in gconsole post script
2013 * Fri Apr 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2014 - add check for gconsole symlink before trying to create it
2015 * Sun Apr 11 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2016 - fix some minor permissions issues on doc files that CVS won't let us fix
2017 * Sun Apr 04 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2018 - add pkgconfig to BuildRequires
2019 - clean up gnome1/2 menu entries for appropriate packages
2020 * Fri Apr 02 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2021 - tightened up doc distribution
2022 * Tue Mar 30 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2023 - added usermode (Redhat) and xsu (SuSE) support for gnome-console;
2024 - rpm's horrible bug that prevents nested conditional macros prevents me
2025 - from implementing these 2 separate approaches within the conditionals which
2026 - create the separate server packages.
2027 - the solution adopted is to remove the gnome-console files from the server packages
2028 - so bacula-gconsole is now an add on for both client and server packages.
2029 - this also now allows the server packages to be install on machines without
2030 - an X-server and we can still maintain a single spec file.
2031 - added tests to make sure we have defined platform and database macros.
2032 * Sat Mar 13 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2033 - corrected mysql prerequisites for suse
2034 * Mon Mar 1 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2035 - replaced all cp commands with cp -p
2036 - removed addition of a+x permissions on gnome-console
2037 - corrected permissions on init scripts
2038 * Sat Feb 28 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2039 - corrected creation of sqlite_bindir in install from !mysql to sqlite
2040 -
2041 - various cleanup patches from Michael K. Johnson:
2042 - corrected post install routines for nicer chkconfig
2043 - removed chmod changes in post routines and moved to install section
2044 - removed interactive nature of post routine for rescue package
2045 - added description of building rescue disks to the description of rescue package
2046 - added clean of build root to beginning of install
2047 - removed specifying attr in all file lists
2048 * Fri Feb 20 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2049 - added bconsole to client package
2050 - added gconsole package as add-on to client
2051 - removed spurious dependancies on updatedb package (!cut/paste)
2052 * Thu Feb 19 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2053 - added updatedb package
2054 * Thu Feb 12 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2055 - added postgresql package
2056 * Wed Feb 11 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2057 - corrected the if else logic in the dependancy sections
2058 - changes for 1.34 release
2059 - /etc/bacula/console is now /etc/bacula/bconsole
2060 - /etc/bacula/console.conf is now /etc/bacula/bconsole.conf
2061 - /usr/sbin/btraceback.gdb is now /etc/bacula/btraceback.gdb
2062 - /usr/sbin/smtp is now /usr/sbin/bsmtp
2063 - added new /etc/bacula/drop_mysql_database
2064 - added new /etc/bacula/drop_sqlite_database
2065 - added new /etc/bacula/grant_sqlite_privileges
2066 - added new generic bacula database scripts in /etc/bacula
2067 - added pre-install sections to check for database versions older than 6
2068 - added check for /etc/bacula/console.conf and copy to bconsole.conf
2069 * Sun Feb 08 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2070 - added /etc/bacula/update_sqlite_tables and /etc/bacula/update_mysql_tables for 1.34 release
2071 - added testing for existing databases before executing any of the database creation scripts
2072 - added defines working_dir and sqlite_bindir in place of hard coded paths
2073 * Sat Jan 31 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2074 - added build configuration for SuSE.
2075 - Thanks to Matt Vollmar <matt at panamschool.edu.sv> for his input
2076 * Sat Jan 24 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2077 - added patch for create_sqlite_database to fix the installed bindir
2078 - added execute of create_sqlite_database to post of sqlite package
2079 * Sat Jan 10 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2080 - added virtual package Provides bacula-dir, bacula-sd, bacula-fd
2081 - added bacula-fd as Requires for rescue package
2082 - added build tag for Fedora Core 1
2083 - cleaned up dependancies for all builds
2084 * Thu Jan 1 2004 D. Scott Barninger <barninger at fairfieldcomputers.com>
2085 - removed rh_version from package names
2086 - added platform build configuration section to beginning of file
2087 * Tue Nov 25 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
2088 - removed make_static_bacula script from rescue package install
2089 * Sun Nov 23 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
2090 - Added define at top of file for depkgs version
2091 - Added rescue sub-package
2092 - Moved requires statements into proper sub-package locations
2093 * Mon Oct 27 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
2094 - Corrected Requires for Gnome 1.4/2.0 builds
2095 * Fri Oct 24 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
2096 - Added separate source declaration for depkgs
2097 - added patch for make_catalog_backup script
2098 * Mon May 11 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
2099 - Misc changes to mysql/sqlite build and rh7/8 menu differences
2100 - Added rh_version to sub-package names
2101 - Added installed but missing file /etc/bacula/gconsole
2102 - rm'd /etc/bacula/grant_mysql_privileges on sqlite builds
2103 * Thu May 08 2003 Kern Sibbald <kern at sibbald.com>
2104 - Update spec for version 1.31 and combine client
2105 * Sun Mar 30 2003 D. Scott Barninger <barninger at fairfieldcomputers.com>
2106 - Initial spec file