diff options
author | Mark Felder <feld@FreeBSD.org> | 2014-06-09 19:31:27 +0000 |
---|---|---|
committer | Mark Felder <feld@FreeBSD.org> | 2014-06-09 19:31:27 +0000 |
commit | 3f9fd6b9dc7114d22a0269b7aff0c993bf2177bd (patch) | |
tree | 97bbda640126bd5247836ff8bb7afbf1baf6debe /sysutils/clsync | |
parent | facdcbbf1edb7fd652d92c895668c29348914282 (diff) | |
download | ports-3f9fd6b9dc7114d22a0269b7aff0c993bf2177bd.tar.gz ports-3f9fd6b9dc7114d22a0269b7aff0c993bf2177bd.zip |
New port: sysutils/clsync
clsync is a utility that initatiates automatic rsync transfers after
detection of filesystem changes
Caution: port may have rough edges. Its FreeBSD support is very new.
Notes
Notes:
svn path=/head/; revision=357197
Diffstat (limited to 'sysutils/clsync')
-rw-r--r-- | sysutils/clsync/Makefile | 75 | ||||
-rw-r--r-- | sysutils/clsync/distinfo | 2 | ||||
-rw-r--r-- | sysutils/clsync/files/clsync.in | 56 | ||||
-rw-r--r-- | sysutils/clsync/files/pkg-message.in | 8 | ||||
-rw-r--r-- | sysutils/clsync/pkg-descr | 3 | ||||
-rw-r--r-- | sysutils/clsync/pkg-plist | 4 |
6 files changed, 148 insertions, 0 deletions
diff --git a/sysutils/clsync/Makefile b/sysutils/clsync/Makefile new file mode 100644 index 000000000000..11f4d886f358 --- /dev/null +++ b/sysutils/clsync/Makefile @@ -0,0 +1,75 @@ +# Created by: Dmitry Yu Okunev dyokunev@ut.mephi.ru +# $FreeBSD$ + +PORTNAME= clsync +DISTVERSION= 0.4~rc2 +CATEGORIES= sysutils + +MAINTAINER= dyokunev@ut.mephi.ru +COMMENT= Live file sync daemon based on inotify, written in GNU C + +LICENSE= GPLv3 + +LIB_DEPENDS= libinotify.so:${PORTSDIR}/devel/libinotify + +GNU_CONFIGURE= yes +USES= gmake libtool pkgconfig +USE_GNOME= glib20 + +USE_RC_SUBR= clsync + +SUB_FILES= pkg-message + +USE_GITHUB= yes +GH_ACCOUNT= xaionaro +GH_PROJECT= clsync +GH_COMMIT= 15501e4 +GH_TAGNAME= ${GH_COMMIT} + +USE_AUTOTOOLS= autoconf aclocal automake libtoolize + +OPTIONS_DEFINE= PARANOID VERYPARANOID SOCKET DEBUG LIBCLSYNC + +PARANOID_DESC= Enable paranoid secure routines +VERYPARANOID_DESC=Enable extra paranoid secure routines and disable some extra features +SOCKET_DESC= Enable control socket support +LIBCLSYNC_DESC= Build libclsync.so for control socket clients + +OPTIONS_DEFAULT=PARANOID + +.include <bsd.port.options.mk> + +.if ${PORT_OPTIONS:MVERYPARANOID} +CONFIGURE_ARGS+= --enable-paranoid=2 +.else +.if ${PORT_OPTIONS:MPARANOID} +CONFIGURE_ARGS+= --enable-paranoid=1 +.else +CONFIGURE_ARGS+= --enable-paranoid=0 +.endif +.endif + +.if ${PORT_OPTIONS:MSOCKET} +CONFIGURE_ARGS+= --enable-socket +.endif + +.if ${PORT_OPTIONS:MDEBUG} +CONFIGURE_ARGS+= --enable-debug +.endif + +.if ${PORT_OPTIONS:MLIBCLSYNC} +CONFIGURE_ARGS+= --enable-libclsync +.endif + +.include <bsd.port.pre.mk> + +pre-configure: + cd "${WRKSRC}" && ${AUTORECONF} -fi + +do-install: + @${INSTALL_SCRIPT} ${WRKSRC}/clsync ${STAGEDIR}/${PREFIX}/sbin/clsync + ${INSTALL_DATA} ${WRKSRC}/man/man1/clsync.1 ${STAGEDIR}/${PREFIX}/man/man1/clsync.1 + ${MKDIR} ${STAGEDIR}/${ETCDIR} + ${INSTALL_DATA} ${WRKSRC}/freebsd/usr/local/etc/clsync/${PORTNAME}.conf ${STAGEDIR}/${ETCDIR}/${PORTNAME}.conf + +.include <bsd.port.post.mk> diff --git a/sysutils/clsync/distinfo b/sysutils/clsync/distinfo new file mode 100644 index 000000000000..bba4c3faff70 --- /dev/null +++ b/sysutils/clsync/distinfo @@ -0,0 +1,2 @@ +SHA256 (clsync-0.4~rc2.tar.gz) = 86adce37978d4e69525b729943b62a4a0e74196832fb812ad50cc8a58d35dccb +SIZE (clsync-0.4~rc2.tar.gz) = 142026 diff --git a/sysutils/clsync/files/clsync.in b/sysutils/clsync/files/clsync.in new file mode 100644 index 000000000000..64c44c1f79c0 --- /dev/null +++ b/sysutils/clsync/files/clsync.in @@ -0,0 +1,56 @@ +#!/bin/sh +# $FreeBSD: + +# PROVIDE: clsync +# REQUIRE: FILESYSTEMS +# KEYWORD: shutdown + +. /etc/rc.subr + +name=clsync + +rcvar=clsync_enable + +load_rc_config $name + +start_cmd=clsync_start +start_precmd=clsync_prestart +stop_cmd=clsync_stop +restart_cmd=clsync_restart +clsync_program="%%PREFIX%%/sbin/clsync" + +clsync_prestart() +{ + if [ "$clsync_config" = "" ]; then + clsync_config=/usr/local/etc/clsync/clsync.conf + fi + + if [ "$clsync_config_groups" = "" ]; then + clsync_config_groups=default + fi +} + +clsync_start() +{ + for config_group in $clsync_config_groups; do + echo "Running clsync (group ${config_group})." + "${clsync_program}" -f "$clsync_config" -K "$config_block" -b \ + --pid-file=/var/run/clsync-"${config_group}".pid + done +} + +clsync_stop() +{ + for config_group in $clsync_config_groups; do + echo "Stopping clsync (group ${config_group})." + pkill -F /var/run/clsync-"${config_group}".pid + done +} + +clsync_restart() +{ + clsync_stop + clsync_start +} + +run_rc_command "$1" diff --git a/sysutils/clsync/files/pkg-message.in b/sysutils/clsync/files/pkg-message.in new file mode 100644 index 000000000000..b282da39ed9f --- /dev/null +++ b/sysutils/clsync/files/pkg-message.in @@ -0,0 +1,8 @@ +------------------------------------------------------------------------------ +Author: Dmtiry Yu Okunev; e-mail: dyokunev@ut.mephi.ru; PGP: 0x8E30679C +What's left: + 1. Edit %%PREFIX%%/etc/clsync/clsync.conf + 2. Set clsync_enable="YES" in /etc/rc.conf +Start the program: %%PREFIX%%/etc/rc.d/clsync start +------------------------------------------------------------------------------ + diff --git a/sysutils/clsync/pkg-descr b/sysutils/clsync/pkg-descr new file mode 100644 index 000000000000..0de4d5b1d5a9 --- /dev/null +++ b/sysutils/clsync/pkg-descr @@ -0,0 +1,3 @@ +file live sync daemon based on inotify, written in GNU C + +WWW: https://github.com/xaionaro/clsync diff --git a/sysutils/clsync/pkg-plist b/sysutils/clsync/pkg-plist new file mode 100644 index 000000000000..6da71d9054e3 --- /dev/null +++ b/sysutils/clsync/pkg-plist @@ -0,0 +1,4 @@ +sbin/clsync +man/man1/clsync.1.gz +@sample etc/clsync/clsync.conf +@dirrmtry %%ETCDIR%% |