1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
10 groups = Applications/Internet
11 url = http://rsync.samba.org/
13 summary = A program for synchronizing files over a network.
16 Rsync uses a reliable algorithm to bring remote and host files into
17 sync very quickly. Rsync is fast because it just sends the differences
18 in the files over the network instead of sending the complete
19 files. Rsync is often used as a very powerful mirroring process or
20 just as a more capable replacement for the rcp command. A technical
21 report which describes the rsync algorithm is included in this
25 source_dl = http://rsync.samba.org/ftp/rsync/
26 sources += %{name}-patches-%{version}.tar.gz
43 configure_options += \
44 --without-included-popt \
45 --without-included-zlib \
51 # Fix permission issure.
52 cd %{DIR_APP} && chmod -x support/*
54 # Apply upstream patches.
55 patch -Np1 -i patches/acls.diff
56 patch -Np1 -i patches/xattrs.diff
57 patch -Np1 -i patches/copy-devices.diff
62 # Regenerate build environment.
67 make_build_targets = proto all
70 # Fix permissions of testsuite helper script.
72 # Otherwise some tests of the testsuite will fail,
73 # because the script is not allowed to be executed.
74 chmod +x ./support/lsh.sh
79 make_install_targets += \
80 INSTALLCMD="install -p" \
81 INSTALLMAN="install -p"
84 # Install config file.
85 mkdir -pv %{BUILDROOT}%{sysconfdir}
87 install -m 0644 %{DIR_SOURCE}/rsyncd.conf \
88 %{BUILDROOT}%{sysconfdir}/
90 # Create directory for pidfile.
91 mkdir -pv %{BUILDROOT}/run/rsyncd
93 # Replace shebanh in rsync-ssl
94 sed -i -e "s@^#!.*@#!/bin/bash@" \
95 %{BUILDROOT}%{bindir}/rsync-ssl
103 %{sysconfdir}/rsyncd.conf
112 systemctl daemon-reload >/dev/null 2>&1 || :
116 systemctl --no-reload disable rsyncd.service >/dev/null 2>&1 || :
117 systemctl --no-reload disable rsyncd.socket >/dev/null 2>&1 || :
118 systemctl stop rsyncd.service >/dev/null 2>&1 || :
119 systemctl stop rsyncd.socket >/dev/null 2>&1 || :
120 systemctl stop rsyncd@.service >/dev/null 2>&1 || :
124 systemctl daemon-reload >/dev/null 2>&1 || :
128 systemctl daemon-reload >/dev/null 2>&1 || :
129 systemctl try-restart rsyncd.service >/dev/null 2>&1 || :
133 package %{name}-debuginfo