backuppc.spec - BackupPC ver 2.1.0

Michał Panasiewicz wolvverine w tarchomin.pl
Pią, 3 Gru 2004, 00:40:12 CET


Dnia 02-12-2004, czw o godzinie 20:36 +0100, Paweł Gołaszewski
napisał(a):
> On Fri, 26 Nov 2004, [iso-8859-2] Michał Panasiewicz wrote:
> > > tutaj budowanie pakietu jest instalacją
> 
> Niezupełnie, choć masz rację.
> System budowania w tym programie jest trochę mało miły...
> 
> > > poprawiona wersja w załączniku
> > znaczy tutaj poprawiona jest
> 
> Szkoda, że tego nie widziałem wcześniej.
> Trochę poprawiłem, bazując na twoich zmianach, ale to wymaga jeszcze 
> łatki, żeby nie-istnienie usera nie było błędem fatalnym. Zerkąłem w kod i 
> tam jest jakieś szukanie UID-GID, więc chyba powinna przybyć opcja, żeby 
> dawać to jako opcję configure.

wziął ode mnie speca i patcha lsoft - powiedział ze sie zajmie

to na czym ja stanąłem i co mu przesłałem masz w załącznikach , ale
niestety patch jest spier bo sie nie nakłada a ja niestety nie umiem
zdiagnozowac co nie tak , nie znam sie zbyt na nakładaniu patchy -
jeszcze ;)


-- 
jabber: wolvverine [ at ] chrome [ dot ] pl 
e-mail: wolvverine [ at ] tlen   [ dot ] pl 
-------------- następna część ---------
# $Revision: 1.5 $, $Date: 2004/11/05 10:40:37 $
%define BPCuser backuppc
%define BPCgroup backuppc
%include	/usr/lib/rpm/macros.perl
Summary:	A high-performance, enterprise-grade system for backing up PCs
Summary(pl):	Wysoko wydajny, profesjonalnej klasy system do kopii zapasowych z PC
Name:		backuppc
Version:	2.1.0
Release:	2
License:	GPL
Group:		Networking/Utilities
Source0:	http://dl.sourceforge.net/backuppc/BackupPC-%{version}.tar.gz
Patch0:		%{name}-usernotexist.patch
URL:		http://backuppc.sourceforge.net/

BuildRequires:	perl-devel >= 1:5.6.0
BuildRequires:	perl-Compress-Zlib
BuildRequires:	perl-Digest-MD5

Requires:  	perl-base
Requires:	tar > 1.13
Requires:	samba-client
Requires:	sperl
Requires:	webserver
Requires:	perl-Archive-Zip

Obsoletes:	BackupPC

BuildArch:	noarch
BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)

%description
BackupPC is disk based and not tape based. This particularity allows
features not found in any other backup solution:
- Clever pooling scheme minimizes disk storage and disk I/O.
  Identical files across multiple backups of the same or different PC
  are stored only once (using hard links), resulting in substantial
  savings in disk storage and disk writes.
- Optional compression provides additional reductions in storage.
  CPU impact of compression is low since only new files (those not
  already in the pool) need to be compressed.
- A powerful http/cgi user interface allows administrators to view
  log files, configuration, current status and allows users to
  initiate and cancel backups and browse and restore files from
  backups very quickly.
- No client-side software is needed. On WinXX the SMB protocol is
  used. On Linux or unix clients, rsync or tar (over ssh/rsh/NFS) can
  be used.
- Flexible restore options. Single files can be downloaded from any
  backup directly from the CGI interface. Zip or Tar archives for
  selected files or directories can also be downloaded from the CGI
  interface.
- BackupPC supports mobile environments where laptops are only
  intermittently connected to the network and have dynamic IP
  addresses (DHCP).
- Flexible configuration parameters allow multiple backups to be
  performed in parallel.
- and more to discover in the manual...

%description -l pl
BackupPC jest oparty na dyskach, a nie taśmach. Ta osobliwość daje
możliwości, których nie mają inne rozwiązania problemu kopii
zapasowych:
- Inteligentny schemat ściągania minimalizuje zajmowane miejsce i
  ilość operacji wejścia/wyjścia na dysku. Takie same pliki są
  przechowywane tylko raz (przy użyciu twardych dowiązań), co daje
  znaczącą oszczędność w miejscu na dysku i czasie zapisu.
- Opcjonalna kompresja pozwala na dalsze ograniczenie rozmiaru.
  Obciążenie procesora jest małe, ponieważ tylko nowe pliki muszą
  być kompresowane.
- Potężny interfejs użytkownika HTTP/CGI pozwala administratorom
  przeglądać pliki logów, konfigurację i aktualny stan oraz
  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).
- 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
  interfejsu CGI.
- BackupPC obsługuje środowiska przenośne, gdzie laptopy są
  podłączane do sieci tylko z przerwami i mają dynamiczne adresy IP
  (z DHCP).
- Elastyczna konfiguracja parametrów pozwala na wykonywanie wielu
  kopii równolegle.
- Wiele więcej można odkryć w manualu...

%prep
%setup -q -n BackupPC-%{version}
%patch0 -p1

%install
rm -rf $RPM_BUILD_ROOT

install -d $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,backuppc,httpd/httpd.conf}
install -d $RPM_BUILD_ROOT%{_mandir}/man8
install -d $RPM_BUILD_ROOT/var/lib/backuppc/pc/localhost

%{__perl} configure.pld.pl \
		--batch  \
    		--cgi-dir %{_datadir}/BackupPC/cgi-bin \
	        --data-dir /home/services/BackupPC \
		--dest-dir $RPM_BUILD_ROOT \
		--hostname localhost \
		--html-dir %{_usr}/share/BackupPC/www/html \
		--html-dir-url /BackupPC \
		--install-dir %{_usr} \
		--uid-ignore
			

				

pod2man --section=8 --center="BackupPC manual" doc/BackupPC.pod doc/backuppc.8
#perl -e "s/.IX Title.*/.SH NAME\nbackuppc \\- BackupPC manual/g" -p -i.tmp backuppc.8
#rm -f $RPM_BUILD_ROOT%{_datadir}/backuppc/doc/*
#mv -f $RPM_BUILD_ROOT/var/lib/backuppc/conf/* $RPM_BUILD_ROOT/etc/backuppc
#mv -f $RPM_BUILD_ROOT%{_datadir}/backuppc/cgi-bin/* $RPM_BUILD_ROOT%{_datadir}/backuppc/cgi-bin/index.cgi
install init.d/linux-backuppc $RPM_BUILD_ROOT/etc/rc.d/init.d/
install conf/hosts $RPM_BUILD_ROOT/etc/backuppc
install doc/backuppc.8 $RPM_BUILD_ROOT%{_mandir}/man8/
install conf/BackupPC_stnd.css  $RPM_BUILD_ROOT/etc/backuppc
install conf/config.pl $RPM_BUILD_ROOT/etc/backuppc
#install --mode=644 debian/apache.conf $RPM_BUILD_ROOT/etc/httpd/httpd.conf/93_backuppc.conf
#(cd $RPM_BUILD_ROOT%{_datadir}/backuppc/cgi-bin; ln -s ../image)
rm $RPM_BUILD_ROOT%{_usr}/doc/*
cp $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/linux-backuppc $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/backuppc
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/linux-backuppc

%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 "systemowy użytkownik dla %{name}" -u 150 -r -d /home/services/BackupPC -s /bin/false -g %{BPCgroup} %{BPCuser} 1>&2
fi


%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(644,root,root,755)
%attr(750,root,root) %dir %{_var}/lib/backuppc
%attr(750,root,root) %{_var}/lib/backuppc/*
%attr(750,root,root) %dir /home/services/BackupPC
%attr(750,root,root) /home/services/BackupPC/*
#%attr(750,root,root) %doc %dir /usr/doc
#%attr(750,root,root) %doc /usr/doc/*
%attr(750,root,root) %doc %{_mandir}/man8/backuppc.8.gz
%attr(750,root,root) %dir %{_libdir}/BackupPC
%attr(750,root,root) %{_libdir}/BackupPC/*
#attr(750,root,root) %dir %{_libdir}/BackupPC/CGI
#attr(750,root,root) %{_libdir}/BackupPC/CGI
#attr(750,root,root) %dir %{_libdir}/BackupPC/Xfer
#attr(750,root,root) %{_libdir}/BackupPC/Xfer
#attr(750,root,root) %dir %{_libdir}/BackupPC/Zip
#attr(750,root,root) %{_libdir}/BackupPC/Zip
#attr(750,root,root) %{_libdir}/BackupPC/Lang/
%attr(750,root,root) %dir %{_datadir}/BackupPC/cgi-bin
%attr(750,root,root) %{_datadir}/BackupPC/cgi-bin/*
%attr(750,root,root) %dir %{_usr}/share/BackupPC/www/html
%attr(750,root,root) %{_usr}/share/BackupPC/www/html/*
%attr(755,root,root) %{_sysconfdir}/rc.d/init.d/backuppc
%config(noreplace) %verify(not md5 size mtime) %attr(640,root,root) %{_sysconfdir}/backuppc/*
%attr(755,root,root) %{_bindir}/*

%define date	%(echo `LC_ALL="C" date +"%a %b %d %Y"`)
%changelog
* %{date} PLD Team <feedback w pld-linux.org>
All persons listed below can be reached at <cvs_login>@pld-linux.org

$Log: backuppc.spec,v $
Revision 1.5  2004/11/05 10:40:37  paladine
- spaces->tabs
- cosmetics

Revision 1.4  2004/08/30 15:50:27  snurf
- typo / formatting / etc.

Revision 1.3  2004/05/09 05:22:00  ankry
- BR fixes, rel. 2

Revision 1.2  2003/10/21 17:03:13  qboosh
- pl, fixed dir in files

Revision 1.1  2003/10/16 22:59:52  arekm
- just started (waiting for someone to finish it)
-------------- następna część ---------
Załącznik, który nie był tekstem został usunięty...
Name: backuppc-usernotexist.patch
Type: text/x-patch
Size: 347 bytes
Desc: nie znany
Url : /mailman/pipermail/pld-devel-pl/attachments/20041203/e62782e4/backuppc-usernotexist.bin


Więcej informacji o liście dyskusyjnej pld-devel-pl