]> git.pld-linux.org Git - packages/BackupPC.git/blame_incremental - BackupPC.spec
- remove sperl req
[packages/BackupPC.git] / BackupPC.spec
... / ...
CommitLineData
1
2# - now path in browser is http://localhost/cgi/BackupPC/BackupPC_Admin
3# TODO:
4# - trigers
5# - polish translation in SOURCE/backuppc-pl.pm
6# - patch at user and gid/uid user - http://sourceforge.net/mailarchive/forum.php?thread_id=6201024&forum_id=17540
7# - change or/and add Requires for --bin-path sendmail=%{_sbindir}/sendmail
8# - correct config file
9
10%define oldname backuppc
11%define BPCuser http
12%define BPCgroup http
13%include /usr/lib/rpm/macros.perl
14
15Summary: A high-performance, enterprise-grade system for backing up
16Summary(pl.UTF-8): Wysoko wydajny, profesjonalnej klasy system do kopii zapasowych
17Name: BackupPC
18Version: 3.2.0
19Release: 0.1
20License: GPL
21Group: Networking/Utilities
22Source0: http://dl.sourceforge.net/backuppc/%{name}-%{version}.tar.gz
23# Source0-md5: 4b77610d8d1130daf0892fc7134be985
24Source1: %{oldname}_apache.conf
25Source2: %{oldname}-pl.pm
26URL: http://backuppc.sourceforge.net/
27BuildRequires: perl-Digest-MD5
28BuildRequires: perl-devel >= 1:5.6.0
29BuildRequires: rpm-perlprov
30BuildRequires: rpmbuild(macros) >= 1.268
31BuildRequires: sed >= 4.0
32Requires(post,preun): /sbin/chkconfig
33Requires: apache(mod_auth)
34Requires: apache(mod_perl)
35Requires: par2cmdline
36Requires: perl-Archive-Zip
37Requires: perl-Compress-Bzip2
38Requires: perl-Compress-Zlib
39Requires: perl-File-RsyncP >= 0.70
40Requires: rc-scripts
41Requires: rsync
42Requires: samba-client
43Requires: tar > 1.13
44Requires: webapps
45Provides: group(%{BPCgroup})
46Provides: user(%{BPCuser})
47Obsoletes: BackupPC
48Obsoletes: backuppc
49BuildArch: noarch
50BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
51
52%define _webapps /etc/webapps
53%define _webapp %{name}
54%define _libdir /usr/lib
55
56%description
57BackupPC is disk based and not tape based. This particularity allows
58features not found in any other backup solution:
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
61 only once (using hard links), resulting in substantial savings in disk
62 storage and disk writes.
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
67 files, configuration, current status and allows users to initiate and
68 cancel backups and browse and restore files from backups very quickly.
69- No client-side software is needed. On WinXX the SMB protocol is
70 used. On Linux or Unix clients, rsync or tar (over ssh/rsh/NFS) can be
71 used.
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
77 intermittently connected to the network and have dynamic IP addresses
78 (DHCP).
79- Flexible configuration parameters allow multiple backups to be
80 performed in parallel.
81- and more to discover in the manual...
82
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
86zapasowych:
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.
91- Opcjonalna kompresja pozwala na dalsze ograniczenie rozmiaru.
92 Obciążenie procesora jest małe, ponieważ tylko nowe pliki muszą być
93 kompresowane.
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.
98- Nie jest wymagane oprogramowanie po stronie klienta. Na WinXX
99 używany jest protokół SMB lub rsync (specjalnie przygotowana wersja
100 pod cygwinem). Na klientach linuksowych lub uniksowych można używać
101 rsynca lub tara (po ssh/rsh/NFS).
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
105 interfejsu CGI.
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,
111 DVD-R/RW, CD-R/RW i inne)
112- Wiele więcej można odkryć w manualu...
113
114%prep
115%setup -q
116
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
123%{__perl} -e "s/.IX Title.*/.SH NAME\nbackuppc \\- BackupPC manual/g" -p -i.tmp backuppc.8
124
125%install
126rm -rf $RPM_BUILD_ROOT
127install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,httpd/httpd.conf} \
128 $RPM_BUILD_ROOT%{_mandir}/man8 \
129 $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/doc \
130 $RPM_BUILD_ROOT%{_var}/{lib/%{name}/{pc/localhost,log},log} \
131 $RPM_BUILD_ROOT%{_datadir}/%{name}/conf \
132 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
133
134%{__perl} configure.pl \
135 --batch \
136 --bin-path perl=%{__perl} \
137 --bin-path tar=/bin/tar \
138 --bin-path smbclient=%{_bindir}/smbclient \
139 --bin-path nmblookup=%{_bindir}/nmblookup \
140 --bin-path rsync=%{_bindir}/rsync \
141 --bin-path ping=/bin/echo \
142 --bin-path df=/bin/df \
143 --bin-path ssh=%{_bindir}/ssh \
144 --bin-path sendmail=%{_sbindir}/sendmail \
145 --bin-path par2=%{_bindir}/par \
146 --bin-path hostname=/bin/hostname \
147 --bin-path split=%{_bindir}/split \
148 --bin-path cat=/bin/cat \
149 --bin-path gzip=/bin/gzip \
150 --bin-path bzip2=%{_bindir}/bzip2 \
151 --cgi-dir %{_datadir}/%{name}/www/cgi-bin \
152 --data-dir %{_var}/lib/%{name} \
153 --dest-dir $RPM_BUILD_ROOT \
154 --hostname localhost \
155 --html-dir %{_datadir}/%{name}/www/html \
156 --html-dir-url /BackupPC \
157 --install-dir %{_usr} \
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
165
166#change user in init script
167sed -i -e 's#--user backuppc#--user %{BPCuser}#' init.d/linux-backuppc
168#change user in config file
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
171
172install init.d/linux-backuppc $RPM_BUILD_ROOT/etc/rc.d/init.d/backuppc
173install backuppc.8 $RPM_BUILD_ROOT%{_mandir}/man8
174install %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/BackupPC/Lang/pl.pm
175install doc/* $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/doc
176# Cleanups:
177rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/CVS
178rm -rdf $RPM_BUILD_ROOT%{_prefix}/doc
179
180# symlinks
181cd $RPM_BUILD_ROOT%{_var}/lib/%{name}
182ln -sf %{_sysconfdir}/%{name} $RPM_BUILD_ROOT%{_var}/lib/%{name}/conf
183
184cd $RPM_BUILD_ROOT%{_var}/log
185ln -sf %{_var}/lib/%{name}/log %{name}
186
187cd $RPM_BUILD_ROOT%{_datadir}/%{name}/www/cgi-bin
188ln -sf BackupPC_Admin index.cgi
189
190mv $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/*.css \
191 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
192
193cd $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html
194ln -sf %{_sysconfdir}/%{name}/BackupPC_stnd.css BackupPC_stnd.css
195ln -sf %{_sysconfdir}/%{name}/BackupPC_stnd.css BackupPC.css
196
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
201
202%if 0
203%pre
204# Add the "backuppc" user and "http" group
205%groupadd -g 150 %{BPCgroup}
206%useradd -c "system user for %{name}" -u 150 -d /var/lib/backuppc -s /bin/false -g %{BPCgroup} %{BPCuser}
207%endif
208
209%post
210%service backuppc restart "BackupPC"
211
212%preun
213if [ "$1" = "0" ]; then
214 %service backuppc stop
215 /sbin/chkconfig --del backuppc
216fi
217
218%postun
219if [ "$1" = "0" ]; then
220 %userremove %{BPCuser}
221 %groupremove %{BPCgroup}
222fi
223
224%clean
225rm -rf $RPM_BUILD_ROOT
226
227%files
228%defattr(644,root,root,755)
229%attr(755,root,root) %{_bindir}/*
230%attr(755,root,root) %{_datadir}/%{name}/www/cgi-bin/BackupPC_Admin
231%attr(755,root,root) %{_datadir}/%{name}/www/cgi-bin/index.cgi
232%dir %{_datadir}/%{name}
233%dir %{_datadir}/%{name}/www/html/doc
234%{_datadir}/%{name}/www/html/doc/*
235%dir %{_datadir}/%{name}/www
236%dir %{_datadir}/%{name}/www/html
237%dir %{_datadir}/%{name}/www/cgi-bin
238%{_datadir}/%{name}/www/html/*.png
239%{_datadir}/%{name}/www/html/*.gif
240%{_datadir}/%{name}/www/html/sorttable.js
241%config(noreplace) %verify(not md5 mtime size) %{_datadir}/%{name}/www/html/*.css
242%dir %{_libdir}/Net
243%dir %{_libdir}/Net/FTP
244%{_libdir}/Net/FTP/AutoReconnect.pm
245%{_libdir}/Net/FTP/RetrHandle.pm
246%dir %{_libdir}/%{name}
247%{_libdir}/%{name}/Attrib.pm
248%dir %{_libdir}/%{name}/CGI
249%{_libdir}/%{name}/CGI/*
250%{_libdir}/%{name}/Config.pm
251%dir %{_libdir}/%{name}/Config
252%{_libdir}/%{name}/Config/*
253%{_libdir}/%{name}/FileZIO.pm
254%{_libdir}/%{name}/Lib.pm
255%{_libdir}/%{name}/PoolWrite.pm
256%{_libdir}/%{name}/Storage.pm
257%dir %{_libdir}/%{name}/Storage
258%{_libdir}/%{name}/Storage/*
259%{_libdir}/%{name}/View.pm
260%{_libdir}/%{name}/Xfer.pm
261%dir %{_libdir}/%{name}/Xfer
262%{_libdir}/%{name}/Xfer/*
263%dir %{_libdir}/%{name}/Zip
264%{_libdir}/%{name}/Zip/*
265%dir %attr(755,%{BPCuser},%{BPCgroup}) %{_libdir}/BackupPC/Lang
266%lang(cz) %{_libdir}/BackupPC/Lang/cz.pm
267%lang(de) %{_libdir}/BackupPC/Lang/de.pm
268%lang(en) %{_libdir}/BackupPC/Lang/en.pm
269%lang(es) %{_libdir}/BackupPC/Lang/es.pm
270%lang(fr) %{_libdir}/BackupPC/Lang/fr.pm
271%lang(it) %{_libdir}/BackupPC/Lang/it.pm
272%lang(nl) %{_libdir}/BackupPC/Lang/nl.pm
273%lang(pl) %{_libdir}/BackupPC/Lang/pl.pm
274%lang(pt_BR) %{_libdir}/BackupPC/Lang/pt_br.pm
275%lang(zh_CN) %{_libdir}/BackupPC/Lang/zh_CN.pm
276%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}
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
282%dir %attr(755,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/conf
283%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/log/%{name}
284%attr(754,root,root) /etc/rc.d/init.d/backuppc
285%dir %{_sysconfdir}/%{name}
286%{_mandir}/man8/backuppc*
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.069661 seconds and 4 git commands to generate.