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