-%define BPCuser backuppc
-%define BPCgroup backuppc
+# - now path in browser is http://localhost/cgi/BackupPC/BackupPC_Admin
+#TO DO:
+# - patch for service user - now is static backuppc
+# - polish translation - cvs -z3 -d:pserver:anonymous@cvs.pld-linux.org:/gnomepl co gnomepl/backuppc/pl.pm
+# - edit apache configuration, autorizations - SOURCES: backuppc_apache.conf
+# - patch at user and gid/uid user - http://sourceforge.net/mailarchive/forum.php?thread_id=6201024&forum_id=17540
+# - compliant to FHS - http://sourceforge.net/mailarchive/forum.php?thread_id=5602342&forum_id=17540
+# - change or/and add Requires for --bin-path sendmail=%{_sbindir}/sendmail
+# - ping not working --bin-path ping=/bin/ping
+
+%define BPCuser http
+%define BPCgroup http
%include /usr/lib/rpm/macros.perl
Summary: A high-performance, enterprise-grade system for backing up PCs
BuildRequires: rpmbuild(macros) >= 1.159
Requires: apache
Requires: samba-client
-# lets check if it's really needed
-#Requires: sperl
+Requires: sperl
Requires: tar > 1.13
Provides: group(%{BPCgroup})
Provides: user(%{BPCuser})
u¿ytkownikom rozpoczynaæ lub przerywaæ tworzenie kopii oraz szybko
przegl±daæ i odtwarzaæ pliki z kopii zapasowych.
- Nie jest wymagane oprogramowanie po stronie klienta. Na WinXX
- u¿ywany jest protokó³ SMB. Na klientach linuksowych lub uniksowych
- mo¿na u¿ywaæ rsynca lub tara (po ssh/rsh/NFS).
+ u¿ywany jest protokó³ SMB lub rsync (specjalnie przygotowana wersja
+ pod cygwinem). Na klientach linuksowych lub uniksowych mo¿na u¿ywaæ
+ rsynca lub tara (po ssh/rsh/NFS).
- Dostêpne s± elastyczne opcje odzyskiwania. Mo¿na ¶ci±gaæ pojedyncze
pliki z kopii bezpo¶rednio z interfejsu CGI. Tak¿e archiwa zip lub
tar z wybranymi plikami lub katalogami mog± byæ ¶ci±gane z poziomu
sed -i -e 's#!/bin/perl#!%{__perl}#' */src/*
sed -i -e 's#!/bin/perl#!%{__perl}#' */*/*/*.pm
+
+
pod2man --section=8 --center="BackupPC manual" doc/BackupPC.pod backuppc.8
perl -e "s/.IX Title.*/.SH NAME\nbackuppc \\- BackupPC manual/g" -p -i.tmp backuppc.8
%install
rm -rf $RPM_BUILD_ROOT
-install -d -m 755 $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,%{name},httpd/httpd.conf} \
- $RPM_BUILD_ROOT%{_usr}/share/%{name}/www/html \
- $RPM_BUILD_ROOT%{_var}/lib/%{name}/pc/localhost \
- $RPM_BUILD_ROOT%{_datadir}/%{name}/conf \
- $RPM_BUILD_ROOT%/home/services/httpd/cgi-bin/%{name}
+install -d -m 755 $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,httpd/httpd.conf} \
+ $RPM_BUILD_ROOT%{_usr}/share/%{name}/www/{html,cgi-bin} \
+ $RPM_BUILD_ROOT%{_var}/{lib/%{name}/pc/localhost,log} \
+ $RPM_BUILD_ROOT%{_datadir}/%{name}/conf \
%{__perl} configure.pl \
--batch \
--bin-path smbclient=%{_bindir}/smbclient \
--bin-path nmblookup=%{_bindir}/nmblookup \
--bin-path rsync=%{_bindir}/rsync \
- --bin-path ping=/bin/ping \
+ --bin-path ping=/bin/echo \
--bin-path df=/bin/df \
--bin-path ssh=%{_bindir}/ssh \
--bin-path sendmail=%{_sbindir}/sendmail \
--bin-path cat=/bin/cat \
--bin-path gzip=/bin/gzip \
--bin-path bzip2=%{_bindir}/bzip2 \
- --cgi-dir /home/services/httpd/cgi-bin/%{name} \
+ --cgi-dir %{_usr}/share/%{name}/www/cgi-bin \
--data-dir %{_var}/lib/%{name} \
--dest-dir $RPM_BUILD_ROOT \
--hostname localhost \
- --html-dir /home/services/httpd/html/%{name} \
- --html-dir-url /%{name} \
- --install-dir %{_usr} \
+ --html-dir %{_usr}/share/%{name}/www/html \
+ --html-dir-url /BackupPC \
+ --install-dir %{_usr} \
--uid-ignore
# --config-path
+#change user in init script
+sed -i -e 's#--user backuppc#--user %{BPCuser}#' init.d/linux-backuppc
+#change user in config file
+sed -i -e "s#'backuppc';#'%{BPCuser}';#" $RPM_BUILD_ROOT%{_var}/lib/%{name}/conf/config.pl
+sed -i -e 's/$Conf{SendmailPath} =/#$Conf{SendmailPath} =/' $RPM_BUILD_ROOT%{_var}/lib/%{name}/conf/config.pl
+
install init.d/linux-backuppc $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/backuppc
-install conf/BackupPC_stnd.css $RPM_BUILD_ROOT%{_var}/lib/%{name}/conf/BackupPC_stnd.css
install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd/httpd.conf/93_backuppc.conf
-install %{SOURCE2} $RPM_BUILD_ROOT/home/services/httpd/cgi-bin/%{name}/.htaccess
-
-#mv -f $RPM_BUILD_ROOT/var/lib/backuppc/conf/* $RPM_BUILD_ROOT%{_sysconfdir}/backuppc
-#mv -f $RPM_BUILD_ROOT%{_datadir}/backuppc/cgi-bin/BackupPC_Admin $RPM_BUILD_ROOT%{_datadir}/backuppc/cgi-bin/index.cgi
+install %{SOURCE2} $RPM_BUILD_ROOT%{_usr}/share/%{name}/www/cgi-bin/.htaccess
# Cleanups:
rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/www/html/CVS
+# symlinks
+cd $RPM_BUILD_ROOT%{_sysconfdir}
+ln -sf %{_var}/lib/%{name}/conf %{name}
+
+cd $RPM_BUILD_ROOT%{_var}/log
+ln -sf %{_var}/lib/%{name}/log %{name}
+
+cd $RPM_BUILD_ROOT%{_usr}/share/%{name}/www/cgi-bin
+ln -sf BackupPC_Admin index.cgi
+
+cd $RPM_BUILD_ROOT%{_var}/lib/%{name}/conf
+ln -sf %{_usr}/share/%{name}/www/html/BackupPC_stnd.css BackupPC_stnd.css
+
%pre
# Add the "backuppc" user and group
-if [ -n "`/usr/bin/getgid %{BPCgroup}`" ]; then
- if [ "`/usr/bin/getgid %{BPCgroup}`" != "150" ]; then
- echo "Error: group %{BPCgroup} doesn't have gid=150. Correct this before installing %{name}." 1>&2
- exit 1
- fi
-else
- /usr/sbin/groupadd -g 150 %{BPCgroup}
-fi
-if [ -n "`/bin/id -u %{BPCuser} 2>/dev/null`" ]; then
- if [ "`/bin/id -u %{BPCuser}`" != 150 ]; then
- echo "Error: user %{BPCuser} doesn't have uid=150. Correct this before installing %{name}." 1>&2
- exit 1
- fi
-else
- /usr/sbin/useradd -c "system user for %{name}" -u 150 \
- -d /home/services/BackupPC -s /bin/false -g %{BPCgroup} %{BPCuser} 1>&2
-fi
+#if [ -n "`/usr/bin/getgid %{BPCgroup}`" ]; then
+# if [ "`/usr/bin/getgid %{BPCgroup}`" != "150" ]; then
+# echo "Error: group %{BPCgroup} doesn't have gid=150. Correct this before installing %{name}." 1>&2
+# exit 1
+# fi
+#else
+# /usr/sbin/groupadd -g 150 %{BPCgroup}
+#fi
+#if [ -n "`/bin/id -u %{BPCuser} 2>/dev/null`" ]; then
+# if [ "`/bin/id -u %{BPCuser}`" != 150 ]; then
+# echo "Error: user %{BPCuser} doesn't have uid=150. Correct this before installing %{name}." 1>&2
+# exit 1
+# fi
+#else
+# /usr/sbin/useradd -c "system user for %{name}" -u 150 \
+# -d /home/services/BackupPC -s /bin/false -g %{BPCgroup} %{BPCuser} 1>&2
+#fi
%post
-ln -s %{_var}/lib/%{name}/conf/ %{_sysconfdir}/%{name}
+/etc/init.d/backuppc restart
%postun
if [ "$1" = "0" ]; then
%attr(755,root,root) %{_bindir}/*
%doc %{_usr}/doc/*.html
%doc %{_usr}/doc/BackupPC.pod
-%dir /home/services/httpd/cgi-bin/%{name}/
-%attr(755,root,root)/home/services/httpd/cgi-bin/%{name}/*
-%dir /home/services/httpd/html/%{name}/
-/home/services/httpd/html/%{name}/*
-%dir %{_libdir}/BackupPC/
-%{_libdir}/BackupPC/*
-%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/cpool/
-%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/log/
-%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/pc/
-%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/pool/
-%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/trash/
-%dir %{_var}/lib/%{name}/conf/
+%dir %{_usr}/share/%{name}/www/cgi-bin
+%attr(755,root,root)%{_usr}/share/%{name}/www/cgi-bin/BackupPC_Admin
+%config(noreplace) %verify(not md5 size mtime) %{_usr}/share/%{name}/www/cgi-bin/.htaccess
+%dir %{_usr}/share/%{name}/www/html
+%{_usr}/share/%{name}/www/html/*.gif
+%config(noreplace) %verify(not md5 size mtime) %{_usr}/share/%{name}/www/html/BackupPC_stnd.css
+%dir %{_libdir}/BackupPC
+%{_libdir}/BackupPC/Attrib.pm
+%{_libdir}/BackupPC/FileZIO.pm
+%{_libdir}/BackupPC/Lib.pm
+%{_libdir}/BackupPC/PoolWrite.pm
+%{_libdir}/BackupPC/View.pm
+%dir %{_libdir}/BackupPC/CGI
+%{_libdir}/BackupPC/CGI/*
+%dir %{_libdir}/BackupPC/Xfer
+%{_libdir}/BackupPC/Xfer/*
+%dir %{_libdir}/BackupPC/Zip
+%{_libdir}/BackupPC/Zip/*
+%dir %{_libdir}/BackupPC/Lang
+%lang(en) %{_libdir}/BackupPC/Lang/en.pm
+%lang(de) %{_libdir}/BackupPC/Lang/de.pm
+%lang(fr) %{_libdir}/BackupPC/Lang/fr.pm
+%lang(es) %{_libdir}/BackupPC/Lang/es.pm
+%lang(it) %{_libdir}/BackupPC/Lang/it.pm
+%lang(nl) %{_libdir}/BackupPC/Lang/nl.pm
+#%lang(pl) %{_libdir}/BackupPC/Lang/pl.pm
+%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/cpool
+%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/log
+%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/pc
+%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/pool
+%dir %attr(750,%{BPCuser},%{BPCgroup}) %{_var}/lib/%{name}/trash
+%dir %{_var}/lib/%{name}/conf
+%dir %{_var}/log/%{name}
%attr(755,root,root) %{_sysconfdir}/rc.d/init.d/backuppc
%{_sysconfdir}/httpd/httpd.conf/93_backuppc.conf
-%config(noreplace) %verify(not md5 size mtime) %attr(640,root,root) /home/services/httpd/cgi-bin/%{name}/.htaccess
+%dir %{_sysconfdir}/%{name}
%config(noreplace) %verify(not md5 size mtime) %{_var}/lib/%{name}/conf/*