# Buildsheet autogenerated by ravenadm tool -- Do not edit.
NAMEBASE= rsync
VERSION= 3.4.1
REVISION= 1
KEYWORDS= net
VARIANTS= std
SDESC[std]= Network file distribution/synchronization utility
HOMEPAGE= https://rsync.samba.org/
CONTACT= nobody
DOWNLOAD_GROUPS= main
SITES[main]= https://rsync.samba.org/ftp/rsync/
ftp://ftp.samba.org/pub/rsync/
http://www.mirrorservice.org/sites/rsync.samba.org/
DISTFILE[1]= rsync-3.4.1.tar.gz:main
DF_INDEX= 1
SPKGS[std]= set
primary
man
OPTIONS_AVAILABLE= none
OPTIONS_STANDARD= none
BUILD_DEPENDS= xxhash:dev:std
BUILDRUN_DEPENDS= xxhash:primary:std
USES= cpe iconv zstd zlib lz4 shebangfix ssl
rootca:primary smf:primary
LICENSE= GPLv3+:primary
LICENSE_TERMS= primary:{{WRKDIR}}/TERMS
LICENSE_FILE= GPLv3+:{{WRKSRC}}/COPYING
LICENSE_AWK= TERMS:"^$$"
LICENSE_SOURCE= TERMS:{{WRKSRC}}/rsync.h
LICENSE_SCHEME= solo
CPE_PRODUCT= rsync
CPE_VENDOR= samba
FPC_EQUIVALENT= net/rsync
SHEBANG_FILES= support/rrsync
MUST_CONFIGURE= gnu
CONFIGURE_ARGS= --disable-debug
--enable-ipv6
--enable-iconv
--enable-iconv-open
--with-rsyncd-conf={{PREFIX}}/etc/rsync/rsyncd.conf
--with-included-popt=yes
--with-included-zlib=no
--with-rsh=ssh
INSTALL_TARGET= install-strip
RC_SUBR= rsyncd:primary
SUB_FILES= rsyncd.conf.sample
manifest.xml
SUB_LIST= NAME=rsyncd
TEST_TARGET= check
post-patch:
${REINPLACE_CMD} -e 's|perl.*|${DO_NADA}|' ${WRKSRC}/Makefile.in
${REINPLACE_CMD} -e 's:/etc/:${PREFIX}/etc/rsync/:g' \
${WRKSRC}/rsync.h ${WRKSRC}/rsync.1 ${WRKSRC}/rsyncd.conf.5
${REINPLACE_CMD} -e 's|/usr/bin/rsync|${PREFIX}/bin/rsync|g' \
${WRKSRC}/support/rrsync
post-install:
# A rare use of /raven/var/run, rsync drop priv to "nobody", so no "rsyncd" user
${MKDIR} ${STAGEDIR}${PREFIX}/var/run
${MKDIR} ${STAGEDIR}${PREFIX}/etc/rsync
${INSTALL_DATA} ${WRKDIR}/rsyncd.conf.sample ${STAGEDIR}${PREFIX}/etc/rsync
${INSTALL_SCRIPT} ${WRKSRC}/support/rrsync ${STAGEDIR}${PREFIX}/sbin
[FILE:494:descriptions/desc.primary]
rsync is a replacement for rcp that has many more features.
rsync uses the "rsync algorithm" which provides a very fast method for
bringing remote files into sync. It does this by sending just the
differences in the files across the link, without requiring that both
sets of files are present at one of the ends of the link beforehand.
This makes rsync a good remote file distribution/synchronization utility
in a dialup PPP/SLIP environment.
Note, requires rsync on the destination machine.
[FILE:97:distinfo]
2924bcb3a1ed8b551fc101f740b9f0fe0a202b115027647cf69850d65fd88c52 1172739 rsync-3.4.1.tar.gz
[FILE:85:manifests/plist.primary]
@sample etc/rsync/rsyncd.conf.sample
bin/
rsync
rsync-ssl
sbin/rrsync
@dir var/run
[FILE:67:manifests/plist.man]
share/man/man1/
rsync-ssl.1
rsync.1
share/man/man5/rsyncd.conf.5
[FILE:283:patches/patch-popt_findme.c]
--- popt/findme.c.orig 2025-01-15 20:27:46 UTC
+++ popt/findme.c
@@ -6,6 +6,9 @@
file accompanying popt source distributions, available from
ftp://ftp.rpm.org/pub/rpm/dist. */
+#if defined(__linux__)
+#include "rsync.h"
+#endif
#include "system.h"
#include "findme.h"
[FILE:1665:files/manifest.xml.in]
Rsync daemon for native file synchronization and transfer.
[FILE:778:files/rsyncd.conf.sample.in]
# rsyncd.conf - Example file, see rsyncd.conf(5)
#
# Set this if you want to stop rsync daemon with rc.d scripts
pid file = %%PREFIX%%/var/run/rsyncd.pid
# Edit this file before running rsync daemon!!
#uid = nobody
#gid = nobody
#use chroot = no
#max connections = 4
#syslog facility = local5
#[ftp]
# path = /var/ftp/pub
# comment = whole ftp area (approx 6.1 GB)
#[sambaftp]
# path = /var/ftp/pub/samba
# comment = Samba ftp area (approx 300 MB)
#[rsyncftp]
# path = /var/ftp/pub/rsync
# comment = rsync ftp area (approx 6 MB)
#[sambawww]
# path = /public_html/samba
# comment = Samba WWW pages (approx 240 MB)
#[cvs]
# path = /data/cvs
# comment = CVS repository (requires authentication)
# auth users = tridge, susan
# secrets file = /raven/etc/rsync/rsyncd.secrets
[FILE:984:files/rsyncd.in]
#!/bin/sh
#
# PROVIDE: %%NAME%%
# REQUIRE: LOGIN
# BEFORE: securelevel
# KEYWORD: shutdown
# Add the following lines to /etc/rc.conf to enable `%%NAME%%':
#
# %%NAME%%_enable="YES"
# %%NAME%%_flags=""
#
# See rsync(1) for %%NAME%%_flags
#
. /etc/rc.subr
name="%%NAME%%"
rcvar=%%NAME%%_enable
command="%%PREFIX%%/bin/rsync"
start_precmd="%%NAME%%_precmd"
pidfile="%%PREFIX%%/var/run/$name.pid"
# read configuration and set defaults
load_rc_config "$name"
: ${%%NAME%%_enable="NO"}
: ${%%NAME%%_configfile:=%%ETCDIR%%/$name.conf}
required_files="${%%NAME%%_configfile}"
command_args="--daemon --config ${%%NAME%%_configfile}"
%%NAME%%_precmd()
{
if [ -f "%%PREFIX%%/etc/$name.conf" ] && [ ! -L "%%PREFIX%%/etc/$name.conf" ]; then
echo "Found %%PREFIX%%/etc/$name.conf in old location. Migrating to %%ETCDIR%%/$name.conf."
mv %%PREFIX%%/etc/$name.conf %%ETCDIR%%/$name.conf
ln -s %%ETCDIR%%/$name.conf %%PREFIX%%/etc/$name.conf
fi
}
run_rc_command "$1"