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