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