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