]> git.pld-linux.org Git - packages/bacula.git/blame - bacula.spec
- really drop gui from spec
[packages/bacula.git] / bacula.spec
CommitLineData
237bfacd
JK
1# TODO:
2# - update desktop files, think about su-wrappers for console
2b68b0cb 3# - package web admin
2007449a 4# - fix log file permissions
2b68b0cb 5#
f2527d22 6# Conditional build:
2b68b0cb
AM
7%bcond_without console_wx # wx-console program
8%bcond_without gnome # gnome-console program
9%bcond_with python
10%bcond_with rescue
7425cb9d 11%bcond_with sqlite3 # use sqlite3 insted sqlite
aa6db71e 12%bcond_with sqlite3_sync_off # makes sqlite3 backend much faster, but less reliable
f2527d22 13#
bb6e7dc5 14Summary: Bacula - The Network Backup Solution
6a00efc0 15Summary(pl.UTF-8): Bacula - rozwiązanie do wykonywania kopii zapasowych po sieci
bb6e7dc5 16Name: bacula
843b8fc0 17Version: 2.0.2
18Release: 0.1
5ce18635 19Epoch: 0
237bfacd 20License: extended GPL v2
52504a6d 21Group: Networking/Utilities
bb6e7dc5 22Source0: http://dl.sourceforge.net/bacula/%{name}-%{version}.tar.gz
843b8fc0 23# Source0-md5: 299883ddd460336cfb613fd6d9bff989
7425cb9d 24Source1: http://dl.sourceforge.net/bacula/%{name}-docs-%{version}.tar.gz
843b8fc0 25# Source1-md5: a114daae0e276ee274ccd558e42e13f0
783dd8b1
AM
26Source2: http://dl.sourceforge.net/bacula/%{name}-rescue-2.0.0.tar.gz
27# Source2-md5: 4a21381f16355193771a34fc2eb4e806
5ce18635
AM
28Source10: %{name}-dir.init
29Source11: %{name}-fd.init
30Source12: %{name}-sd.init
31Source13: %{name}.logrotate
4280e495
JK
32Source14: %{name}-dir.sysconfig
33Source15: %{name}-fd.sysconfig
34Source16: %{name}-sd.sysconfig
329073aa 35Patch0: %{name}-dvd-handler_path.patch
38a7d6ba
JK
36Patch1: %{name}-link.patch
37Patch2: %{name}-compile.patch
38Patch3: %{name}-wx28.patch
aa6db71e 39Patch4: %{name}-sqlite3_init_query.patch
bb6e7dc5 40URL: http://www.bacula.org/
cc01862b 41BuildRequires: acl-static
f2337569 42BuildRequires: automake
7425cb9d
JK
43%if %{with rescue}
44BuildRequires: fakeroot
45%endif
cc01862b 46BuildRequires: glibc-static
e75759f3 47%if %{with gnome}
237bfacd
JK
48BuildRequires: libgnome-devel >= 2.0
49BuildRequires: libgnomeui-devel >= 2.0
e75759f3 50%endif
cc01862b
JB
51BuildRequires: libstdc++-static
52BuildRequires: libwrap-static
d907cd57 53BuildRequires: mtx
cc01862b 54BuildRequires: ncurses-devel
bb6e7dc5 55BuildRequires: openssl-devel
c74b041d 56BuildRequires: openssl-static
bb6e7dc5 57BuildRequires: pkgconfig
7425cb9d
JK
58%if %{with python}
59BuildRequires: python-static
60%endif
bb6e7dc5 61BuildRequires: readline-devel
52504a6d 62BuildRequires: rpmbuild(macros) >= 1.268
cc01862b 63BuildRequires: sed >= 4.0
7425cb9d
JK
64%if %{with sqlite3}
65BuildRequires: sqlite3-devel
66%else
e2edc3fd 67BuildRequires: sqlite-devel
7425cb9d 68%endif
1376b552 69%if %{with console_wx}
7425cb9d 70BuildRequires: wxGTK2-unicode-devel >= 2.4.0
1376b552 71%endif
bb6e7dc5 72BuildRequires: zlib-devel
1376b552 73BuildRequires: zlib-static
bb6e7dc5
AM
74BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
75
76%define _sysconfdir /etc/%{name}
1a72afd2 77%define _localstatedir /var/lib/%{name}
bb6e7dc5 78
b60fe5cb
ER
79# dependency section is broken. ccache usage is instead to makefiles
80%undefine with_ccache
81
bb6e7dc5
AM
82%description
83Bacula - It comes by night and sucks the vital essence from your
84computers.
85
86Bacula is a set of computer programs that permit you (or the system
87administrator) to manage backup, recovery, and verification of
88computer data across a network of computers of different kinds. In
89technical terms, it is a network client/server based backup program.
90Bacula is relatively easy to use and efficient, while offering many
91advanced storage management features that make it easy to find and
5ce18635 92recover lost or damaged files.
bb6e7dc5 93
192fbfcf
JR
94%description -l pl.UTF-8
95Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
cc01862b 96
192fbfcf
JR
97Bacula to zbiór programów umożliwiających administratorowi na
98zarządzanie kopiami zapasowymi, odzyskiwaniem i weryfikacją danych w
99sieci komputerów różnego rodzaju. W terminologii technicznej jest to
100program do kopii zapasowych pracujący w architekturze klient-serwer.
101Bacula jest stosunkowo łatwa w użyciu i wydajna, oferując przy tym
102wiele zaawansowanych możliwości przy zarządzaniu nośnikami,
103ułatwiających znalezienie i odzyskanie utraconych lub uszkodzonych
104plików.
cc01862b 105
5ce18635
AM
106%package common
107Summary: Common files for bacula package
6a00efc0 108Summary(pl.UTF-8): Pliki wspólne dla pakietu bacula
bb6e7dc5 109Group: Networking/Utilities
237bfacd
JK
110Requires(post): openssl-tools
111Requires(post): sed >= 4.0
1bd568e8 112Requires(post,preun): /sbin/chkconfig
65253ffd
JK
113Requires(postun): /usr/sbin/groupdel
114Requires(postun): /usr/sbin/userdel
1b0a2248 115Requires(pre): /usr/sbin/groupadd
116Requires(pre): /usr/sbin/useradd
abdcd1c5
JB
117Conflicts: bacula-console < 0:1.34.6
118Conflicts: bacula-dir < 0:1.34.6
119Conflicts: bacula-fd < 0:1.34.6
120Conflicts: bacula-sd < 0:1.34.6
bb6e7dc5 121
5ce18635 122%description common
bb6e7dc5
AM
123Bacula - It comes by night and sucks the vital essence from your
124computers.
125
126Bacula is a set of computer programs that permit you (or the system
127administrator) to manage backup, recovery, and verification of
128computer data across a network of computers of different kinds. In
129technical terms, it is a network client/server based backup program.
130Bacula is relatively easy to use and efficient, while offering many
131advanced storage management features that make it easy to find and
5ce18635 132recover lost or damaged files.
bb6e7dc5 133
192fbfcf
JR
134%description common -l pl.UTF-8
135Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
cc01862b 136
192fbfcf
JR
137Bacula to zbiór programów umożliwiających administratorowi na
138zarządzanie kopiami zapasowymi, odzyskiwaniem i weryfikacją danych w
139sieci komputerów różnego rodzaju. W terminologii technicznej jest to
140program do kopii zapasowych pracujący w architekturze klient-serwer.
141Bacula jest stosunkowo łatwa w użyciu i wydajna, oferując przy tym
142wiele zaawansowanych możliwości przy zarządzaniu nośnikami,
143ułatwiających znalezienie i odzyskanie utraconych lub uszkodzonych
144plików.
cc01862b 145
5ce18635
AM
146%package dir
147Summary: Bacula Director and Catalog services
6a00efc0 148Summary(pl.UTF-8): Usługi Bacula Director i Catalog
5ce18635 149Group: Networking/Utilities
237bfacd 150Requires(post): sed >= 4.0
abdcd1c5
JB
151Requires: %{name}-common = %{epoch}:%{version}-%{release}
152Obsoletes: bacula-updatedb
bb6e7dc5 153
5ce18635
AM
154%description dir
155Bacula - It comes by night and sucks the vital essence from your
156computers.
157
158Bacula Director is the program that supervises all the backup,
159restore, verify and archive operations. The system administrator uses
160the Bacula Director to schedule backups and to recover files. Catalog
161services are comprised of the software programs responsible for
162maintaining the file indexes and volume databases for all files backed
163up. The Catalog services permit the System Administrator or user to
164quickly locate and restore any desired file, since it maintains a
165record of all Volumes used, all Jobs run, and all Files saved. This
cece716a 166build requires sqlite%{?with_sqlite3:3} to be installed separately as the catalog
5ce18635
AM
167database.
168
192fbfcf
JR
169%description dir -l pl.UTF-8
170Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
cc01862b 171
192fbfcf 172Bacula Director to program nadzorujący wszystkie operacje wykonywania
cc01862b 173kopii zapasowych, odzyskiwania, weryfikacji i archiwizowania.
192fbfcf
JR
174Administrator używa Bacula Directora do szeregowania kopii zapasowych
175oraz odzyskiwania plików. Usługi katalogowe (Catalog services) są
176używane przez programy odpowiedzialne za zarządzanie indeksami plików
177i bazą danych wolumenów dla wszystkich kopiowanych plików. Usługi
178katalogowe umożliwiają administratorowi lub użytkownikowi szybko
179zlokalizować i odtworzyć dowolny plik, ponieważ utrzymują rekord ze
180wszystkimi używanymi wolumenami, uruchomionymi zadaniami i zapisanymi
cece716a 181plikami. Pakiet wymaga sqlite%{?with_sqlite3:3} zainstalowanego oddzielnie jako bazy
cc01862b
JB
182danych dla katalogu.
183
5ce18635
AM
184%package console
185Summary: Bacula Console
6a00efc0 186Summary(pl.UTF-8): Konsola Baculi
5ce18635 187Group: Networking/Utilities
237bfacd 188Requires(post): sed >= 4.0
abdcd1c5 189Requires: %{name}-common = %{epoch}:%{version}-%{release}
5ce18635
AM
190
191%description console
192Bacula - It comes by night and sucks the vital essence from your
193computers.
194
195Bacula Console is the program that allows the administrator or user to
196communicate with the Bacula Director. This is the text only console
197interface.
198
192fbfcf
JR
199%description console -l pl.UTF-8
200Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
cc01862b 201
192fbfcf
JR
202Bacula Console to program umożliwiający administratorowi lub
203użytkownikowi komunikowanie się z programem Bacula Director. To jest
cc01862b
JB
204interfejs czysto tekstowy.
205
5ce18635 206%package console-wx
cc01862b 207Summary: Bacula wxWidgets Console
6a00efc0 208Summary(pl.UTF-8): Konsola Baculi oparta na wxWidgets
5ce18635 209Group: Networking/Utilities
237bfacd 210Requires(post): sed >= 4.0
abdcd1c5 211Requires: %{name}-common = %{epoch}:%{version}-%{release}
5ce18635
AM
212
213%description console-wx
214Bacula - It comes by night and sucks the vital essence from your
215computers.
216
217Bacula Console is the program that allows the administrator or user to
cc01862b 218communicate with the Bacula Director. This is the wxWidgets GUI
5ce18635
AM
219interface.
220
192fbfcf
JR
221%description console-wx -l pl.UTF-8
222Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
cc01862b 223
192fbfcf
JR
224Bacula Console to program umożliwiający administratorowi lub
225użytkownikowi komunikowanie się z programem Bacula Director. To jest
cc01862b
JB
226interfejs graficzny oparty na wxWidgets.
227
237bfacd
JK
228%package console-gnome
229Summary: Bacula GNOME Console
6a00efc0 230Summary(pl.UTF-8): Konsola Baculi oparta dla GNOME
237bfacd 231Group: Networking/Utilities
237bfacd 232Requires(post): sed >= 4.0
abdcd1c5 233Requires: %{name}-common = %{epoch}:%{version}-%{release}
237bfacd
JK
234
235%description console-gnome
236Bacula - It comes by night and sucks the vital essence from your
237computers.
238
239Bacula Console is the program that allows the administrator or user to
1bd568e8 240communicate with the Bacula Director. This is the GNOME GUI interface.
237bfacd 241
192fbfcf
JR
242%description console-gnome -l pl.UTF-8
243Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
237bfacd 244
192fbfcf
JR
245Bacula Console to program umożliwiający administratorowi lub
246użytkownikowi komunikowanie się z programem Bacula Director. To jest
237bfacd
JK
247interfejs graficzny oparty na GNOME.
248
249%package tray-monitor
250Summary: Bacula Tray Monitor
251Group: Networking/Utilities
237bfacd 252Requires(post): sed >= 4.0
abdcd1c5 253Requires: %{name}-common = %{epoch}:%{version}-%{release}
237bfacd
JK
254
255%description tray-monitor
256Bacula - It comes by night and sucks the vital essence from your
257computers.
258
1b0a2248 259The Monitor program is typically an icon in the system tray. However,
260once the icon is expanded into a full window, the administrator or
261user can obtain status information about the Director or the backup
262status on the local workstation or any other Bacula daemon that is
263configured.
237bfacd 264
5ce18635
AM
265%package fd
266Summary: Bacula File services (Client)
6a00efc0 267Summary(pl.UTF-8): Usługi Bacula File (klient)
5ce18635 268Group: Networking/Utilities
237bfacd 269Requires(post): sed >= 4.0
abdcd1c5 270Requires: %{name}-common = %{epoch}:%{version}-%{release}
5ce18635
AM
271
272%description fd
273Bacula - It comes by night and sucks the vital essence from your
274computers.
275
276Bacula File services (or Client program) is the software program that
277is installed on the machine to be backed up. It is specific to the
278operating system on which it runs and is responsible for providing the
279file attributes and data when requested by the Director. The File
280services are also responsible for the file system dependent part of
281restoring the file attributes and data during a recovery operation.
282This program runs as a daemon on the machine to be backed up, and in
283some of the documentation, the File daemon is referred to as the
284Client (for example in Bacula configuration file).
285
192fbfcf
JR
286%description fd -l pl.UTF-8
287Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
288
289Usługi Bacula File (inaczej program kliencki) to oprogramowanie, które
290instaluje się na maszynach, z których mają być wykonywane kopie
291zapasowe. Są one specyficzne dla systemu operacyjnego, pod którym
292działa dana maszyna i odpowiadają za dostarczanie atrybutów i danych
293plików na żądanie Directora. Usługi plikowe są także odpowiedzialne za
294zależną od systemu plików część odzyskiwania atrybutów i danych plików
295podczas operacji odzyskiwania danych. Program działa jako demon na
296maszynie, która ma być backupowana i w części dokumentacji demon ten
297(File) jest nazywany klientem (na przykład w pliku konfiguracyjnym
cc01862b
JB
298Baculi).
299
5ce18635
AM
300%package sd
301Summary: Bacula Storage services
6a00efc0 302Summary(pl.UTF-8): Usługi Bacula Storage
5ce18635 303Group: Networking/Utilities
237bfacd 304Requires(post): sed >= 4.0
abdcd1c5 305Requires: %{name}-common = %{epoch}:%{version}-%{release}
329073aa 306Conflicts: dvd+rw-tools <= 5.21.4.10.8-1
5ce18635
AM
307
308%description sd
309Bacula - It comes by night and sucks the vital essence from your
310computers.
311
312Bacula Storage services consist of the software programs that perform
313the storage and recovery of the file attributes and data to the
314physical backup media or volumes. In other words, the Storage daemon
315is responsible for reading and writing your tapes (or other storage
316media, e.g. files). The Storage services runs as a daemon on the
317machine that has the backup device (usually a tape drive).
bb6e7dc5 318
192fbfcf
JR
319%description sd -l pl.UTF-8
320Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
cc01862b 321
192fbfcf
JR
322Usługi Bacula Storage składają się z programów obsługujących
323przechowywanie danych oraz odzyskiwanie atrybutów i danych na
324fizycznych nośnikach lub wolumenach. Innymi słowy, demon Storage jest
325odpowiedzialny za odczyt i zapis taśm (lub innych nośników do
326przechowywania danych, np. plików). Usługi Storage działają jako demon
327na maszynie, która zawiera urządzenie backupowe (zwykle napęd
328taśmowy).
cc01862b 329
5ce18635 330%package rescue
bb6e7dc5 331Summary: Bacula - The Network Backup Solution
6a00efc0 332Summary(pl.UTF-8): Bacula - rozwiązanie do wykonywania kopii zapasowych po sieci
bb6e7dc5 333Group: Networking/Utilities
cc01862b 334Requires: %{name}-fd = %{epoch}:%{version}-%{release}
bb6e7dc5
AM
335Requires: coreutils
336Requires: util-linux
bb6e7dc5
AM
337
338%description rescue
339Bacula - It comes by night and sucks the vital essence from your
340computers.
341
342Bacula is a set of computer programs that permit you (or the system
343administrator) to manage backup, recovery, and verification of
344computer data across a network of computers of different kinds. In
345technical terms, it is a network client/server based backup program.
346Bacula is relatively easy to use and efficient, while offering many
347advanced storage management features that make it easy to find and
cc01862b 348recover lost or damaged files.
bb6e7dc5
AM
349
350This package installs scripts for disaster recovery and builds rescue
1b0a2248 351floppy disk for bare metal recovery.
237bfacd 352
cd23ba7c
ER
353To make the bacula rescue disk run "./make_rescue_disk
354--copy-static-bacula
355- --copy-etc-files" from the %{_sysconfdir}/rescue directory. To
356 recreate the rescue information for this system run ./getdiskinfo
357 again.
cc01862b 358
192fbfcf
JR
359%description rescue -l pl.UTF-8
360Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów.
cc01862b 361
192fbfcf
JR
362Bacula to zbiór programów umożliwiających administratorowi na
363zarządzanie kopiami zapasowymi, odzyskiwaniem i weryfikacją danych w
364sieci komputerów różnego rodzaju. W terminologii technicznej jest to
365program do kopii zapasowych pracujący w architekturze klient-serwer.
366Bacula jest stosunkowo łatwa w użyciu i wydajna, oferując przy tym
367wiele zaawansowanych możliwości przy zarządzaniu nośnikami,
368ułatwiających znalezienie i odzyskanie utraconych lub uszkodzonych
369plików.
cc01862b 370
192fbfcf 371Ten pakiet zawiera skrypty do odtwarzania po awarii i tworzy dyskietkę
1b0a2248 372ratunkowe do odtwarzania systemu od zera.
cc01862b 373
192fbfcf 374Aby stworzyć dyskietkę ratunkową Baculi, należy uruchomić "./make_rescue_disk
cc01862b 375--copy-static-bacula - --copy-etc-files" z katalogu
192fbfcf
JR
376%{_sysconfdir}/rescue . Aby ponownie utworzyć informacje ratunkowe dla
377danego systemu, należy ponownie uruchomić ./getdiskinfo .
bb6e7dc5 378
bb6e7dc5 379%prep
7425cb9d 380%setup -q -a 1
329073aa 381%patch0 -p1
2007449a 382%patch1 -p1
b96223ed
SS
383%patch2 -p1
384%patch3 -p1
aa6db71e
JK
385%patch4 -p1
386
783dd8b1 387tar -xf %{SOURCE2} && ln -s bacula-rescue-* rescue
7425cb9d 388sed -i -e 's#wx-config#wx-gtk2-unicode-config#g' configure*
2b68b0cb 389sed -i -e 's#-lreadline -lhistory -ltermcap#-lreadline -lhistory#g' configure*
10650249
AM
390sed -i -e 's#bindir=.*#bindir=%{_bindir}#g' \
391 src/cats/create_* src/cats/delete_* src/cats/drop_* \
392 src/cats/grant_* src/cats/make_* src/cats/update_*
237bfacd 393sed -i -e 's/@hostname@/--hostname--/' src/*/*.conf.in
bb6e7dc5
AM
394
395%build
e7f64ac8 396cp -f %{_datadir}/automake/config.sub autoconf
1bd568e8 397CPPFLAGS="-I/usr/include/ncurses -I%{_includedir}/readline"
bb6e7dc5 398%configure \
5ce18635 399 --with-scriptdir=%{_libexecdir}/%{name} \
e75759f3 400 --%{!?with_gnome:dis}%{?with_gnome:en}able-gnome \
bb6e7dc5 401 --disable-conio \
5ce18635 402 --enable-smartalloc \
1376b552 403 %{?with_console_wx:--enable-wx-console} \
237bfacd 404 --enable-tray-monitor \
2007449a 405 %{?with_python:--with-python} \
bb6e7dc5
AM
406 --with-readline \
407 --with-tcp-wrappers \
408 --with-working-dir=%{_var}/lib/%{name} \
409 --with-dump-email="root@localhost" \
410 --with-job-email="root@localhost" \
411 --with-smtp-host=localhost \
412 --with-pid-dir=/var/run \
413 --with-subsys-dir=/var/lock/subsys \
7425cb9d 414 --with-sqlite%{?with_sqlite3:3} \
aa6db71e 415 %{?with_sqlite3_sync_off:--enable-extra-sqlite3-init="pragma synchronous=0;"} \
237bfacd
JK
416 --with-dir-password="#FAKE-dir-password#" \
417 --with-fd-password="#FAKE-fd-password#" \
418 --with-sd-password="#FAKE-sd-password#" \
419 --with-mon-dir-password="#FAKE-mon-dir-password#" \
420 --with-mon-fd-password="#FAKE-mon-fd-password#" \
421 --with-mon-sd-password="#FAKE-mon-sd-password#" \
2b68b0cb
AM
422 --enable-static-fd \
423 --with-openssl
bb6e7dc5
AM
424%{__make}
425
2b68b0cb
AM
426%if %{with rescue}
427cd rescue
428%configure \
429 --with-bacula=../
430cd linux/cdrom
431fakeroot %{__make}
432%endif
433
bb6e7dc5
AM
434%install
435rm -rf $RPM_BUILD_ROOT
436
237bfacd
JK
437install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,pam.d,sysconfig}
438install -d $RPM_BUILD_ROOT%{_sysconfdir}/rescue
439install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_mandir},%{_bindir}}
bb6e7dc5
AM
440
441%{__make} install \
442 DESTDIR=$RPM_BUILD_ROOT
443
d907cd57 444# static daemon
f2337569 445strip -R.comment -R.note src/filed/static-bacula-fd
d907cd57
AM
446install src/filed/static-bacula-fd $RPM_BUILD_ROOT%{_sysconfdir}/rescue/bacula-fd
447
5ce18635
AM
448install %{SOURCE10} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-dir
449install %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-fd
450install %{SOURCE12} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-sd
1a72afd2 451install %{SOURCE13} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}-dir
4280e495
JK
452install %{SOURCE14} $RPM_BUILD_ROOT/etc/sysconfig/bacula-dir
453install %{SOURCE15} $RPM_BUILD_ROOT/etc/sysconfig/bacula-fd
454install %{SOURCE16} $RPM_BUILD_ROOT/etc/sysconfig/bacula-sd
d907cd57 455
cacc89f5
AZ
456%if %{with console_wx}
457# tray-monitor is for regular users
458mv $RPM_BUILD_ROOT%{_sbindir}/bacula-tray-monitor $RPM_BUILD_ROOT%{_bindir}
459
d907cd57 460install scripts/bacula.png $RPM_BUILD_ROOT%{_pixmapsdir}/bacula.png
237bfacd
JK
461install src/tray-monitor/generic.xpm $RPM_BUILD_ROOT%{_pixmapsdir}/bacula-tray-monitor.xpm
462install scripts/bacula.desktop.gnome2 $RPM_BUILD_ROOT%{_desktopdir}/bacula.desktop
463sed -e 's/gnome-console/wx-console/g;s/Console/Wx Console/g' \
464 scripts/bacula.desktop.gnome2 > $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop
465sed -e 's#%{_sbindir}#%{_bindir}#' \
466 scripts/bacula-tray-monitor.desktop > $RPM_BUILD_ROOT%{_desktopdir}/bacula-tray-monitor.desktop
cacc89f5 467%endif
d907cd57 468
2b68b0cb 469%if %{with rescue}
d907cd57 470# install the rescue stuff, these are the rescue scripts
237bfacd
JK
471install rescue/linux/floppy/backup.etc.list $RPM_BUILD_ROOT%{_sysconfdir}/rescue
472install rescue/linux/floppy/*_* $RPM_BUILD_ROOT%{_sysconfdir}/rescue
473install rescue/linux/floppy/getdiskinfo $RPM_BUILD_ROOT%{_sysconfdir}/rescue
474install rescue/linux/floppy/sfdisk.bz2 $RPM_BUILD_ROOT%{_sysconfdir}/rescue
2b68b0cb 475%endif
bb6e7dc5
AM
476
477# install the updatedb scripts
237bfacd 478install updatedb/update_sqlite* $RPM_BUILD_ROOT%{_libexecdir}/%{name}
d907cd57 479
237bfacd
JK
480# place for site passwords
481touch $RPM_BUILD_ROOT%{_sysconfdir}/{dir-password,fd-password,sd-password}
482touch $RPM_BUILD_ROOT%{_sysconfdir}/{mon-dir-password,mon-fd-password,mon-sd-password}
bb6e7dc5 483
1a72afd2
AM
484# some file changes
485rm -f $RPM_BUILD_ROOT%{_libexecdir}/%{name}/{gconsole,startmysql,stopmysql,bacula,bconsole,fd}
486rm -f $RPM_BUILD_ROOT%{_sbindir}/static-bacula-fd
d5d063ee 487%if !%{with console_wx}
1376b552 488rm -f $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop
1376b552 489%endif
1a72afd2
AM
490touch $RPM_BUILD_ROOT%{_sysconfdir}/.pw.sed
491
f2337569
JB
492%clean
493rm -rf $RPM_BUILD_ROOT
494
5ce18635 495%pre common
fbc59152
ER
496%groupadd -P %{name}-common -g 136 -r -f bacula
497%useradd -P %{name}-common -u 136 -r -d /var/lib/bacula -s /bin/false -c "Bacula User" -g bacula bacula
5ce18635 498
237bfacd
JK
499%post common
500echo "Updating bacula passwords and names..."
501cd /etc/bacula
502for f in *-password ; do
fbc59152 503 if [ ! -s $f ] ; then
237bfacd
JK
504 openssl rand -base64 33 > $f
505 fi
506 p=`cat $f`
b41d8966 507 for cf in *.conf *.conf.rpmnew ; do
237bfacd
JK
508 [ -f $cf ] && sed -i -e"s:#FAKE-$f#:$p:" "$cf" || :
509 done
510done
b41d8966 511for cf in *.conf *.conf.rpmnew ; do
237bfacd
JK
512 [ -f $cf ] && sed -i -e"s:--hostname--:`hostname`:" "$cf" || :
513done
514
5ce18635 515%postun common
28c9f5d0
AM
516if [ "$1" = "0" ]; then
517 %userremove bacula
518 %groupremove bacula
519fi
5ce18635
AM
520
521%post dir
522umask 077
1a72afd2 523[ -s %{_localstatedir}/bacula.db ] && \
9aa69d51 524 DB_VER=`echo "select * from Version;" | \
cece716a 525 %{_bindir}/sqlite%{?with_sqlite3:3} %{_localstatedir}/bacula.db | tail -n 1 2>/dev/null`
5ce18635
AM
526if [ -z "$DB_VER" ]; then
527# grant privileges and create tables
9aa69d51 528 %{_libexecdir}/%{name}/grant_bacula_privileges > dev/null
529 %{_libexecdir}/%{name}/create_bacula_database > dev/null
530 %{_libexecdir}/%{name}/make_bacula_tables > dev/null
2007449a 531elif [ "$DB_VER" -lt "9" ]; then
9aa69d51 532 echo "Backing up bacula tables"
cece716a 533 echo ".dump" | sqlite%{?with_sqlite3:3} %{_localstatedir}/bacula.db | bzip2 > %{_localstatedir}/bacula_backup.sql.bz2
9aa69d51 534 echo "Upgrading bacula tables"
cece716a
JK
535 %if %{with sqlite3}
536 type=sqlite3
537 if [ "$DB_VER" -lt "9" ]; then
538 %{_libexecdir}/%{name}/update_${type}_tables_8_to_9
539 fi
540 %else
541 type=sqlite
542 if [ "$DB_VER" -lt "9" ]; then
543 if [ "$DB_VER" -lt "8" ]; then
544 if [ "$DB_VER" -lt "7" ]; then
545 if [ "$DB_VER" -lt "6" ]; then
546 if [ "$DB_VER" -lt "5" ]; then
547 %{_libexecdir}/%{name}/update_${type}_tables_4_to_5
548 fi
549 %{_libexecdir}/%{name}/update_${type}_tables_5_to_6
2007449a 550 fi
cece716a 551 %{_libexecdir}/%{name}/update_${type}_tables_6_to_7
2b68b0cb 552 fi
cece716a 553 %{_libexecdir}/%{name}/update_${type}_tables_7_to_8
237bfacd 554 fi
cece716a 555 %{_libexecdir}/%{name}/update_${type}_tables_8_to_9
9aa69d51 556 fi
cece716a 557 %endif
9aa69d51 558 %{_libexecdir}/%{name}/update_bacula_tables
559 echo "If bacula works correctly you can remove the backup file %{_localstatedir}/bacula_backup.sql.bz2"
bb6e7dc5 560fi
28c9f5d0
AM
561chown -R bacula:bacula %{_localstatedir}
562chmod -R u+rX,go-rwx %{_localstatedir}/*
bb6e7dc5 563
237bfacd
JK
564echo "Updating Bacula passwords and names..."
565cd /etc/bacula
566for f in *-password ; do
567 p=`cat $f`
329073aa 568 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd 569done
329073aa 570sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd 571
1a72afd2 572/sbin/chkconfig --add bacula-dir
52504a6d 573%service bacula-dir restart "Bacula Director daemon"
bb6e7dc5 574
5ce18635 575%preun dir
1a72afd2 576if [ "$1" = "0" ]; then
52504a6d 577 %service bacula-dir stop
9aa69d51 578 /sbin/chkconfig --del bacula-dir
1a72afd2 579fi
bb6e7dc5 580
5ce18635 581%post fd
237bfacd
JK
582echo "Updating Bacula passwords and names..."
583cd /etc/bacula
584for f in *-password ; do
585 p=`cat $f`
329073aa 586 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd 587done
329073aa 588sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd 589
1a72afd2 590/sbin/chkconfig --add bacula-fd
52504a6d 591%service bacula-fd restart "Bacula File daemon"
bb6e7dc5 592
5ce18635 593%preun fd
1a72afd2 594if [ "$1" = "0" ]; then
52504a6d 595 %service bacula-fd stop
9aa69d51 596 /sbin/chkconfig --del bacula-fd
1a72afd2 597fi
5ce18635
AM
598
599%post sd
237bfacd
JK
600echo "Updating Bacula passwords and names..."
601cd /etc/bacula
602for f in *-password ; do
603 p=`cat $f`
329073aa 604 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd 605done
329073aa 606sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd 607
1a72afd2 608/sbin/chkconfig --add bacula-sd
52504a6d 609%service bacula-sd restart "Bacula Storage daemon"
bb6e7dc5 610
5ce18635 611%preun sd
1a72afd2 612if [ "$1" = "0" ]; then
52504a6d 613 %service bacula-sd stop
9aa69d51 614 /sbin/chkconfig --del bacula-sd
1a72afd2 615fi
5ce18635
AM
616
617%pre console
618if [ -e %{_sysconfdir}/console.conf -a ! -e %{_sysconfdir}/bconsole.conf ]; then
9aa69d51 619 mv %{_sysconfdir}/console.conf %{_sysconfdir}/bconsole.conf
bb6e7dc5
AM
620fi
621
237bfacd
JK
622%post console
623echo "Updating Bacula passwords and names..."
624cd /etc/bacula
625for f in *-password ; do
626 p=`cat $f`
329073aa 627 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd 628done
329073aa 629sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd
JK
630
631%post console-wx
632echo "Updating Bacula passwords and names..."
633cd /etc/bacula
634for f in *-password ; do
635 p=`cat $f`
329073aa 636 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd 637done
329073aa 638sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd
JK
639
640%post console-gnome
641echo "Updating Bacula passwords and names..."
642cd /etc/bacula
643for f in *-password ; do
644 p=`cat $f`
329073aa 645 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd 646done
329073aa 647sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd
JK
648
649%post tray-monitor
650echo "Updating Bacula passwords and names..."
651cd /etc/bacula
652for f in *-password ; do
653 p=`cat $f`
329073aa 654 sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || :
237bfacd 655done
329073aa 656sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || :
bb6e7dc5 657
bb6e7dc5
AM
658%post rescue
659# link our current installed conf file to the rescue directory
f2337569 660ln -sf %{_sysconfdir}/bacula-fd.conf %{_sysconfdir}/rescue/bacula-fd.conf
bb6e7dc5
AM
661
662# run getdiskinfo
663echo "Creating rescue files for this system..."
d907cd57 664cd %{_sysconfdir}/rescue
bb6e7dc5
AM
665./getdiskinfo
666
667%preun rescue
668# remove the files created after the initial rpm installation
f2337569
JB
669if [ "$1" = "0" ]; then
670 rm -f %{_sysconfdir}/rescue/bacula-fd.conf
671 rm -f %{_sysconfdir}/rescue/partition.*
672 rm -f %{_sysconfdir}/rescue/format.*
673 rm -f %{_sysconfdir}/rescue/mount_drives
674 rm -f %{_sysconfdir}/rescue/start_network
675 rm -f %{_sysconfdir}/rescue/sfdisk
676 rm -rf %{_sysconfdir}/rescue/diskinfo/*
677fi
bb6e7dc5 678
5ce18635
AM
679%files common
680%defattr(644,root,root,755)
237bfacd 681%doc LICENSE
1a72afd2 682%dir %{_sysconfdir}
1b0a2248 683%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*-password
79d0fef6 684%attr(755,root,root) %{_sbindir}/bsmtp
7425cb9d 685%attr(755,root,root) %{_sbindir}/btraceback
c74b041d 686%{_mandir}/man8/bacula.8*
7425cb9d
JK
687%{_mandir}/man1/bsmtp.1*
688%{_mandir}/man8/btraceback.8*
5ce18635 689%dir %{_libexecdir}/%{name}
1376b552 690%{_libexecdir}/%{name}/btraceback.dbx
5ce18635 691%{_libexecdir}/%{name}/btraceback.gdb
d6dbe33c 692%attr(770,root,bacula) %dir %{_localstatedir}
5ce18635
AM
693
694%files dir
bb6e7dc5 695%defattr(644,root,root,755)
237bfacd 696%doc ChangeLog CheckList ReleaseNotes kernstodo LICENSE
20c2e4ec 697%doc examples %{name}-docs-%{version}/manual/{*.pdf,bacula}
1b0a2248 698%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-dir.conf
1a72afd2 699%ghost %{_sysconfdir}/.pw.sed
28c9f5d0 700%attr(640,root,root) %config(noreplace) /etc/logrotate.d/bacula-dir
1a72afd2 701%attr(754,root,root) /etc/rc.d/init.d/bacula-dir
cd23ba7c 702%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-dir
5ff0b6a3 703%attr(755,root,root) %{_sbindir}/bacula-dir
cacc89f5
AZ
704%attr(755,root,root) %{_sbindir}/bregex
705%attr(755,root,root) %{_sbindir}/bwild
5ce18635 706%attr(755,root,root) %{_sbindir}/dbcheck
79d0fef6 707%{_mandir}/man8/bacula-dir.8*
7425cb9d 708%{_mandir}/man8/dbcheck.8*
79d0fef6 709%{_libexecdir}/%{name}/query.sql
7425cb9d
JK
710%if %{with sqlite3}
711%attr(755,root,root) %{_libexecdir}/%{name}/create_sqlite3_database
712%attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite3_database
713%attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite3_tables
714%attr(755,root,root) %{_libexecdir}/%{name}/grant_sqlite3_privileges
715%attr(755,root,root) %{_libexecdir}/%{name}/make_sqlite3_tables
716%attr(755,root,root) %{_libexecdir}/%{name}/update_sqlite3_*
717%else
f0a88766 718%attr(755,root,root) %{_libexecdir}/%{name}/create_sqlite_database
719%attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite_database
720%attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite_tables
721%attr(755,root,root) %{_libexecdir}/%{name}/grant_sqlite_privileges
722%attr(755,root,root) %{_libexecdir}/%{name}/make_sqlite_tables
7425cb9d
JK
723%attr(755,root,root) %{_libexecdir}/%{name}/update_sqlite_*
724%endif
f0a88766 725%attr(755,root,root) %{_libexecdir}/%{name}/create_bacula_database
726%attr(755,root,root) %{_libexecdir}/%{name}/drop_bacula_database
727%attr(755,root,root) %{_libexecdir}/%{name}/drop_bacula_tables
728%attr(755,root,root) %{_libexecdir}/%{name}/grant_bacula_privileges
729%attr(755,root,root) %{_libexecdir}/%{name}/make_bacula_tables
730%attr(755,root,root) %{_libexecdir}/%{name}/update_bacula_tables
731%attr(755,root,root) %{_libexecdir}/%{name}/make_catalog_backup
732%attr(755,root,root) %{_libexecdir}/%{name}/delete_catalog_backup
5ce18635
AM
733
734%files fd
735%defattr(644,root,root,755)
237bfacd 736%doc LICENSE
1b0a2248 737%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-fd.conf
1a72afd2 738%attr(754,root,root) /etc/rc.d/init.d/bacula-fd
cd23ba7c 739%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-fd
5ff0b6a3 740%attr(755,root,root) %{_sbindir}/bacula-fd
79d0fef6 741%{_mandir}/man8/bacula-fd.8*
5ce18635
AM
742
743%files sd
744%defattr(644,root,root,755)
237bfacd 745%doc LICENSE
1a72afd2 746%dir %{_sysconfdir}
1b0a2248 747%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-sd.conf
1a72afd2 748%attr(754,root,root) /etc/rc.d/init.d/bacula-sd
cd23ba7c 749%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-sd
5ff0b6a3
AM
750%attr(755,root,root) %{_sbindir}/bacula-sd
751%attr(755,root,root) %{_sbindir}/bcopy
752%attr(755,root,root) %{_sbindir}/bextract
753%attr(755,root,root) %{_sbindir}/bls
754%attr(755,root,root) %{_sbindir}/bscan
755%attr(755,root,root) %{_sbindir}/btape
329073aa 756%attr(755,root,root) %{_libexecdir}/%{name}/mtx-changer
150db1c2 757%attr(755,root,root) %{_libexecdir}/%{name}/disk-changer
329073aa 758%attr(755,root,root) %{_libexecdir}/%{name}/dvd-handler
5ce18635 759%{_mandir}/man8/bacula-sd.8*
7425cb9d
JK
760%{_mandir}/man8/bcopy.8*
761%{_mandir}/man8/bextract.8*
762%{_mandir}/man8/bls.8*
763%{_mandir}/man8/bscan.8*
764%{_mandir}/man8/btape.8*
5ce18635
AM
765
766%files console
bb6e7dc5 767%defattr(644,root,root,755)
237bfacd 768%doc LICENSE
1b0a2248 769%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bconsole.conf
1a72afd2 770%attr(755,root,root) %{_sbindir}/bconsole
7425cb9d 771%{_mandir}/man8/bconsole.8*
5ce18635 772
1376b552 773%if %{with console_wx}
5ce18635
AM
774%files console-wx
775%defattr(644,root,root,755)
237bfacd 776%doc LICENSE
1a72afd2 777%{_pixmapsdir}/%{name}.png
237bfacd 778%{_desktopdir}/bacula-wx.desktop
1b0a2248 779%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/wx-console.conf
1a72afd2 780%attr(755,root,root) %{_sbindir}/wx-console
7425cb9d 781%{_mandir}/man1/bacula-wxconsole.1*
1376b552 782%endif
bb6e7dc5 783
e75759f3 784%if %{with gnome}
237bfacd
JK
785%files console-gnome
786%defattr(644,root,root,755)
787%doc LICENSE
788%{_pixmapsdir}/%{name}.png
789%{_desktopdir}/bacula.desktop
1b0a2248 790%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gnome-console.conf
237bfacd 791%attr(755,root,root) %{_sbindir}/gnome-console
7425cb9d 792%{_mandir}/man1/bacula-console-gnome.1*
e75759f3 793%endif
237bfacd 794
cacc89f5 795%if %{with console_wx}
237bfacd
JK
796%files tray-monitor
797%defattr(644,root,root,755)
798%doc LICENSE
799%{_pixmapsdir}/%{name}-tray-monitor.xpm
800%{_desktopdir}/%{name}-tray-monitor.desktop
cd23ba7c 801%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tray-monitor.conf
237bfacd 802%attr(755,root,root) %{_bindir}/bacula-tray-monitor
7425cb9d 803%{_mandir}/man1/bacula-tray-monitor.1*
cacc89f5 804%endif
237bfacd 805
2b68b0cb 806%if %{with rescue}
bb6e7dc5
AM
807%files rescue
808%defattr(644,root,root,755)
c741b8e0 809%doc LICENSE
4280e495 810%dir %{_sysconfdir}/rescue
1b0a2248 811%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/backup.etc.list
812%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/bacula-fd
813%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/format_floppy
814%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/getdiskinfo
815%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/make_rescue_disk
816%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/restore_bacula
817%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/restore_etc
818%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/run_grub
819%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/run_lilo
820%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/sfdisk.bz2
2b68b0cb 821%endif
This page took 0.188544 seconds and 4 git commands to generate.