]> git.pld-linux.org Git - packages/BackupPC.git/blame - BackupPC.spec
- drop obsolete and outdated manual inclusion of rpm macros
[packages/BackupPC.git] / BackupPC.spec
CommitLineData
9478b6bb 1
70dd92c5 2# - now path in browser is http://localhost/cgi/BackupPC/BackupPC_Admin
e8b484a8 3# TODO:
ec0b6580 4# - trigers
087f2434 5# - polish translation in SOURCE/backuppc-pl.pm
70dd92c5 6# - patch at user and gid/uid user - http://sourceforge.net/mailarchive/forum.php?thread_id=6201024&forum_id=17540
70dd92c5 7# - change or/and add Requires for --bin-path sendmail=%{_sbindir}/sendmail
29785c59 8# - correct config file
70dd92c5 9
ec0b6580 10%define oldname backuppc
b4718529 11%define BPCuser http
70dd92c5 12%define BPCgroup http
9478b6bb 13
bfdb5e2e 14Summary: A high-performance, enterprise-grade system for backing up
b387d795 15Summary(pl.UTF-8): Wysoko wydajny, profesjonalnej klasy system do kopii zapasowych
ec0b6580 16Name: BackupPC
163d283c 17Version: 3.2.0
18Release: 0.1
e53e588a
AM
19License: GPL
20Group: Networking/Utilities
ec0b6580 21Source0: http://dl.sourceforge.net/backuppc/%{name}-%{version}.tar.gz
163d283c 22# Source0-md5: 4b77610d8d1130daf0892fc7134be985
ec0b6580
MWP
23Source1: %{oldname}_apache.conf
24Source2: %{oldname}-pl.pm
e53e588a 25URL: http://backuppc.sourceforge.net/
ed441291 26BuildRequires: perl-Digest-MD5
e1f29e27 27BuildRequires: perl-devel >= 1:5.6.0
7759c7a4 28BuildRequires: rpm-perlprov
15c89417 29BuildRequires: rpmbuild(macros) >= 1.268
a6c35446 30BuildRequires: sed >= 4.0
9b5058aa 31Requires(post,preun): /sbin/chkconfig
c871e746 32Requires: apache(mod_auth)
15c89417 33Requires: apache(mod_perl)
c871e746 34Requires: par2cmdline
36ac5999
MWP
35Requires: perl-Archive-Zip
36Requires: perl-Compress-Bzip2
c871e746 37Requires: perl-Compress-Zlib
163d283c 38Requires: perl-File-RsyncP >= 0.70
9b5058aa 39Requires: rc-scripts
36ac5999 40Requires: rsync
fd06574e 41Requires: samba-client
8f3ae6d3 42Requires: tar > 1.13
15c89417 43Requires: webapps
dbb0a940 44Provides: group(%{BPCgroup})
45Provides: user(%{BPCuser})
e53e588a 46Obsoletes: BackupPC
ec0b6580 47Obsoletes: backuppc
ed441291 48BuildArch: noarch
e53e588a
AM
49BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50
15c89417
ER
51%define _webapps /etc/webapps
52%define _webapp %{name}
ba74a3a0 53%define _libdir /usr/lib
15c89417 54
e53e588a
AM
55%description
56BackupPC is disk based and not tape based. This particularity allows
57features not found in any other backup solution:
4077336d
SP
58- Clever pooling scheme minimizes disk storage and disk I/O. Identical
59 files across multiple backups of the same or different PC are stored
f1be31de
ER
60 only once (using hard links), resulting in substantial savings in disk
61 storage and disk writes.
4077336d
SP
62- Optional compression provides additional reductions in storage. CPU
63 impact of compression is low since only new files (those not already
64 in the pool) need to be compressed.
65- A powerful http/cgi user interface allows administrators to view log
f1be31de
ER
66 files, configuration, current status and allows users to initiate and
67 cancel backups and browse and restore files from backups very quickly.
2d60d17e 68- No client-side software is needed. On WinXX the SMB protocol is
ec285897 69 used. On Linux or Unix clients, rsync or tar (over ssh/rsh/NFS) can be
f1be31de 70 used.
2d60d17e 71- Flexible restore options. Single files can be downloaded from any
72 backup directly from the CGI interface. Zip or Tar archives for
73 selected files or directories can also be downloaded from the CGI
74 interface.
75- BackupPC supports mobile environments where laptops are only
f1be31de
ER
76 intermittently connected to the network and have dynamic IP addresses
77 (DHCP).
2d60d17e 78- Flexible configuration parameters allow multiple backups to be
79 performed in parallel.
80- and more to discover in the manual...
e53e588a 81
04a75958
JR
82%description -l pl.UTF-8
83BackupPC jest oparty na dyskach, a nie taśmach. Ta osobliwość daje
84możliwości, których nie mają inne rozwiązania problemu kopii
ed441291 85zapasowych:
04a75958
JR
86- Inteligentny schemat ściągania minimalizuje zajmowane miejsce i
87 ilość operacji wejścia/wyjścia na dysku. Takie same pliki są
88 przechowywane tylko raz (przy użyciu twardych dowiązań), co daje
89 znaczącą oszczędność w miejscu na dysku i czasie zapisu.
2d60d17e 90- Opcjonalna kompresja pozwala na dalsze ograniczenie rozmiaru.
04a75958 91 Obciążenie procesora jest małe, ponieważ tylko nowe pliki muszą być
4077336d 92 kompresowane.
04a75958
JR
93- Potężny interfejs użytkownika HTTP/CGI pozwala administratorom
94 przeglądać pliki logów, konfigurację i aktualny stan oraz użytkownikom
95 rozpoczynać lub przerywać tworzenie kopii oraz szybko przeglądać i
96 odtwarzać pliki z kopii zapasowych.
2d60d17e 97- Nie jest wymagane oprogramowanie po stronie klienta. Na WinXX
04a75958
JR
98 używany jest protokół SMB lub rsync (specjalnie przygotowana wersja
99 pod cygwinem). Na klientach linuksowych lub uniksowych można używać
32915a9f 100 rsynca lub tara (po ssh/rsh/NFS).
04a75958
JR
101- Dostępne są elastyczne opcje odzyskiwania. Można ściągać pojedyncze
102 pliki z kopii bezpośrednio z interfejsu CGI. Także archiwa zip lub tar
103 z wybranymi plikami lub katalogami mogą być ściągane z poziomu
2d60d17e 104 interfejsu CGI.
04a75958
JR
105- BackupPC obsługuje środowiska przenośne, gdzie laptopy są podłączane
106 do sieci tylko z przerwami i mają dynamiczne adresy IP (z DHCP).
107- Elastyczna konfiguracja parametrów pozwala na wykonywanie wielu
108 kopii równolegle.
109- Istnieje możliwość nagrywania backupu na inne nośniki (tasmy,
bfdb5e2e 110 DVD-R/RW, CD-R/RW i inne)
04a75958 111- Wiele więcej można odkryć w manualu...
ed441291 112
e53e588a 113%prep
ec0b6580 114%setup -q
e53e588a 115
8f3ae6d3
PG
116sed -i -e 's#!/bin/perl#!%{__perl}#' configure.pl
117sed -i -e 's#!/bin/perl#!%{__perl}#' {bin,cgi-bin,doc}/*
118sed -i -e 's#!/bin/perl#!%{__perl}#' */src/*
119sed -i -e 's#!/bin/perl#!%{__perl}#' */*/*/*.pm
120
121pod2man --section=8 --center="BackupPC manual" doc/BackupPC.pod backuppc.8
a6c35446 122%{__perl} -e "s/.IX Title.*/.SH NAME\nbackuppc \\- BackupPC manual/g" -p -i.tmp backuppc.8
8f3ae6d3 123
e53e588a
AM
124%install
125rm -rf $RPM_BUILD_ROOT
85f11ed8 126install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,httpd/httpd.conf} \
0bec8bf5 127 $RPM_BUILD_ROOT%{_mandir}/man8 \
ec0b6580
MWP
128 $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/doc \
129 $RPM_BUILD_ROOT%{_var}/{lib/%{name}/{pc/localhost,log},log} \
716c2a0b 130 $RPM_BUILD_ROOT%{_datadir}/%{name}/conf \
ef6a73f9 131 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
e53e588a 132
528c20b1
PG
133%{__perl} configure.pl \
134 --batch \
135 --bin-path perl=%{__perl} \
136 --bin-path tar=/bin/tar \
7670e654
SP
137 --bin-path smbclient=%{_bindir}/smbclient \
138 --bin-path nmblookup=%{_bindir}/nmblookup \
139 --bin-path rsync=%{_bindir}/rsync \
70dd92c5 140 --bin-path ping=/bin/echo \
528c20b1 141 --bin-path df=/bin/df \
7670e654
SP
142 --bin-path ssh=%{_bindir}/ssh \
143 --bin-path sendmail=%{_sbindir}/sendmail \
dbca77df 144 --bin-path par2=%{_bindir}/par \
528c20b1 145 --bin-path hostname=/bin/hostname \
7670e654 146 --bin-path split=%{_bindir}/split \
528c20b1
PG
147 --bin-path cat=/bin/cat \
148 --bin-path gzip=/bin/gzip \
7670e654 149 --bin-path bzip2=%{_bindir}/bzip2 \
a6c35446 150 --cgi-dir %{_datadir}/%{name}/www/cgi-bin \
91ca4cc8 151 --data-dir %{_var}/lib/%{name} \
528c20b1
PG
152 --dest-dir $RPM_BUILD_ROOT \
153 --hostname localhost \
a6c35446 154 --html-dir %{_datadir}/%{name}/www/html \
716c2a0b 155 --html-dir-url /BackupPC \
15f2d638 156 --install-dir %{_usr} \
ec0b6580
MWP
157 --uid-ignore \
158 --no-set-perms \
159 --fhs \
160 --dest-dir $RPM_BUILD_ROOT \
161 --compress-level=3 \
162 --backuppc-user=%{BPCuser}
163# --config-path=%{_sysconfdir}/%{name}/config.pl
9478b6bb 164
70dd92c5
MWP
165#change user in init script
166sed -i -e 's#--user backuppc#--user %{BPCuser}#' init.d/linux-backuppc
167#change user in config file
ec0b6580
MWP
168#sed -i -e "s#'backuppc';#'%{BPCuser}';#" $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/config.pl
169#sed -i -e 's/$Conf{SendmailPath} =/#$Conf{SendmailPath} =/' $RPM_BUILD_ROOTT%{_sysconfdir}/%{name}/config.pl
70dd92c5 170
a6c35446 171install init.d/linux-backuppc $RPM_BUILD_ROOT/etc/rc.d/init.d/backuppc
ef6a73f9 172install backuppc.8 $RPM_BUILD_ROOT%{_mandir}/man8
15c89417 173install %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/BackupPC/Lang/pl.pm
ef6a73f9 174install doc/* $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/doc
8f3ae6d3 175# Cleanups:
91ca4cc8 176rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/CVS
f62775bb 177rm -rdf $RPM_BUILD_ROOT%{_prefix}/doc
7ca1bf72 178
c7cf1aea 179# symlinks
ef6a73f9
MWP
180cd $RPM_BUILD_ROOT%{_var}/lib/%{name}
181ln -sf %{_sysconfdir}/%{name} $RPM_BUILD_ROOT%{_var}/lib/%{name}/conf
c7cf1aea
MWP
182
183cd $RPM_BUILD_ROOT%{_var}/log
32915a9f 184ln -sf %{_var}/lib/%{name}/log %{name}
c7cf1aea 185
a6c35446 186cd $RPM_BUILD_ROOT%{_datadir}/%{name}/www/cgi-bin
67934a81 187ln -sf BackupPC_Admin index.cgi
32915a9f 188
ec0b6580 189mv $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/*.css \
b7dc9a92 190 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
ef6a73f9
MWP
191
192cd $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html
193ln -sf %{_sysconfdir}/%{name}/BackupPC_stnd.css BackupPC_stnd.css
ec0b6580 194ln -sf %{_sysconfdir}/%{name}/BackupPC_stnd.css BackupPC.css
ef6a73f9 195
15c89417
ER
196install -d $RPM_BUILD_ROOT%{_webapps}/%{_webapp}
197install %{SOURCE1} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/apache.conf
198install %{SOURCE1} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/httpd.conf
199touch $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/htpasswd
70dd92c5 200
e326eb5b 201%if 0
9478b6bb 202%pre
ec9606b7 203# Add the "backuppc" user and "http" group
e326eb5b 204%groupadd -g 150 %{BPCgroup}
ec9606b7 205%useradd -c "system user for %{name}" -u 150 -d /var/lib/backuppc -s /bin/false -g %{BPCgroup} %{BPCuser}
e326eb5b
ER
206%endif
207
91ca4cc8 208%post
f62775bb 209%service backuppc restart "BackupPC"
6e436f98 210
f62775bb
ER
211%preun
212if [ "$1" = "0" ]; then
213 %service backuppc stop
214 /sbin/chkconfig --del backuppc
ef6a73f9 215fi
91ca4cc8 216
dbb0a940 217%postun
218if [ "$1" = "0" ]; then
219 %userremove %{BPCuser}
220 %groupremove %{BPCgroup}
221fi
222
e53e588a
AM
223%clean
224rm -rf $RPM_BUILD_ROOT
225
226%files
227%defattr(644,root,root,755)
91ca4cc8 228%attr(755,root,root) %{_bindir}/*
a6c35446 229%attr(755,root,root) %{_datadir}/%{name}/www/cgi-bin/BackupPC_Admin
70e0f3dd 230%attr(755,root,root) %{_datadir}/%{name}/www/cgi-bin/index.cgi
51256ae1 231%dir %{_datadir}/%{name}
ef6a73f9
MWP
232%dir %{_datadir}/%{name}/www/html/doc
233%{_datadir}/%{name}/www/html/doc/*
51256ae1 234%dir %{_datadir}/%{name}/www
a6c35446 235%dir %{_datadir}/%{name}/www/html
51256ae1 236%dir %{_datadir}/%{name}/www/cgi-bin
ec0b6580 237%{_datadir}/%{name}/www/html/*.png
a6c35446 238%{_datadir}/%{name}/www/html/*.gif
70e0f3dd 239%{_datadir}/%{name}/www/html/sorttable.js
ec0b6580 240%config(noreplace) %verify(not md5 mtime size) %{_datadir}/%{name}/www/html/*.css
0fba9f66 241%dir %{_libdir}/Net
163d283c 242%dir %{_libdir}/Net/FTP
243%{_libdir}/Net/FTP/AutoReconnect.pm
244%{_libdir}/Net/FTP/RetrHandle.pm
ec0b6580 245%dir %{_libdir}/%{name}
23367753
SS
246%{_libdir}/%{name}/Attrib.pm
247%dir %{_libdir}/%{name}/CGI
ec0b6580 248%{_libdir}/%{name}/CGI/*
23367753 249%{_libdir}/%{name}/Config.pm
c821092f 250%dir %{_libdir}/%{name}/Config
ec0b6580 251%{_libdir}/%{name}/Config/*
ec0b6580
MWP
252%{_libdir}/%{name}/FileZIO.pm
253%{_libdir}/%{name}/Lib.pm
254%{_libdir}/%{name}/PoolWrite.pm
255%{_libdir}/%{name}/Storage.pm
23367753
SS
256%dir %{_libdir}/%{name}/Storage
257%{_libdir}/%{name}/Storage/*
ec0b6580 258%{_libdir}/%{name}/View.pm
163d283c 259%{_libdir}/%{name}/Xfer.pm
23367753
SS
260%dir %{_libdir}/%{name}/Xfer
261%{_libdir}/%{name}/Xfer/*
262%dir %{_libdir}/%{name}/Zip
263%{_libdir}/%{name}/Zip/*
ef6a73f9 264%dir %attr(755,%{BPCuser},%{BPCgroup}) %{_libdir}/BackupPC/Lang
163d283c 265%lang(cz) %{_libdir}/BackupPC/Lang/cz.pm
c7cf1aea 266%lang(de) %{_libdir}/BackupPC/Lang/de.pm
163d283c 267%lang(en) %{_libdir}/BackupPC/Lang/en.pm
c7cf1aea 268%lang(es) %{_libdir}/BackupPC/Lang/es.pm
58629966 269%lang(fr) %{_libdir}/BackupPC/Lang/fr.pm
c7cf1aea
MWP
270%lang(it) %{_libdir}/BackupPC/Lang/it.pm
271%lang(nl) %{_libdir}/BackupPC/Lang/nl.pm
ce281259 272%lang(pl) %{_libdir}/BackupPC/Lang/pl.pm
58629966 273%lang(pt_BR) %{_libdir}/BackupPC/Lang/pt_br.pm
70e0f3dd 274%lang(zh_CN) %{_libdir}/BackupPC/Lang/zh_CN.pm
ef6a73f9 275%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}
15f2d638 276%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/cpool
277%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/log
278%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/pc
279%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/pool
280%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/trash
5e8a66d7 281%dir %attr(755,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/conf
ef6a73f9 282%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/log/%{name}
f1be31de 283%attr(754,root,root) /etc/rc.d/init.d/backuppc
c7cf1aea 284%dir %{_sysconfdir}/%{name}
0bec8bf5 285%{_mandir}/man8/backuppc*
15c89417
ER
286%config(noreplace) %verify(not md5 mtime size) %attr(644,%{BPCuser},%{BPCgroup}) %{_sysconfdir}/%{name}/*
287%dir %attr(750,root,http) %{_webapps}/%{_webapp}
288%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/apache.conf
289%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/httpd.conf
290%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/htpasswd
This page took 0.109579 seconds and 4 git commands to generate.