]>
Commit | Line | Data |
---|---|---|
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: |
6d11b02b | 7 | %bcond_without console_wx # wx-console program |
6d11b02b | 8 | %bcond_without bat # bat Qt4 GUI |
7533d19f | 9 | %bcond_without dbi # use Database Independent Abstraction Layer (libdbi) |
41bc1b6e JK |
10 | %bcond_without mysql # use MySQL |
11 | %bcond_without pgsql # use PostgreSQL | |
2b68b0cb AM |
12 | %bcond_with python |
13 | %bcond_with rescue | |
41bc1b6e | 14 | %bcond_without sqlite3 # use SQLite3 |
6d11b02b | 15 | %bcond_with sqlite3_sync_off # makes SQLite3 backend much faster, but less reliable |
41bc1b6e | 16 | # |
8ba087a4 | 17 | %if %{without sqlite3} |
aeaed87e | 18 | %undefine with_sqlite3_sync_off |
19 | %endif | |
f2527d22 | 20 | # |
bb6e7dc5 | 21 | Summary: Bacula - The Network Backup Solution |
6a00efc0 | 22 | Summary(pl.UTF-8): Bacula - rozwiązanie do wykonywania kopii zapasowych po sieci |
bb6e7dc5 | 23 | Name: bacula |
ffaca901 | 24 | Version: 5.0.1 |
dae3a0bd | 25 | Release: 0.5 |
5ce18635 | 26 | Epoch: 0 |
237bfacd | 27 | License: extended GPL v2 |
52504a6d | 28 | Group: Networking/Utilities |
41bc1b6e | 29 | Source0: http://dl.sourceforge.net/bacula/%{name}-%{version}.tar.gz |
ffaca901 | 30 | # Source0-md5: beb9f8da196b3c9ffb0356f087dbdb99 |
41bc1b6e | 31 | Source1: http://dl.sourceforge.net/bacula/%{name}-docs-%{version}.tar.bz2 |
ffaca901 | 32 | # Source1-md5: ce2ef0dca50ab916fd6701b53b7bb4df |
41bc1b6e | 33 | Source2: http://dl.sourceforge.net/bacula/%{name}-rescue-5.0.0.tar.gz |
367a3c24 | 34 | # Source2-md5: 349623581cfe0bcd798dd137abac959a |
5ce18635 AM |
35 | Source10: %{name}-dir.init |
36 | Source11: %{name}-fd.init | |
37 | Source12: %{name}-sd.init | |
38 | Source13: %{name}.logrotate | |
4280e495 JK |
39 | Source14: %{name}-dir.sysconfig |
40 | Source15: %{name}-fd.sysconfig | |
41 | Source16: %{name}-sd.sysconfig | |
0a03f92d | 42 | Patch0: %{name}-mtx-changer.patch |
38a7d6ba | 43 | Patch1: %{name}-link.patch |
0a03f92d | 44 | Patch2: %{name}-tinfo-readline.patch |
45 | Patch3: %{name}-branding.patch | |
46 | Patch4: %{name}-conf.patch | |
c08d8c7a | 47 | Patch5: %{name}-desktop.patch |
7533d19f | 48 | Patch6: %{name}-64bitbuild_fix.patch |
0f65a227 | 49 | Patch7: %{name}-dbi_fixes.patch |
7545e94f | 50 | Patch8: %{name}-dbi_dbcheck.patch |
dae3a0bd | 51 | Patch9: %{name}-config_no_clean.patch |
bb6e7dc5 | 52 | URL: http://www.bacula.org/ |
0819f86f | 53 | BuildRequires: acl-devel |
54 | BuildRequires: autoconf | |
f2337569 | 55 | BuildRequires: automake |
0819f86f | 56 | BuildRequires: gettext-devel |
57 | BuildRequires: libcap-devel | |
919e8378 | 58 | %{?with_dbi:BuildRequires: libdbi-devel >= 0.8.4} |
0819f86f | 59 | BuildRequires: libtool |
7425cb9d JK |
60 | %if %{with rescue} |
61 | BuildRequires: fakeroot | |
62 | %endif | |
f183f7ef | 63 | BuildRequires: libwrap-devel |
d907cd57 | 64 | BuildRequires: mtx |
cc01862b | 65 | BuildRequires: ncurses-devel |
bb6e7dc5 AM |
66 | BuildRequires: openssl-devel |
67 | BuildRequires: pkgconfig | |
7425cb9d JK |
68 | %if %{with python} |
69 | BuildRequires: python-static | |
70 | %endif | |
c19580f6 | 71 | %if %{with bat} |
304bb97e | 72 | BuildRequires: QtCore-devel |
e3dd858d | 73 | BuildRequires: QtGui-devel |
846b23db JB |
74 | BuildRequires: qt4-build >= 4.3.3-3 |
75 | BuildRequires: qt4-qmake >= 4.3.3-3 | |
6d11b02b | 76 | BuildRequires: qwt-devel >= 5.0.2-2 |
c19580f6 | 77 | %endif |
4c7199dc SP |
78 | %{?with_mysql:BuildRequires: mysql-devel} |
79 | %{?with_pgsql:BuildRequires: postgresql-devel} | |
bb6e7dc5 | 80 | BuildRequires: readline-devel |
52504a6d | 81 | BuildRequires: rpmbuild(macros) >= 1.268 |
cc01862b | 82 | BuildRequires: sed >= 4.0 |
6d11b02b | 83 | %{?with_sqlite3:BuildRequires: sqlite3-devel} |
1376b552 | 84 | %if %{with console_wx} |
7425cb9d | 85 | BuildRequires: wxGTK2-unicode-devel >= 2.4.0 |
1376b552 | 86 | %endif |
bb6e7dc5 | 87 | BuildRequires: zlib-devel |
bb6e7dc5 AM |
88 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
89 | ||
90 | %define _sysconfdir /etc/%{name} | |
1a72afd2 | 91 | %define _localstatedir /var/lib/%{name} |
bb6e7dc5 | 92 | |
41bc1b6e JK |
93 | %define databases %{?with_pgsql:postgresql} %{?with_mysql:mysql} %{?with_sqlite3:sqlite3} %{?with_dbi:dbi} |
94 | ||
b60fe5cb ER |
95 | # dependency section is broken. ccache usage is instead to makefiles |
96 | %undefine with_ccache | |
97 | ||
bb6e7dc5 AM |
98 | %description |
99 | Bacula - It comes by night and sucks the vital essence from your | |
100 | computers. | |
101 | ||
102 | Bacula is a set of computer programs that permit you (or the system | |
103 | administrator) to manage backup, recovery, and verification of | |
104 | computer data across a network of computers of different kinds. In | |
105 | technical terms, it is a network client/server based backup program. | |
106 | Bacula is relatively easy to use and efficient, while offering many | |
107 | advanced storage management features that make it easy to find and | |
5ce18635 | 108 | recover lost or damaged files. |
bb6e7dc5 | 109 | |
192fbfcf JR |
110 | %description -l pl.UTF-8 |
111 | Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów. | |
cc01862b | 112 | |
192fbfcf JR |
113 | Bacula to zbiór programów umożliwiających administratorowi na |
114 | zarządzanie kopiami zapasowymi, odzyskiwaniem i weryfikacją danych w | |
168306e6 ER |
115 | sieci komputerów różnego rodzaju. W terminologii technicznej jest to |
116 | program do kopii zapasowych pracujący w architekturze klient-serwer. | |
117 | Bacula jest stosunkowo łatwa w użyciu i wydajna, oferując przy tym | |
118 | wiele zaawansowanych możliwości przy zarządzaniu nośnikami, | |
119 | ułatwiających znalezienie i odzyskanie utraconych lub uszkodzonych | |
120 | plików. | |
cc01862b | 121 | |
5ce18635 AM |
122 | %package common |
123 | Summary: Common files for bacula package | |
6a00efc0 | 124 | Summary(pl.UTF-8): Pliki wspólne dla pakietu bacula |
bb6e7dc5 | 125 | Group: Networking/Utilities |
237bfacd JK |
126 | Requires(post): openssl-tools |
127 | Requires(post): sed >= 4.0 | |
1bd568e8 | 128 | Requires(post,preun): /sbin/chkconfig |
65253ffd JK |
129 | Requires(postun): /usr/sbin/groupdel |
130 | Requires(postun): /usr/sbin/userdel | |
1b0a2248 | 131 | Requires(pre): /usr/sbin/groupadd |
132 | Requires(pre): /usr/sbin/useradd | |
abdcd1c5 JB |
133 | Conflicts: bacula-console < 0:1.34.6 |
134 | Conflicts: bacula-dir < 0:1.34.6 | |
135 | Conflicts: bacula-fd < 0:1.34.6 | |
136 | Conflicts: bacula-sd < 0:1.34.6 | |
bb6e7dc5 | 137 | |
5ce18635 | 138 | %description common |
bb6e7dc5 AM |
139 | Bacula - It comes by night and sucks the vital essence from your |
140 | computers. | |
141 | ||
142 | Bacula is a set of computer programs that permit you (or the system | |
143 | administrator) to manage backup, recovery, and verification of | |
144 | computer data across a network of computers of different kinds. In | |
145 | technical terms, it is a network client/server based backup program. | |
146 | Bacula is relatively easy to use and efficient, while offering many | |
147 | advanced storage management features that make it easy to find and | |
5ce18635 | 148 | recover lost or damaged files. |
bb6e7dc5 | 149 | |
192fbfcf JR |
150 | %description common -l pl.UTF-8 |
151 | Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów. | |
cc01862b | 152 | |
192fbfcf JR |
153 | Bacula to zbiór programów umożliwiających administratorowi na |
154 | zarządzanie kopiami zapasowymi, odzyskiwaniem i weryfikacją danych w | |
168306e6 ER |
155 | sieci komputerów różnego rodzaju. W terminologii technicznej jest to |
156 | program do kopii zapasowych pracujący w architekturze klient-serwer. | |
157 | Bacula jest stosunkowo łatwa w użyciu i wydajna, oferując przy tym | |
158 | wiele zaawansowanych możliwości przy zarządzaniu nośnikami, | |
159 | ułatwiających znalezienie i odzyskanie utraconych lub uszkodzonych | |
160 | plików. | |
cc01862b | 161 | |
5ce18635 AM |
162 | %package dir |
163 | Summary: Bacula Director and Catalog services | |
6a00efc0 | 164 | Summary(pl.UTF-8): Usługi Bacula Director i Catalog |
5ce18635 | 165 | Group: Networking/Utilities |
237bfacd | 166 | Requires(post): sed >= 4.0 |
abdcd1c5 | 167 | Requires: %{name}-common = %{epoch}:%{version}-%{release} |
41bc1b6e | 168 | Requires: bacula(db) = %{epoch}:%{version}-%{release} |
abdcd1c5 | 169 | Obsoletes: bacula-updatedb |
bb6e7dc5 | 170 | |
5ce18635 AM |
171 | %description dir |
172 | Bacula - It comes by night and sucks the vital essence from your | |
173 | computers. | |
174 | ||
175 | Bacula Director is the program that supervises all the backup, | |
176 | restore, verify and archive operations. The system administrator uses | |
177 | the Bacula Director to schedule backups and to recover files. Catalog | |
178 | services are comprised of the software programs responsible for | |
179 | maintaining the file indexes and volume databases for all files backed | |
180 | up. The Catalog services permit the System Administrator or user to | |
181 | quickly locate and restore any desired file, since it maintains a | |
7533d19f | 182 | record of all Volumes used, all Jobs run, and all Files saved. |
5ce18635 | 183 | |
192fbfcf JR |
184 | %description dir -l pl.UTF-8 |
185 | Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów. | |
cc01862b | 186 | |
192fbfcf | 187 | Bacula Director to program nadzorujący wszystkie operacje wykonywania |
cc01862b | 188 | kopii zapasowych, odzyskiwania, weryfikacji i archiwizowania. |
192fbfcf JR |
189 | Administrator używa Bacula Directora do szeregowania kopii zapasowych |
190 | oraz odzyskiwania plików. Usługi katalogowe (Catalog services) są | |
168306e6 ER |
191 | używane przez programy odpowiedzialne za zarządzanie indeksami plików |
192 | i bazą danych wolumenów dla wszystkich kopiowanych plików. Usługi | |
193 | katalogowe umożliwiają administratorowi lub użytkownikowi szybko | |
194 | zlokalizować i odtworzyć dowolny plik, ponieważ utrzymują rekord ze | |
195 | wszystkimi używanymi wolumenami, uruchomionymi zadaniami i zapisanymi | |
196 | plikami. | |
cc01862b | 197 | |
5ce18635 AM |
198 | %package console |
199 | Summary: Bacula Console | |
6a00efc0 | 200 | Summary(pl.UTF-8): Konsola Baculi |
5ce18635 | 201 | Group: Networking/Utilities |
237bfacd | 202 | Requires(post): sed >= 4.0 |
abdcd1c5 | 203 | Requires: %{name}-common = %{epoch}:%{version}-%{release} |
5ce18635 AM |
204 | |
205 | %description console | |
206 | Bacula - It comes by night and sucks the vital essence from your | |
207 | computers. | |
208 | ||
209 | Bacula Console is the program that allows the administrator or user to | |
210 | communicate with the Bacula Director. This is the text only console | |
211 | interface. | |
212 | ||
192fbfcf JR |
213 | %description console -l pl.UTF-8 |
214 | Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów. | |
cc01862b | 215 | |
192fbfcf JR |
216 | Bacula Console to program umożliwiający administratorowi lub |
217 | użytkownikowi komunikowanie się z programem Bacula Director. To jest | |
cc01862b JB |
218 | interfejs czysto tekstowy. |
219 | ||
5ce18635 | 220 | %package console-wx |
cc01862b | 221 | Summary: Bacula wxWidgets Console |
6a00efc0 | 222 | Summary(pl.UTF-8): Konsola Baculi oparta na wxWidgets |
5ce18635 | 223 | Group: Networking/Utilities |
237bfacd | 224 | Requires(post): sed >= 4.0 |
abdcd1c5 | 225 | Requires: %{name}-common = %{epoch}:%{version}-%{release} |
5ce18635 AM |
226 | |
227 | %description console-wx | |
228 | Bacula - It comes by night and sucks the vital essence from your | |
229 | computers. | |
230 | ||
231 | Bacula Console is the program that allows the administrator or user to | |
cc01862b | 232 | communicate with the Bacula Director. This is the wxWidgets GUI |
5ce18635 AM |
233 | interface. |
234 | ||
192fbfcf JR |
235 | %description console-wx -l pl.UTF-8 |
236 | Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów. | |
cc01862b | 237 | |
192fbfcf JR |
238 | Bacula Console to program umożliwiający administratorowi lub |
239 | użytkownikowi komunikowanie się z programem Bacula Director. To jest | |
cc01862b JB |
240 | interfejs graficzny oparty na wxWidgets. |
241 | ||
304bb97e | 242 | %package console-qt4 |
ece2f4c3 JB |
243 | Summary: Bacula Qt4 Console |
244 | Summary(pl.UTF-8): Konsola Baculi oparta na Qt4 | |
304bb97e AM |
245 | Group: Networking/Utilities |
246 | Requires(post): sed >= 4.0 | |
247 | Requires: %{name}-common = %{epoch}:%{version}-%{release} | |
248 | ||
249 | %description console-qt4 | |
250 | Bacula - It comes by night and sucks the vital essence from your | |
251 | computers. | |
252 | ||
253 | Bacula Console is the program that allows the administrator or user to | |
ece2f4c3 | 254 | communicate with the Bacula Director. This is the Qt4 GUI interface. |
304bb97e AM |
255 | |
256 | %description console-qt4 -l pl.UTF-8 | |
257 | Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów. | |
258 | ||
259 | Bacula Console to program umożliwiający administratorowi lub | |
260 | użytkownikowi komunikowanie się z programem Bacula Director. To jest | |
ece2f4c3 | 261 | interfejs graficzny oparty na Qt4. |
304bb97e | 262 | |
237bfacd JK |
263 | %package tray-monitor |
264 | Summary: Bacula Tray Monitor | |
265 | Group: Networking/Utilities | |
237bfacd | 266 | Requires(post): sed >= 4.0 |
abdcd1c5 | 267 | Requires: %{name}-common = %{epoch}:%{version}-%{release} |
237bfacd JK |
268 | |
269 | %description tray-monitor | |
270 | Bacula - It comes by night and sucks the vital essence from your | |
271 | computers. | |
272 | ||
1b0a2248 | 273 | The Monitor program is typically an icon in the system tray. However, |
274 | once the icon is expanded into a full window, the administrator or | |
275 | user can obtain status information about the Director or the backup | |
276 | status on the local workstation or any other Bacula daemon that is | |
277 | configured. | |
237bfacd | 278 | |
5ce18635 AM |
279 | %package fd |
280 | Summary: Bacula File services (Client) | |
6a00efc0 | 281 | Summary(pl.UTF-8): Usługi Bacula File (klient) |
5ce18635 | 282 | Group: Networking/Utilities |
237bfacd | 283 | Requires(post): sed >= 4.0 |
abdcd1c5 | 284 | Requires: %{name}-common = %{epoch}:%{version}-%{release} |
5ce18635 AM |
285 | |
286 | %description fd | |
287 | Bacula - It comes by night and sucks the vital essence from your | |
288 | computers. | |
289 | ||
290 | Bacula File services (or Client program) is the software program that | |
291 | is installed on the machine to be backed up. It is specific to the | |
292 | operating system on which it runs and is responsible for providing the | |
293 | file attributes and data when requested by the Director. The File | |
294 | services are also responsible for the file system dependent part of | |
295 | restoring the file attributes and data during a recovery operation. | |
296 | This program runs as a daemon on the machine to be backed up, and in | |
297 | some of the documentation, the File daemon is referred to as the | |
298 | Client (for example in Bacula configuration file). | |
299 | ||
192fbfcf JR |
300 | %description fd -l pl.UTF-8 |
301 | Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów. | |
302 | ||
168306e6 ER |
303 | Usługi Bacula File (inaczej program kliencki) to oprogramowanie, które |
304 | instaluje się na maszynach, z których mają być wykonywane kopie | |
305 | zapasowe. Są one specyficzne dla systemu operacyjnego, pod którym | |
306 | działa dana maszyna i odpowiadają za dostarczanie atrybutów i danych | |
307 | plików na żądanie Directora. Usługi plikowe są także odpowiedzialne za | |
308 | zależną od systemu plików część odzyskiwania atrybutów i danych plików | |
309 | podczas operacji odzyskiwania danych. Program działa jako demon na | |
310 | maszynie, która ma być backupowana i w części dokumentacji demon ten | |
311 | (File) jest nazywany klientem (na przykład w pliku konfiguracyjnym | |
312 | Baculi). | |
cc01862b | 313 | |
5ce18635 AM |
314 | %package sd |
315 | Summary: Bacula Storage services | |
6a00efc0 | 316 | Summary(pl.UTF-8): Usługi Bacula Storage |
5ce18635 | 317 | Group: Networking/Utilities |
237bfacd | 318 | Requires(post): sed >= 4.0 |
abdcd1c5 | 319 | Requires: %{name}-common = %{epoch}:%{version}-%{release} |
329073aa | 320 | Conflicts: dvd+rw-tools <= 5.21.4.10.8-1 |
5ce18635 AM |
321 | |
322 | %description sd | |
323 | Bacula - It comes by night and sucks the vital essence from your | |
324 | computers. | |
325 | ||
326 | Bacula Storage services consist of the software programs that perform | |
327 | the storage and recovery of the file attributes and data to the | |
328 | physical backup media or volumes. In other words, the Storage daemon | |
329 | is responsible for reading and writing your tapes (or other storage | |
330 | media, e.g. files). The Storage services runs as a daemon on the | |
331 | machine that has the backup device (usually a tape drive). | |
bb6e7dc5 | 332 | |
192fbfcf JR |
333 | %description sd -l pl.UTF-8 |
334 | Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów. | |
cc01862b | 335 | |
192fbfcf JR |
336 | Usługi Bacula Storage składają się z programów obsługujących |
337 | przechowywanie danych oraz odzyskiwanie atrybutów i danych na | |
168306e6 ER |
338 | fizycznych nośnikach lub wolumenach. Innymi słowy, demon Storage jest |
339 | odpowiedzialny za odczyt i zapis taśm (lub innych nośników do | |
340 | przechowywania danych, np. plików). Usługi Storage działają jako demon | |
341 | na maszynie, która zawiera urządzenie backupowe (zwykle napęd | |
192fbfcf | 342 | taśmowy). |
cc01862b | 343 | |
41bc1b6e JK |
344 | %package db-postgresql |
345 | Summary: PostgreSQL database driver for Bacula | |
346 | Summary(pl.UTF-8): Sterownik bazy PostgreSQL dla Baculi | |
347 | Group: Networking/Utilities | |
348 | Requires(post): /sbin/ldconfig | |
349 | Requires: %{name}-common = %{epoch}:%{version}-%{release} | |
350 | Provides: bacula(db) = %{epoch}:%{version}-%{release} | |
168306e6 | 351 | Obsoletes: bacula(db) |
41bc1b6e JK |
352 | |
353 | %description db-postgresql | |
354 | PostgreSQL database driver for Bacula. | |
355 | ||
356 | %description db-postgresql -l pl.UTF-8 | |
357 | Sterownik bazy PostgreSQL dla Baculi. | |
358 | ||
359 | %package db-mysql | |
360 | Summary: MySQL database driver for Bacula | |
361 | Summary(pl.UTF-8): Sterownik bazy MySQL dla Baculi | |
362 | Group: Networking/Utilities | |
363 | Requires(post): /sbin/ldconfig | |
364 | Requires: %{name}-common = %{epoch}:%{version}-%{release} | |
365 | Provides: bacula(db) = %{epoch}:%{version}-%{release} | |
168306e6 | 366 | Obsoletes: bacula(db) |
41bc1b6e JK |
367 | |
368 | %description db-mysql | |
369 | MySQL database driver for Bacula. | |
370 | ||
371 | %description db-mysql -l pl.UTF-8 | |
372 | Sterownik bazy MySQL dla Baculi. | |
373 | ||
374 | %package db-sqlite3 | |
375 | Summary: SQLite database driver for Bacula | |
376 | Summary(pl.UTF-8): Sterownik bazy SQLite dla Baculi | |
377 | Group: Networking/Utilities | |
378 | Requires(post): /sbin/ldconfig | |
379 | Requires: %{name}-common = %{epoch}:%{version}-%{release} | |
380 | Provides: bacula(db) = %{epoch}:%{version}-%{release} | |
168306e6 | 381 | Obsoletes: bacula(db) |
41bc1b6e JK |
382 | |
383 | %description db-sqlite3 | |
384 | SQLite database driver for Bacula. | |
385 | ||
386 | %description db-sqlite3 -l pl.UTF-8 | |
387 | Sterownik bazy SQLite dla Baculi. | |
388 | ||
389 | %package db-dbi | |
390 | Summary: libdbi database driver for Bacula | |
391 | Summary(pl.UTF-8): Sterownik bazy libdbi dla Baculi | |
392 | Group: Networking/Utilities | |
393 | Requires(post): /sbin/ldconfig | |
394 | Requires: %{name}-common = %{epoch}:%{version}-%{release} | |
395 | Provides: bacula(db) = %{epoch}:%{version}-%{release} | |
168306e6 | 396 | Obsoletes: bacula(db) |
41bc1b6e JK |
397 | |
398 | %description db-dbi | |
399 | libdbi database driver for Bacula. | |
400 | ||
401 | %description db-dbi -l pl.UTF-8 | |
402 | Sterownik baz libdbi dla Baculi. | |
403 | ||
5ce18635 | 404 | %package rescue |
bb6e7dc5 | 405 | Summary: Bacula - The Network Backup Solution |
6a00efc0 | 406 | Summary(pl.UTF-8): Bacula - rozwiązanie do wykonywania kopii zapasowych po sieci |
bb6e7dc5 | 407 | Group: Networking/Utilities |
cc01862b | 408 | Requires: %{name}-fd = %{epoch}:%{version}-%{release} |
bb6e7dc5 AM |
409 | Requires: coreutils |
410 | Requires: util-linux | |
bb6e7dc5 AM |
411 | |
412 | %description rescue | |
413 | Bacula - It comes by night and sucks the vital essence from your | |
414 | computers. | |
415 | ||
416 | Bacula is a set of computer programs that permit you (or the system | |
417 | administrator) to manage backup, recovery, and verification of | |
418 | computer data across a network of computers of different kinds. In | |
419 | technical terms, it is a network client/server based backup program. | |
420 | Bacula is relatively easy to use and efficient, while offering many | |
421 | advanced storage management features that make it easy to find and | |
cc01862b | 422 | recover lost or damaged files. |
bb6e7dc5 AM |
423 | |
424 | This package installs scripts for disaster recovery and builds rescue | |
1b0a2248 | 425 | floppy disk for bare metal recovery. |
237bfacd | 426 | |
192fbfcf JR |
427 | %description rescue -l pl.UTF-8 |
428 | Bacula - przychodzi nocą i wysysa żywotny ekstrakt z komputerów. | |
cc01862b | 429 | |
192fbfcf JR |
430 | Bacula to zbiór programów umożliwiających administratorowi na |
431 | zarządzanie kopiami zapasowymi, odzyskiwaniem i weryfikacją danych w | |
168306e6 ER |
432 | sieci komputerów różnego rodzaju. W terminologii technicznej jest to |
433 | program do kopii zapasowych pracujący w architekturze klient-serwer. | |
434 | Bacula jest stosunkowo łatwa w użyciu i wydajna, oferując przy tym | |
435 | wiele zaawansowanych możliwości przy zarządzaniu nośnikami, | |
436 | ułatwiających znalezienie i odzyskanie utraconych lub uszkodzonych | |
437 | plików. | |
438 | ||
439 | Ten pakiet zawiera skrypty do odtwarzania po awarii i tworzy dyskietkę | |
440 | ratunkowe do odtwarzania systemu od zera. | |
bb6e7dc5 | 441 | |
bb6e7dc5 | 442 | %prep |
7425cb9d | 443 | %setup -q -a 1 |
0a03f92d | 444 | %patch0 -p1 |
ecb9bab1 | 445 | %patch1 -p1 |
0a03f92d | 446 | %patch2 -p1 |
ecb9bab1 | 447 | %patch3 -p1 |
e740cd49 | 448 | %patch4 -p1 |
c08d8c7a | 449 | %patch5 -p1 |
a3c6e4e6 | 450 | #%patch6 -p1 |
dae3a0bd | 451 | %patch7 -p1 |
7545e94f | 452 | %patch8 -p1 |
dae3a0bd | 453 | %patch9 -p1 |
aa6db71e | 454 | |
783dd8b1 | 455 | tar -xf %{SOURCE2} && ln -s bacula-rescue-* rescue |
cf50297e | 456 | |
10650249 AM |
457 | sed -i -e 's#bindir=.*#bindir=%{_bindir}#g' \ |
458 | src/cats/create_* src/cats/delete_* src/cats/drop_* \ | |
459 | src/cats/grant_* src/cats/make_* src/cats/update_* | |
237bfacd | 460 | sed -i -e 's/@hostname@/--hostname--/' src/*/*.conf.in |
bb6e7dc5 | 461 | |
d626c535 | 462 | %if %{with dbi} |
41bc1b6e | 463 | for dbtype in mysql postgresql sqlite3; do |
0f65a227 MM |
464 | sed -i -e "s,@DB_TYPE@,$dbtype,g" src/cats/*_${dbtype}_* |
465 | done | |
d626c535 | 466 | %endif |
0f65a227 | 467 | |
bb6e7dc5 | 468 | %build |
4a39c080 ER |
469 | cd autoconf |
470 | %{__aclocal} -I bacula-macros -I gettext-macros | |
471 | # $BUILD_DIR not seen by libtoolize, export it | |
472 | BUILD_DIR=.. %{__libtoolize} | |
473 | cd .. | |
cf50297e AM |
474 | %{__autoconf} --prepend-include=$(pwd)/autoconf autoconf/configure.in > configure |
475 | ||
dae3a0bd JK |
476 | CPPFLAGS="-I/usr/include/ncurses -I%{_includedir}/readline" |
477 | ||
478 | # we wan't the 'base' build built with the first database in the list, | |
479 | # to make sure it is full-featured | |
41bc1b6e JK |
480 | base_built="no" |
481 | ||
482 | for database in %{databases} ; do | |
41bc1b6e JK |
483 | WXCONFIG=%{_bindir}/wx-gtk2-unicode-config \ |
484 | %configure \ | |
485 | --with-scriptdir=%{_libexecdir}/%{name} \ | |
486 | %{?with_bat:--enable-bat} \ | |
487 | --disable-conio \ | |
488 | --enable-smartalloc \ | |
489 | %{?with_console_wx:--enable-bwx-console} \ | |
490 | --enable-tray-monitor \ | |
491 | %{?with_python:--with-python} \ | |
492 | --with-readline \ | |
493 | --with-tcp-wrappers \ | |
494 | --with-working-dir=%{_var}/lib/%{name} \ | |
495 | --with-dump-email="root@localhost" \ | |
496 | --with-job-email="root@localhost" \ | |
497 | --with-smtp-host=localhost \ | |
498 | --with-pid-dir=/var/run \ | |
499 | --with-subsys-dir=/var/lock/subsys \ | |
500 | --enable-batch-insert \ | |
501 | --with-$database \ | |
502 | %{?with_sqlite3_sync_off:--enable-extra-sqlite3-init="pragma synchronous=0;"} \ | |
503 | --with-dir-password="#FAKE-dir-password#" \ | |
504 | --with-fd-password="#FAKE-fd-password#" \ | |
505 | --with-sd-password="#FAKE-sd-password#" \ | |
506 | --with-mon-dir-password="#FAKE-mon-dir-password#" \ | |
507 | --with-mon-fd-password="#FAKE-mon-fd-password#" \ | |
508 | --with-mon-sd-password="#FAKE-mon-sd-password#" \ | |
509 | --with-openssl | |
510 | ||
511 | if [ "$base_built" = "no" ] ; then | |
512 | %if %{with bat} | |
513 | cd src/qt-console | |
514 | qmake-qt4 bat.pro | |
515 | cd ../.. | |
516 | %endif | |
517 | ||
518 | %{__make} | |
519 | ||
520 | base_built="yes" | |
521 | else | |
522 | %{__make} -C src/cats clean | |
523 | %{__make} -C src/cats | |
524 | fi | |
304bb97e | 525 | |
41bc1b6e JK |
526 | # install the database library in a temporary location |
527 | install -d libbacsql/$database%{_libdir} | |
528 | %{__make} -C src/cats libtool-install DESTDIR=$PWD/libbacsql/$database | |
529 | done | |
bb6e7dc5 | 530 | |
2b68b0cb AM |
531 | %if %{with rescue} |
532 | cd rescue | |
533 | %configure \ | |
534 | --with-bacula=../ | |
535 | cd linux/cdrom | |
536 | fakeroot %{__make} | |
537 | %endif | |
538 | ||
bb6e7dc5 AM |
539 | %install |
540 | rm -rf $RPM_BUILD_ROOT | |
541 | ||
237bfacd JK |
542 | install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,pam.d,sysconfig} |
543 | install -d $RPM_BUILD_ROOT%{_sysconfdir}/rescue | |
3c0eac7c | 544 | install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_mandir},%{_bindir},/var/log/bacula} |
bb6e7dc5 AM |
545 | |
546 | %{__make} install \ | |
547 | DESTDIR=$RPM_BUILD_ROOT | |
548 | ||
41bc1b6e JK |
549 | # install libraries for all the database backends |
550 | # ldconfig will add the soname symlinks when one of the packages is installed | |
551 | for database in %{databases} ; do | |
552 | for libfile in libbacsql/$database%{_libdir}/lib*-*.so ; do | |
553 | orig_name=`basename $libfile` | |
554 | file_prefix="${orig_name%%-*.so}" | |
555 | file_suffix="${orig_name#*-}" | |
556 | file_name="$file_prefix-$database-$file_suffix" | |
557 | install "$libfile" "$RPM_BUILD_ROOT/%{_libdir}/$file_name" | |
558 | ln -sf "$file_name" "$RPM_BUILD_ROOT/%{_libdir}/$orig_name" | |
559 | done | |
560 | done | |
561 | ||
5ce18635 AM |
562 | install %{SOURCE10} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-dir |
563 | install %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-fd | |
564 | install %{SOURCE12} $RPM_BUILD_ROOT/etc/rc.d/init.d/bacula-sd | |
1a72afd2 | 565 | install %{SOURCE13} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}-dir |
4280e495 JK |
566 | install %{SOURCE14} $RPM_BUILD_ROOT/etc/sysconfig/bacula-dir |
567 | install %{SOURCE15} $RPM_BUILD_ROOT/etc/sysconfig/bacula-fd | |
568 | install %{SOURCE16} $RPM_BUILD_ROOT/etc/sysconfig/bacula-sd | |
d907cd57 | 569 | |
cacc89f5 AZ |
570 | %if %{with console_wx} |
571 | # tray-monitor is for regular users | |
a3c6e4e6 | 572 | #mv $RPM_BUILD_ROOT%{_sbindir}/bacula-tray-monitor $RPM_BUILD_ROOT%{_bindir} |
cacc89f5 | 573 | |
d907cd57 | 574 | install scripts/bacula.png $RPM_BUILD_ROOT%{_pixmapsdir}/bacula.png |
a3c6e4e6 | 575 | #install src/tray-monitor/generic.xpm $RPM_BUILD_ROOT%{_pixmapsdir}/bacula-tray-monitor.xpm |
237bfacd JK |
576 | sed -e 's/gnome-console/wx-console/g;s/Console/Wx Console/g' \ |
577 | scripts/bacula.desktop.gnome2 > $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop | |
a3c6e4e6 AZ |
578 | #sed -e 's#%{_sbindir}#%{_bindir}#' \ |
579 | # scripts/bacula-tray-monitor.desktop > $RPM_BUILD_ROOT%{_desktopdir}/bacula-tray-monitor.desktop | |
cacc89f5 | 580 | %endif |
d907cd57 | 581 | |
304bb97e | 582 | %if %{with bat} |
d626c535 | 583 | install src/qt-console/.libs/bat $RPM_BUILD_ROOT%{_sbindir} |
304bb97e AM |
584 | install scripts/bat.desktop $RPM_BUILD_ROOT%{_desktopdir} |
585 | %endif | |
586 | ||
2b68b0cb | 587 | %if %{with rescue} |
d907cd57 | 588 | # install the rescue stuff, these are the rescue scripts |
237bfacd JK |
589 | install rescue/linux/floppy/backup.etc.list $RPM_BUILD_ROOT%{_sysconfdir}/rescue |
590 | install rescue/linux/floppy/*_* $RPM_BUILD_ROOT%{_sysconfdir}/rescue | |
591 | install rescue/linux/floppy/getdiskinfo $RPM_BUILD_ROOT%{_sysconfdir}/rescue | |
592 | install rescue/linux/floppy/sfdisk.bz2 $RPM_BUILD_ROOT%{_sysconfdir}/rescue | |
2b68b0cb | 593 | %endif |
bb6e7dc5 | 594 | |
3c0eac7c AM |
595 | touch $RPM_BUILD_ROOT/var/log/bacula/log |
596 | ||
bb6e7dc5 | 597 | # install the updatedb scripts |
237bfacd | 598 | install updatedb/update_sqlite* $RPM_BUILD_ROOT%{_libexecdir}/%{name} |
d907cd57 | 599 | |
237bfacd JK |
600 | # place for site passwords |
601 | touch $RPM_BUILD_ROOT%{_sysconfdir}/{dir-password,fd-password,sd-password} | |
602 | touch $RPM_BUILD_ROOT%{_sysconfdir}/{mon-dir-password,mon-fd-password,mon-sd-password} | |
bb6e7dc5 | 603 | |
8ba087a4 | 604 | mv $RPM_BUILD_ROOT%{_libdir}/bacula/mtx-changer.conf $RPM_BUILD_ROOT/etc/bacula/mtx-changer.conf |
0a03f92d | 605 | |
1a72afd2 AM |
606 | # some file changes |
607 | rm -f $RPM_BUILD_ROOT%{_libexecdir}/%{name}/{gconsole,startmysql,stopmysql,bacula,bconsole,fd} | |
8ba087a4 | 608 | %if %{without console_wx} |
1376b552 | 609 | rm -f $RPM_BUILD_ROOT%{_desktopdir}/bacula-wx.desktop |
1376b552 | 610 | %endif |
1a72afd2 AM |
611 | touch $RPM_BUILD_ROOT%{_sysconfdir}/.pw.sed |
612 | ||
8ba087a4 ER |
613 | rm $RPM_BUILD_ROOT%{_docdir}/bacula/ChangeLog |
614 | rm $RPM_BUILD_ROOT%{_docdir}/bacula/INSTALL | |
615 | rm $RPM_BUILD_ROOT%{_docdir}/bacula/LICENSE | |
616 | rm $RPM_BUILD_ROOT%{_docdir}/bacula/README | |
617 | rm $RPM_BUILD_ROOT%{_docdir}/bacula/ReleaseNotes | |
618 | rm $RPM_BUILD_ROOT%{_docdir}/bacula/VERIFYING | |
619 | rm $RPM_BUILD_ROOT%{_docdir}/bacula/technotes | |
620 | ||
7545e94f JK |
621 | # startup scripts, those in /etc/rc.d/init.d are better |
622 | rm $RPM_BUILD_ROOT%{_sbindir}/bacula | |
623 | rm $RPM_BUILD_ROOT%{_libexecdir}/%{name}/bacula-ctl-* | |
624 | ||
41bc1b6e JK |
625 | # unsupported |
626 | rm $RPM_BUILD_ROOT%{_libexecdir}/%{name}/*_bdb_* | |
627 | ||
7545e94f JK |
628 | # rename to avoid possible conflicts |
629 | mv $RPM_BUILD_ROOT%{_sbindir}/{,bacula-}dbcheck | |
630 | mv $RPM_BUILD_ROOT%{_mandir}/man8/{,bacula-}dbcheck.8.gz | |
631 | ||
632 | # no -devel files packaged, so this is also useless | |
633 | rm $RPM_BUILD_ROOT%{_libdir}/libbac{,cfg,find,py,sql}.{so,la} | |
634 | ||
41bc1b6e JK |
635 | # placeholders for the symlinks set in %%post db-* |
636 | for f in create_bacula_database drop_bacula_database drop_bacula_tables \ | |
637 | grant_bacula_privileges make_bacula_tables update_bacula_tables ; do | |
638 | ||
639 | ln -sf /dev/null $RPM_BUILD_ROOT%{_libexecdir}/%{name}/$f | |
640 | done | |
7545e94f JK |
641 | |
642 | ||
f2337569 JB |
643 | %clean |
644 | rm -rf $RPM_BUILD_ROOT | |
645 | ||
5ce18635 | 646 | %pre common |
fbc59152 ER |
647 | %groupadd -P %{name}-common -g 136 -r -f bacula |
648 | %useradd -P %{name}-common -u 136 -r -d /var/lib/bacula -s /bin/false -c "Bacula User" -g bacula bacula | |
5ce18635 | 649 | |
237bfacd | 650 | %post common |
0a03f92d | 651 | /sbin/ldconfig |
237bfacd JK |
652 | echo "Updating bacula passwords and names..." |
653 | cd /etc/bacula | |
654 | for f in *-password ; do | |
fbc59152 | 655 | if [ ! -s $f ] ; then |
237bfacd JK |
656 | openssl rand -base64 33 > $f |
657 | fi | |
658 | p=`cat $f` | |
b41d8966 | 659 | for cf in *.conf *.conf.rpmnew ; do |
237bfacd JK |
660 | [ -f $cf ] && sed -i -e"s:#FAKE-$f#:$p:" "$cf" || : |
661 | done | |
662 | done | |
b41d8966 | 663 | for cf in *.conf *.conf.rpmnew ; do |
237bfacd JK |
664 | [ -f $cf ] && sed -i -e"s:--hostname--:`hostname`:" "$cf" || : |
665 | done | |
666 | ||
5ce18635 | 667 | %postun common |
0a03f92d | 668 | /sbin/ldconfig |
28c9f5d0 AM |
669 | if [ "$1" = "0" ]; then |
670 | %userremove bacula | |
671 | %groupremove bacula | |
672 | fi | |
5ce18635 AM |
673 | |
674 | %post dir | |
675 | umask 077 | |
acd8643c AM |
676 | |
677 | # XXX: Most of this upgrade procedure is safe for sqlite only. Other databases would require knowledge | |
678 | # about currently used version so we can't easily support these :( | |
679 | ||
a3c6e4e6 | 680 | %if %{with sqlite3} |
1a72afd2 | 681 | [ -s %{_localstatedir}/bacula.db ] && \ |
9aa69d51 | 682 | DB_VER=`echo "select * from Version;" | \ |
cece716a | 683 | %{_bindir}/sqlite%{?with_sqlite3:3} %{_localstatedir}/bacula.db | tail -n 1 2>/dev/null` |
acd8643c | 684 | |
5ce18635 AM |
685 | if [ -z "$DB_VER" ]; then |
686 | # grant privileges and create tables | |
9aa69d51 | 687 | %{_libexecdir}/%{name}/grant_bacula_privileges > dev/null |
688 | %{_libexecdir}/%{name}/create_bacula_database > dev/null | |
689 | %{_libexecdir}/%{name}/make_bacula_tables > dev/null | |
acd8643c | 690 | else |
9aa69d51 | 691 | echo "Backing up bacula tables" |
cece716a | 692 | echo ".dump" | sqlite%{?with_sqlite3:3} %{_localstatedir}/bacula.db | bzip2 > %{_localstatedir}/bacula_backup.sql.bz2 |
acd8643c | 693 | |
8e872bc4 | 694 | db_type="%{database}" |
acd8643c AM |
695 | |
696 | next_ver=$(($DB_VER + 1)) | |
697 | # support up to version 30; increase this if needed | |
698 | for ver in $(seq $next_ver 30); do | |
699 | prev_ver=$(($ver - 1)) | |
700 | ||
701 | if [ -x %{_libexecdir}/%{name}/update_${type}_tables_${prev_ver}_to_${ver} ]; then | |
702 | echo "Upgrading bacula database: db=${db_type} from ${prev_ver} to ${ver}..." | |
703 | %{_libexecdir}/%{name}/update_${type}_tables_${prev_ver}_to_${ver} | |
9aa69d51 | 704 | fi |
acd8643c AM |
705 | done |
706 | ||
9aa69d51 | 707 | %{_libexecdir}/%{name}/update_bacula_tables |
708 | echo "If bacula works correctly you can remove the backup file %{_localstatedir}/bacula_backup.sql.bz2" | |
bb6e7dc5 | 709 | fi |
28c9f5d0 AM |
710 | chown -R bacula:bacula %{_localstatedir} |
711 | chmod -R u+rX,go-rwx %{_localstatedir}/* | |
acd8643c | 712 | %endif |
bb6e7dc5 | 713 | |
237bfacd JK |
714 | echo "Updating Bacula passwords and names..." |
715 | cd /etc/bacula | |
dabeb284 | 716 | for f in *-password; do |
237bfacd | 717 | p=`cat $f` |
329073aa | 718 | sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || : |
237bfacd | 719 | done |
329073aa | 720 | sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || : |
237bfacd | 721 | |
1a72afd2 | 722 | /sbin/chkconfig --add bacula-dir |
52504a6d | 723 | %service bacula-dir restart "Bacula Director daemon" |
bb6e7dc5 | 724 | |
5ce18635 | 725 | %preun dir |
1a72afd2 | 726 | if [ "$1" = "0" ]; then |
52504a6d | 727 | %service bacula-dir stop |
9aa69d51 | 728 | /sbin/chkconfig --del bacula-dir |
1a72afd2 | 729 | fi |
bb6e7dc5 | 730 | |
5ce18635 | 731 | %post fd |
237bfacd JK |
732 | echo "Updating Bacula passwords and names..." |
733 | cd /etc/bacula | |
dabeb284 | 734 | for f in *-password; do |
237bfacd | 735 | p=`cat $f` |
329073aa | 736 | sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || : |
237bfacd | 737 | done |
329073aa | 738 | sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || : |
237bfacd | 739 | |
1a72afd2 | 740 | /sbin/chkconfig --add bacula-fd |
52504a6d | 741 | %service bacula-fd restart "Bacula File daemon" |
bb6e7dc5 | 742 | |
5ce18635 | 743 | %preun fd |
1a72afd2 | 744 | if [ "$1" = "0" ]; then |
52504a6d | 745 | %service bacula-fd stop |
9aa69d51 | 746 | /sbin/chkconfig --del bacula-fd |
1a72afd2 | 747 | fi |
5ce18635 AM |
748 | |
749 | %post sd | |
237bfacd JK |
750 | echo "Updating Bacula passwords and names..." |
751 | cd /etc/bacula | |
dabeb284 | 752 | for f in *-password; do |
237bfacd | 753 | p=`cat $f` |
329073aa | 754 | sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || : |
237bfacd | 755 | done |
329073aa | 756 | sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || : |
237bfacd | 757 | |
1a72afd2 | 758 | /sbin/chkconfig --add bacula-sd |
52504a6d | 759 | %service bacula-sd restart "Bacula Storage daemon" |
bb6e7dc5 | 760 | |
5ce18635 | 761 | %preun sd |
1a72afd2 | 762 | if [ "$1" = "0" ]; then |
52504a6d | 763 | %service bacula-sd stop |
9aa69d51 | 764 | /sbin/chkconfig --del bacula-sd |
1a72afd2 | 765 | fi |
5ce18635 AM |
766 | |
767 | %pre console | |
768 | if [ -e %{_sysconfdir}/console.conf -a ! -e %{_sysconfdir}/bconsole.conf ]; then | |
9aa69d51 | 769 | mv %{_sysconfdir}/console.conf %{_sysconfdir}/bconsole.conf |
bb6e7dc5 AM |
770 | fi |
771 | ||
237bfacd JK |
772 | %post console |
773 | echo "Updating Bacula passwords and names..." | |
774 | cd /etc/bacula | |
dabeb284 | 775 | for f in *-password; do |
237bfacd | 776 | p=`cat $f` |
329073aa | 777 | sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || : |
237bfacd | 778 | done |
329073aa | 779 | sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || : |
237bfacd JK |
780 | |
781 | %post console-wx | |
782 | echo "Updating Bacula passwords and names..." | |
783 | cd /etc/bacula | |
dabeb284 | 784 | for f in *-password; do |
237bfacd | 785 | p=`cat $f` |
329073aa | 786 | sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || : |
237bfacd | 787 | done |
329073aa | 788 | sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || : |
237bfacd | 789 | |
304bb97e AM |
790 | %post console-qt4 |
791 | echo "Updating Bacula passwords and names..." | |
792 | cd /etc/bacula | |
dabeb284 | 793 | for f in *-password; do |
304bb97e AM |
794 | p=`cat $f` |
795 | sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || : | |
796 | done | |
797 | sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || : | |
798 | ||
237bfacd JK |
799 | %post tray-monitor |
800 | echo "Updating Bacula passwords and names..." | |
801 | cd /etc/bacula | |
dabeb284 | 802 | for f in *-password; do |
237bfacd | 803 | p=`cat $f` |
329073aa | 804 | sed -i -e"s:#FAKE-$f#:$p:" *.conf *.conf.rpmnew 2>/dev/null || : |
237bfacd | 805 | done |
329073aa | 806 | sed -i -e"s:--hostname--:`hostname`:" *.conf *.conf.rpmnew 2>/dev/null || : |
bb6e7dc5 | 807 | |
bb6e7dc5 AM |
808 | %post rescue |
809 | # link our current installed conf file to the rescue directory | |
f2337569 | 810 | ln -sf %{_sysconfdir}/bacula-fd.conf %{_sysconfdir}/rescue/bacula-fd.conf |
bb6e7dc5 AM |
811 | |
812 | # run getdiskinfo | |
813 | echo "Creating rescue files for this system..." | |
d907cd57 | 814 | cd %{_sysconfdir}/rescue |
bb6e7dc5 AM |
815 | ./getdiskinfo |
816 | ||
817 | %preun rescue | |
818 | # remove the files created after the initial rpm installation | |
f2337569 JB |
819 | if [ "$1" = "0" ]; then |
820 | rm -f %{_sysconfdir}/rescue/bacula-fd.conf | |
821 | rm -f %{_sysconfdir}/rescue/partition.* | |
822 | rm -f %{_sysconfdir}/rescue/format.* | |
823 | rm -f %{_sysconfdir}/rescue/mount_drives | |
824 | rm -f %{_sysconfdir}/rescue/start_network | |
825 | rm -f %{_sysconfdir}/rescue/sfdisk | |
826 | rm -rf %{_sysconfdir}/rescue/diskinfo/* | |
827 | fi | |
bb6e7dc5 | 828 | |
41bc1b6e JK |
829 | %define db_post() \ |
830 | /sbin/ldconfig \ | |
831 | for name in "create database" "drop tables" "drop database" "grant privileges" "make tables" "update tables" ; do \ | |
832 | prefix="${name%% *}" \ | |
833 | suffix="${name#* }" \ | |
834 | ln -sf "${prefix}_%{1}_${suffix}" %{_libexecdir}/%{name}/"${prefix}_bacula_${suffix}" || : \ | |
dae3a0bd JK |
835 | done \ |
836 | %service bacula-dir restart "Bacula Director daemon" | |
837 | ||
838 | %define db_postun() \ | |
839 | /sbin/ldconfig \ | |
840 | if [ "$1" = "0" ]; then \ | |
841 | for f in %{_libexecdir}/%{name}/*_bacula_* ; do \ | |
842 | if [ ! -e "$f" ] ; then \ | |
843 | rm "$f" \ | |
844 | fi \ | |
845 | done \ | |
846 | fi | |
41bc1b6e JK |
847 | |
848 | %post db-postgresql | |
849 | %db_post postgresql | |
850 | ||
dae3a0bd JK |
851 | %postun db-postgresql |
852 | %db_postun postgresql | |
853 | ||
41bc1b6e JK |
854 | %post db-mysql |
855 | %db_post mysql | |
856 | ||
dae3a0bd JK |
857 | %postun db-mysql |
858 | %db_postun mysql | |
859 | ||
41bc1b6e JK |
860 | %post db-sqlite3 |
861 | %db_post sqlite3 | |
862 | ||
dae3a0bd JK |
863 | %postun db-sqlite3 |
864 | %db_postun sqlite3 | |
865 | ||
866 | # dbi backend is different, as it is not bound with a specific db engine | |
41bc1b6e JK |
867 | %post db-dbi |
868 | /sbin/ldconfig | |
869 | ||
dae3a0bd JK |
870 | %postun db-dbi -p /sbin/ldconfig |
871 | ||
5ce18635 AM |
872 | %files common |
873 | %defattr(644,root,root,755) | |
237bfacd | 874 | %doc LICENSE |
1a72afd2 | 875 | %dir %{_sysconfdir} |
1b0a2248 | 876 | %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*-password |
7545e94f JK |
877 | # do not remove bsmtp from files. Fix build if it is not installed. |
878 | %attr(755,root,root) %{_sbindir}/bsmtp | |
7425cb9d | 879 | %attr(755,root,root) %{_sbindir}/btraceback |
7545e94f JK |
880 | %attr(755,root,root) %{_libdir}/libbac-%{version}.so |
881 | %attr(755,root,root) %{_libdir}/libbaccfg-%{version}.so | |
882 | %attr(755,root,root) %{_libdir}/libbacfind-%{version}.so | |
883 | %attr(755,root,root) %{_libdir}/libbacpy-%{version}.so | |
c74b041d | 884 | %{_mandir}/man8/bacula.8* |
7425cb9d JK |
885 | %{_mandir}/man1/bsmtp.1* |
886 | %{_mandir}/man8/btraceback.8* | |
5ce18635 | 887 | %dir %{_libexecdir}/%{name} |
1376b552 | 888 | %{_libexecdir}/%{name}/btraceback.dbx |
5ce18635 | 889 | %{_libexecdir}/%{name}/btraceback.gdb |
7545e94f | 890 | %{_libexecdir}/%{name}/bacula_config |
d6dbe33c | 891 | %attr(770,root,bacula) %dir %{_localstatedir} |
3c0eac7c AM |
892 | %attr(750,bacula,logs) %dir /var/log/bacula |
893 | %attr(640,bacula,logs) %ghost /var/log/bacula/log | |
5ce18635 AM |
894 | |
895 | %files dir | |
bb6e7dc5 | 896 | %defattr(644,root,root,755) |
237bfacd | 897 | %doc ChangeLog CheckList ReleaseNotes kernstodo LICENSE |
28647453 | 898 | #%doc examples %{name}-docs-%{version}/manual/{*.pdf,bacula} |
cc515592 | 899 | %attr(640,root,bacula) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-dir.conf |
1a72afd2 | 900 | %ghost %{_sysconfdir}/.pw.sed |
28c9f5d0 | 901 | %attr(640,root,root) %config(noreplace) /etc/logrotate.d/bacula-dir |
1a72afd2 | 902 | %attr(754,root,root) /etc/rc.d/init.d/bacula-dir |
cd23ba7c | 903 | %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-dir |
5ff0b6a3 | 904 | %attr(755,root,root) %{_sbindir}/bacula-dir |
7545e94f JK |
905 | %attr(755,root,root) %{_sbindir}/bregex |
906 | %attr(755,root,root) %{_sbindir}/bwild | |
907 | %attr(755,root,root) %{_sbindir}/bacula-dbcheck | |
79d0fef6 | 908 | %{_mandir}/man8/bacula-dir.8* |
7545e94f | 909 | %{_mandir}/man8/bacula-dbcheck.8* |
79d0fef6 | 910 | %{_libexecdir}/%{name}/query.sql |
41bc1b6e JK |
911 | #%attr(755,root,root) %{_libexecdir}/%{name}/make_catalog_backup |
912 | #%attr(755,root,root) %{_libexecdir}/%{name}/delete_catalog_backup | |
913 | ||
914 | %files db-postgresql | |
915 | %defattr(644,root,root,755) | |
916 | %attr(755,root,root) %{_libexecdir}/%{name}/create_postgresql_database | |
917 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_postgresql_database | |
918 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_postgresql_tables | |
919 | %attr(755,root,root) %{_libexecdir}/%{name}/grant_postgresql_privileges | |
920 | %attr(755,root,root) %{_libexecdir}/%{name}/make_postgresql_tables | |
921 | %attr(755,root,root) %{_libexecdir}/%{name}/update_postgresql_* | |
922 | %attr(755,root,root) %{_libdir}/libbacsql-postgresql-%{version}.so | |
923 | ||
924 | %ghost %attr(755,root,root) %{_libdir}/libbacsql-%{version}.so | |
925 | %ghost %{_libexecdir}/%{name}/create_bacula_database | |
926 | %ghost %{_libexecdir}/%{name}/drop_bacula_tables | |
927 | %ghost %{_libexecdir}/%{name}/drop_bacula_database | |
928 | %ghost %{_libexecdir}/%{name}/grant_bacula_privileges | |
929 | %ghost %{_libexecdir}/%{name}/make_bacula_tables | |
930 | %ghost %{_libexecdir}/%{name}/update_bacula_tables | |
931 | ||
932 | %files db-mysql | |
933 | %defattr(644,root,root,755) | |
aeaed87e | 934 | %attr(755,root,root) %{_libexecdir}/%{name}/create_mysql_database |
935 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_mysql_database | |
936 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_mysql_tables | |
937 | %attr(755,root,root) %{_libexecdir}/%{name}/grant_mysql_privileges | |
938 | %attr(755,root,root) %{_libexecdir}/%{name}/make_mysql_tables | |
939 | %attr(755,root,root) %{_libexecdir}/%{name}/update_mysql_* | |
41bc1b6e JK |
940 | %attr(755,root,root) %{_libdir}/libbacsql-mysql-%{version}.so |
941 | ||
942 | %ghost %attr(755,root,root) %{_libdir}/libbacsql-%{version}.so | |
943 | %ghost %{_libexecdir}/%{name}/create_bacula_database | |
944 | %ghost %{_libexecdir}/%{name}/drop_bacula_tables | |
945 | %ghost %{_libexecdir}/%{name}/drop_bacula_database | |
946 | %ghost %{_libexecdir}/%{name}/grant_bacula_privileges | |
947 | %ghost %{_libexecdir}/%{name}/make_bacula_tables | |
948 | %ghost %{_libexecdir}/%{name}/update_bacula_tables | |
949 | ||
950 | %files db-sqlite3 | |
951 | %defattr(644,root,root,755) | |
952 | %attr(755,root,root) %{_libexecdir}/%{name}/create_sqlite3_database | |
953 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite3_database | |
954 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite3_tables | |
955 | %attr(755,root,root) %{_libexecdir}/%{name}/grant_sqlite3_privileges | |
956 | %attr(755,root,root) %{_libexecdir}/%{name}/make_sqlite3_tables | |
957 | %attr(755,root,root) %{_libexecdir}/%{name}/update_sqlite3_* | |
958 | %attr(755,root,root) %{_libexecdir}/%{name}/update_sqlite_* | |
959 | %attr(755,root,root) %{_libdir}/libbacsql-sqlite3-%{version}.so | |
960 | ||
961 | %ghost %attr(755,root,root) %{_libdir}/libbacsql-%{version}.so | |
962 | %ghost %{_libexecdir}/%{name}/create_bacula_database | |
963 | %ghost %{_libexecdir}/%{name}/drop_bacula_tables | |
964 | %ghost %{_libexecdir}/%{name}/drop_bacula_database | |
965 | %ghost %{_libexecdir}/%{name}/grant_bacula_privileges | |
966 | %ghost %{_libexecdir}/%{name}/make_bacula_tables | |
967 | %ghost %{_libexecdir}/%{name}/update_bacula_tables | |
968 | ||
969 | %files db-dbi | |
970 | %defattr(644,root,root,755) | |
e090896a JK |
971 | %attr(755,root,root) %{_libexecdir}/%{name}/create_postgresql_database |
972 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_postgresql_database | |
973 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_postgresql_tables | |
974 | %attr(755,root,root) %{_libexecdir}/%{name}/grant_postgresql_privileges | |
975 | %attr(755,root,root) %{_libexecdir}/%{name}/make_postgresql_tables | |
976 | %attr(755,root,root) %{_libexecdir}/%{name}/update_postgresql_* | |
41bc1b6e JK |
977 | %attr(755,root,root) %{_libexecdir}/%{name}/create_mysql_database |
978 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_mysql_database | |
979 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_mysql_tables | |
980 | %attr(755,root,root) %{_libexecdir}/%{name}/grant_mysql_privileges | |
981 | %attr(755,root,root) %{_libexecdir}/%{name}/make_mysql_tables | |
982 | %attr(755,root,root) %{_libexecdir}/%{name}/update_mysql_* | |
983 | %attr(755,root,root) %{_libexecdir}/%{name}/create_sqlite3_database | |
984 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite3_database | |
985 | %attr(755,root,root) %{_libexecdir}/%{name}/drop_sqlite3_tables | |
986 | %attr(755,root,root) %{_libexecdir}/%{name}/grant_sqlite3_privileges | |
987 | %attr(755,root,root) %{_libexecdir}/%{name}/make_sqlite3_tables | |
988 | %attr(755,root,root) %{_libexecdir}/%{name}/update_sqlite3_* | |
989 | %attr(755,root,root) %{_libexecdir}/%{name}/update_sqlite_* | |
990 | %attr(755,root,root) %{_libdir}/libbacsql-dbi-%{version}.so | |
991 | ||
992 | %ghost %attr(755,root,root) %{_libdir}/libbacsql-%{version}.so | |
993 | ||
5ce18635 AM |
994 | |
995 | %files fd | |
996 | %defattr(644,root,root,755) | |
237bfacd | 997 | %doc LICENSE |
1b0a2248 | 998 | %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-fd.conf |
1a72afd2 | 999 | %attr(754,root,root) /etc/rc.d/init.d/bacula-fd |
cd23ba7c | 1000 | %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-fd |
5ff0b6a3 | 1001 | %attr(755,root,root) %{_sbindir}/bacula-fd |
7545e94f | 1002 | %attr(755,root,root) %{_libdir}/bpipe-fd.so |
79d0fef6 | 1003 | %{_mandir}/man8/bacula-fd.8* |
5ce18635 AM |
1004 | |
1005 | %files sd | |
1006 | %defattr(644,root,root,755) | |
237bfacd | 1007 | %doc LICENSE |
1b0a2248 | 1008 | %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bacula-sd.conf |
0a03f92d | 1009 | %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mtx-changer.conf |
1a72afd2 | 1010 | %attr(754,root,root) /etc/rc.d/init.d/bacula-sd |
cd23ba7c | 1011 | %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bacula-sd |
5ff0b6a3 AM |
1012 | %attr(755,root,root) %{_sbindir}/bacula-sd |
1013 | %attr(755,root,root) %{_sbindir}/bcopy | |
1014 | %attr(755,root,root) %{_sbindir}/bextract | |
1015 | %attr(755,root,root) %{_sbindir}/bls | |
1016 | %attr(755,root,root) %{_sbindir}/bscan | |
1017 | %attr(755,root,root) %{_sbindir}/btape | |
329073aa | 1018 | %attr(755,root,root) %{_libexecdir}/%{name}/mtx-changer |
150db1c2 | 1019 | %attr(755,root,root) %{_libexecdir}/%{name}/disk-changer |
329073aa | 1020 | %attr(755,root,root) %{_libexecdir}/%{name}/dvd-handler |
5ce18635 | 1021 | %{_mandir}/man8/bacula-sd.8* |
7425cb9d JK |
1022 | %{_mandir}/man8/bcopy.8* |
1023 | %{_mandir}/man8/bextract.8* | |
1024 | %{_mandir}/man8/bls.8* | |
1025 | %{_mandir}/man8/bscan.8* | |
1026 | %{_mandir}/man8/btape.8* | |
5ce18635 AM |
1027 | |
1028 | %files console | |
bb6e7dc5 | 1029 | %defattr(644,root,root,755) |
237bfacd | 1030 | %doc LICENSE |
1b0a2248 | 1031 | %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bconsole.conf |
1a72afd2 | 1032 | %attr(755,root,root) %{_sbindir}/bconsole |
7425cb9d | 1033 | %{_mandir}/man8/bconsole.8* |
5ce18635 | 1034 | |
1376b552 | 1035 | %if %{with console_wx} |
5ce18635 AM |
1036 | %files console-wx |
1037 | %defattr(644,root,root,755) | |
237bfacd | 1038 | %doc LICENSE |
1a72afd2 | 1039 | %{_pixmapsdir}/%{name}.png |
237bfacd | 1040 | %{_desktopdir}/bacula-wx.desktop |
e3dd858d | 1041 | %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bwx-console.conf |
1042 | %attr(755,root,root) %{_sbindir}/bwx-console | |
1043 | %{_mandir}/man1/bacula-bwxconsole.1* | |
1376b552 | 1044 | %endif |
bb6e7dc5 | 1045 | |
304bb97e AM |
1046 | %if %{with bat} |
1047 | %files console-qt4 | |
1048 | %defattr(644,root,root,755) | |
1049 | %doc LICENSE | |
1050 | %{_pixmapsdir}/%{name}.png | |
1051 | %{_desktopdir}/bat.desktop | |
dabeb284 | 1052 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bat.conf |
304bb97e AM |
1053 | %attr(755,root,root) %{_sbindir}/bat |
1054 | %{_mandir}/man1/bat.1* | |
7545e94f | 1055 | %{_docdir}/%{name} |
304bb97e AM |
1056 | %endif |
1057 | ||
cacc89f5 | 1058 | %if %{with console_wx} |
237bfacd JK |
1059 | %files tray-monitor |
1060 | %defattr(644,root,root,755) | |
1061 | %doc LICENSE | |
8ba087a4 ER |
1062 | %attr(755,root,root) %{_sbindir}/bacula-tray-monitor |
1063 | #%{_pixmapsdir}/%{name}-tray-monitor.xpm | |
1064 | #%{_desktopdir}/%{name}-tray-monitor.desktop | |
cd23ba7c | 1065 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tray-monitor.conf |
7425cb9d | 1066 | %{_mandir}/man1/bacula-tray-monitor.1* |
cacc89f5 | 1067 | %endif |
237bfacd | 1068 | |
2b68b0cb | 1069 | %if %{with rescue} |
bb6e7dc5 AM |
1070 | %files rescue |
1071 | %defattr(644,root,root,755) | |
c741b8e0 | 1072 | %doc LICENSE |
4280e495 | 1073 | %dir %{_sysconfdir}/rescue |
1b0a2248 | 1074 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/backup.etc.list |
1075 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/bacula-fd | |
1076 | %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/format_floppy | |
1077 | %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/getdiskinfo | |
1078 | %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/make_rescue_disk | |
1079 | %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/restore_bacula | |
1080 | %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/restore_etc | |
1081 | %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/run_grub | |
1082 | %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/run_lilo | |
1083 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rescue/sfdisk.bz2 | |
2b68b0cb | 1084 | %endif |