]> git.pld-linux.org Git - packages/rsync.git/blob - rsync.spec
- rel 2; backport of dparam option
[packages/rsync.git] / rsync.spec
1 #
2 # Conditional build:
3 %bcond_with     rsh     # set remote shell command to rsh instead of ssh (old behaviour)
4 %bcond_with     tests   # perform "make test"
5 #
6 %ifarch alpha
7 %undefine       with_tests
8 %endif
9 Summary:        Program for efficient remote updates of files
10 Summary(es.UTF-8):      Programa para actualizar archivos remotos de forma eficiente
11 Summary(ko.UTF-8):      네트워크를 통한 파일동기화를 위한 프로그램
12 Summary(pl.UTF-8):      Program do wydajnego zdalnego uaktualniania plików
13 Summary(pt_BR.UTF-8):   Programa para atualizar arquivos remotos de forma eficiente
14 Summary(ru.UTF-8):      Программа для эффективного удаленного обновления файлов
15 Summary(uk.UTF-8):      Програма для ефективного віддаленого оновлення файлів
16 Summary(zh_CN.UTF-8):   [通讯]传输工具
17 Summary(zh_TW.UTF-8):   [喙啪]\e$(B6G?i火(c\e(B
18 Name:           rsync
19 Version:        3.0.3
20 Release:        2
21 License:        GPL
22 Group:          Networking/Utilities
23 Source0:        http://rsync.samba.org/ftp/rsync/%{name}-%{version}.tar.gz
24 # Source0-md5:  16d41aab9ece435198af222c5415a304
25 Source1:        http://rsync.samba.org/ftp/rsync/rsync-patches-%{version}.tar.gz
26 # Source1-md5:  ff814658791187a5f32c1a145714db43
27 Source2:        %{name}.inet
28 Source3:        %{name}.init
29 Source4:        %{name}.sysconfig
30 Source5:        %{name}d.logrotate
31 Patch0:         %{name}-config.patch
32 Patch1:         %{name}-dparam.patch
33 URL:            http://rsync.samba.org/
34 BuildRequires:  acl-devel
35 BuildRequires:  autoconf >= 2.52
36 BuildRequires:  automake
37 BuildRequires:  openssl-devel
38 BuildRequires:  popt-devel
39 BuildRequires:  rpmbuild(macros) >= 1.318
40 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
41
42 %define         _sysconfdir     /etc/rsyncd
43
44 %description
45 rsync is a replacement for rcp that has many more features.
46
47 rsync uses the "rsync algorithm" which provides a very fast method for
48 bringing remote files into sync. It does this by sending just the
49 differences in the files across the link, without requiring that both
50 sets of files are present at one of the ends of the link beforehand.
51
52 A technical report describing the rsync algorithm is included with
53 this package.
54
55 %description -l es.UTF-8
56 rsync es un substituto más rápido y flexible para rcp que permite la
57 sincronización de archivos o directorios, vía red, de forma rápida y
58 eficiente, entre diferentes máquinas transfiriendo solamente las
59 diferencias entre estos directorios de forma compactada. No necesita
60 que ninguna de las máquinas tengan una copia de lo que está en la
61 otra. Está disponible en este paquete, una relación técnica
62 describiendo el algoritmo usado por el rsync.
63
64 %description -l ko.UTF-8
65 Rsync는 원격 호스트 파일을 매우 빨리 동기화하는데 신뢰할만한
66 알고리즘을 사용한다. Rsync는 파일의 전체를 보내는 것 대신에 네트웍을
67 통해 파일의 다른 부분만을 전송하기 때문에 빠르다. Rsync는 강력한 미러
68 프로세스 혹은 rcp 커멘드를 통한 더 우수한 대체용으로써 사용된다. rsync
69 알고리즘을 묘사하는 기술적인 내용은 이 꾸러미에 포함되어 있다.
70
71 %description -l pl.UTF-8
72 Rsync jest zamiennikiem programu rcp z bardziej rozbudowaną składnią
73 poleceń. Program ten używa efektywnego algorytmu "rsync" w czasie
74 komunikacji i transportu plików do systemu zdalnego. Dokumentacja
75 techniczna nowego algorytmu została również dołączona do pakietu.
76
77 %description -l pt_BR.UTF-8
78 O rsync é um substituto mais rápido e flexível para o rcp permitindo
79 sincronização de arquivos ou diretórios via rede de forma rápida e
80 eficiente entre diferentes máquinas transferindo somente as diferenças
81 entre estes diretórios de forma compactada. Ele não precisa que
82 nenhuma das máquinas tenha uma cópia do que está na outra.
83
84 Um relatório técnico descrevendo o algoritmo usado pelo rsync está
85 disponível neste pacote.
86
87 %description -l ru.UTF-8
88 rsync - это более быстрая и гибкая альтернатива rcp, позволяющая
89 быструю и эффективную по отношению к ресурсам сети синхронизацию
90 файлов или каталогов на различных машинах путем передачи только
91 различий между ними в компрессированном виде. При этом совершенно не
92 обязательно, чтобы одна машина имела у себя копию того, что есть на
93 другой машине.
94
95 %description -l uk.UTF-8
96 rsync - це швидша та гнучкіша альтернатива rcp, яка забезпечує швидку
97 та ефективну по відношенню до ресурсів мережі синхронізацію файлів чи
98 каталогів на різних машинах шляхом передачі лише відмінностей між ними
99 в компресованому виді. При цьому зовсім не обов'язково, щоб одна
100 машина мала в себе копію того, що є на іншій машині.
101
102 %package -n rsyncd-inetd
103 Summary:        Files necessary to run rsync in daemon mode
104 Summary(pl.UTF-8):      Pliki niezbędne do uruchomienia rsynca w trybie serwera
105 Group:          Networking/Daemons
106 Requires:       %{name} = %{version}-%{release}
107 Requires:       rc-inetd
108 Provides:       rsyncd
109 Obsoletes:      rsyncd
110 Obsoletes:      rsyncd-standalone
111
112 %description -n rsyncd-inetd
113 rsync is a replacement for rcp that has many more features.
114
115 rsync uses the "rsync algorithm" which provides a very fast method for
116 bringing remote files into sync. It does this by sending just the
117 differences in the files across the link, without requiring that both
118 sets of files are present at one of the ends of the link beforehand.
119
120 A technical report describing the rsync algorithm is included with
121 this package.
122
123 %description -n rsyncd-inetd -l pl.UTF-8
124 Rsync jest zamiennikiem programu rcp z bardziej rozbudowaną składnią
125 poleceń. Program ten używa efektywnego algorytmu "rsync" w czasie
126 komunikacji i transportu plików do systemu zdalnego. Dokumentacja
127 techniczna nowego algorytmu została również dołączona do pakietu.
128
129 %package -n rsyncd-standalone
130 Summary:        Files necessary to run rsync in daemon mode
131 Summary(pl.UTF-8):      Pliki niezbędne do uruchomienia rsynca w trybie serwera
132 Group:          Networking/Daemons
133 Requires(post,preun):   /sbin/chkconfig
134 Requires:       %{name} = %{version}-%{release}
135 Provides:       rsyncd
136 Obsoletes:      rsyncd
137 Obsoletes:      rsyncd-inetd
138
139 %description -n rsyncd-standalone
140 rsync is a replacement for rcp that has many more features.
141
142 rsync uses the "rsync algorithm" which provides a very fast method for
143 bringing remote files into sync. It does this by sending just the
144 differences in the files across the link, without requiring that both
145 sets of files are present at one of the ends of the link beforehand.
146
147 A technical report describing the rsync algorithm is included with
148 this package.
149
150 %description -n rsyncd-standalone -l pl.UTF-8
151 Rsync jest zamiennikiem programu rcp z bardziej rozbudowaną składnią
152 poleceń. Program ten używa efektywnego algorytmu "rsync" w czasie
153 komunikacji i transportu plików do systemu zdalnego. Dokumentacja
154 techniczna nowego algorytmu została również dołączona do pakietu.
155
156 %prep
157 %setup -q -b1
158 %patch0 -p1
159 %patch1 -p1
160
161 # for compat with previous patched version
162 patch -p1 -i patches/acls.diff || exit 1
163 patch -p1 -i patches/xattrs.diff || exit 1
164
165 %build
166 cp -f /usr/share/automake/config.sub .
167 %{__autoheader}
168 %{__autoconf}
169 %configure \
170         %{?with_rsh:--with-rsh=rsh} \
171         --enable-ipv6 \
172         --enable-acl-support \
173         --enable-xattr-support \
174         --disable-debug \
175         --with-rsyncd-conf=%{_sysconfdir}/rsyncd.conf
176 %{__make} proto
177 %{__make}
178
179 %{?with_tests:%{__make} test}
180
181 %install
182 rm -rf $RPM_BUILD_ROOT
183 install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{sysconfig/rc-inetd,rc.d/init.d,logrotate.d,env.d},/var/log}
184
185 %{__make} install \
186         prefix=$RPM_BUILD_ROOT%{_prefix} \
187         mandir=$RPM_BUILD_ROOT%{_mandir} \
188         bindir=$RPM_BUILD_ROOT%{_bindir}
189
190 :> $RPM_BUILD_ROOT/var/log/rsyncd.log
191 :> $RPM_BUILD_ROOT%{_sysconfdir}/rsyncd.secrets
192
193 cat << EOF > $RPM_BUILD_ROOT%{_sysconfdir}/rsyncd.conf
194 log file = /var/log/rsyncd.log
195 EOF
196
197 cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/CVSIGNORE
198 #CVSIGNORE=
199 EOF
200 cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/RSYNC_RSH
201 #RSYNC_RSH=
202 EOF
203 cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/RSYNC_PROXY
204 #RSYNC_PROXY=
205 EOF
206 cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/RSYNC_PASSWORD
207 #RSYNC_PASSWORD=
208 EOF
209
210 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/rsyncd
211 install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyncd
212 install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rsyncd
213 install %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/rsyncd
214
215 %clean
216 rm -rf $RPM_BUILD_ROOT
217
218 %post
219 %env_update
220
221 %postun
222 %env_update
223
224 %post -n rsyncd-inetd
225 %service -q rc-inetd reload
226
227 %postun -n rsyncd-inetd
228 if [ "$1" = "0" ]; then
229         %service -q rc-inetd reload
230 fi
231
232 %post -n rsyncd-standalone
233 /sbin/chkconfig --add rsyncd
234 %service rsyncd restart "rsync server"
235
236 %preun -n rsyncd-standalone
237 if [ "$1" = "0" ]; then
238         %service rsyncd stop
239         /sbin/chkconfig --del rsyncd
240 fi
241
242 %files
243 %defattr(644,root,root,755)
244 %doc README NEWS OLDNEWS TODO
245 %config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/*
246 %attr(755,root,root) %{_bindir}/*
247 %{_mandir}/man1/*
248
249 %files -n rsyncd-inetd
250 %defattr(644,root,root,755)
251 %dir %{_sysconfdir}
252 %attr(640,root,root) %config(noreplace) %{_sysconfdir}/rsyncd.conf
253 %attr(640,root,root) %config(noreplace) %{_sysconfdir}/rsyncd.secrets
254 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyncd
255 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/rsyncd
256 %attr(640,root,root) %ghost /var/log/rsyncd.log
257 %{_mandir}/man5/*
258
259 %files -n rsyncd-standalone
260 %defattr(644,root,root,755)
261 %dir %{_sysconfdir}
262 %attr(640,root,root) %config(noreplace) %{_sysconfdir}/rsyncd.conf
263 %attr(640,root,root) %config(noreplace) %{_sysconfdir}/rsyncd.secrets
264 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rsyncd
265 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyncd
266 %attr(640,root,root) %ghost /var/log/rsyncd.log
267 %attr(754,root,root) /etc/rc.d/init.d/rsyncd
268 %{_mandir}/man5/*
This page took 0.068902 seconds and 4 git commands to generate.