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