svn commit: r420360 - in head/net-p2p: . libswift libswift/files

Kurt Jaeger pi at FreeBSD.org
Wed Aug 17 18:10:03 UTC 2016


Author: pi
Date: Wed Aug 17 18:10:01 2016
New Revision: 420360
URL: https://svnweb.freebsd.org/changeset/ports/420360

Log:
  New port: net-p2p/libswift
  
  LibSwift is the reference UDP-based implementation of IETF RFC7574,
  a multi-peer transport layer protocol. Its mission is to disseminate
  content among a swarm of peers.
  
  Given a root hash, the data is received from whatever source available
  and data integrity is checked cryptographically with Merkle hash
  trees.
  
  WWW: https://tools.ietf.org/html/rfc7574
  
  PR:		211945
  Submitted by:	Dave Cottlehuber <dch at skunkwerks.at>

Added:
  head/net-p2p/libswift/
  head/net-p2p/libswift/Makefile   (contents, props changed)
  head/net-p2p/libswift/distinfo   (contents, props changed)
  head/net-p2p/libswift/files/
  head/net-p2p/libswift/files/libswift.in   (contents, props changed)
  head/net-p2p/libswift/pkg-descr   (contents, props changed)
  head/net-p2p/libswift/pkg-plist   (contents, props changed)
Modified:
  head/net-p2p/Makefile

Modified: head/net-p2p/Makefile
==============================================================================
--- head/net-p2p/Makefile	Wed Aug 17 16:22:50 2016	(r420359)
+++ head/net-p2p/Makefile	Wed Aug 17 18:10:01 2016	(r420360)
@@ -44,6 +44,7 @@
     SUBDIR += liberator
     SUBDIR += libktorrent
     SUBDIR += libpdtp
+    SUBDIR += libswift
     SUBDIR += libtorrent
     SUBDIR += libtorrent-rasterbar
     SUBDIR += libtorrent-rasterbar-python

Added: head/net-p2p/libswift/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/libswift/Makefile	Wed Aug 17 18:10:01 2016	(r420360)
@@ -0,0 +1,48 @@
+# Created by: Dave Cottlehuber <dch at skunkwerks.at>
+# $FreeBSD$
+
+PORTNAME=		libswift
+PORTVERSION=	20160817
+CATEGORIES=		net-p2p
+
+MAINTAINER=		dch at skunkwerks.at
+COMMENT=	 IETF Peer-to-Peer Streaming Peer Protocol implementation
+
+LICENSE=	LGPL21
+
+LIB_DEPENDS=		libevent.so:devel/libevent2
+
+USE_GITHUB=		yes
+GH_TAGNAME=		dda307f
+
+USES=		gmake ssl
+
+PORTDOCS=		README.md
+
+SUB_FILES=		${PORTNAME}
+SUB_LIST+=		SWIFT_USER=${SWIFT_USER} \
+			SWIFT_GROUP=${SWIFT_GROUP} \
+			SWIFT_SHAREDIR=${SWIFT_SHAREDIR} \
+			SWIFT_PIDDIR=${SWIFT_PIDDIR}
+
+PLIST_SUB=		SWIFT_USER=${SWIFT_USER} \
+			SWIFT_GROUP=${SWIFT_GROUP} \
+			SWIFT_SHAREDIR=${SWIFT_SHAREDIR} \
+			SWIFT_PIDDIR=${SWIFT_PIDDIR}
+
+SWIFT_USER?=		www
+SWIFT_GROUP?=		www
+
+SWIFT_SHAREDIR=		/var/db/${PORTNAME}/
+SWIFT_PIDDIR=		/var/run/${PORTNAME}/
+
+USE_RC_SUBR=		${PORTNAME}
+
+do-install:
+	${MKDIR} ${STAGEDIR}${DOCSDIR} \
+		${STAGEDIR}${SWIFT_SHAREDIR} \
+		${STAGEDIR}${SWIFT_PIDDIR}
+	${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR}
+	${INSTALL_PROGRAM} ${WRKSRC}/swift ${STAGEDIR}${PREFIX}/bin/${PORTNAME}
+
+.include <bsd.port.mk>

Added: head/net-p2p/libswift/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/libswift/distinfo	Wed Aug 17 18:10:01 2016	(r420360)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1471446348
+SHA256 (libswift-libswift-20160817-dda307f_GH0.tar.gz) = 3ba3153097bb2c516c94393f3d376b8c5bc36c284138b49219ec45bbcd821281
+SIZE (libswift-libswift-20160817-dda307f_GH0.tar.gz) = 3329674

Added: head/net-p2p/libswift/files/libswift.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/libswift/files/libswift.in	Wed Aug 17 18:10:01 2016	(r420360)
@@ -0,0 +1,49 @@
+#!/bin/sh
+# $FreeBSD$
+#
+# PROVIDE: libswift
+# REQUIRE: LOGIN NETWORKING SERVERS
+# KEYWORD: shutdown
+#
+# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
+# to enable this service:
+#
+# libswift_enable (bool):   Set to NO by default.
+# Set it to YES to enable swift.
+#
+# libswift_user   (user):   Set to www by default.
+# libswift_group  (group):  Set to www by default.
+# libswift_port   (num):    Port for daemon to listen on, 7777 by default.
+# libswift_dir    (string): Optional full path to streaming content directory.
+
+. /etc/rc.subr
+
+name=libswift
+rcvar=libswift_enable
+
+load_rc_config ${name}
+
+# defaults
+libswift_enable=${libswift_enable:-"NO"}
+libswift_user=${libswift_user:-"www"}
+libswift_port=${libswift_port:-"7777"}
+libswift_dir=${libswift_dir:-"/var/db/${name}"}
+libswift_options=${libswift_options:-" --dir ${libswift_dir} --listen ${libswift_port}"}
+
+# daemon
+
+libswift_pidfile="%%SWIFT_PIDDIR%%${name}.pid"
+procname="%%PREFIX%%/bin/${name}"
+
+command=/usr/sbin/daemon
+command_args=" -c -f -p ${libswift_pidfile} ${procname} ${libswift_flags} ${libswift_options}"
+
+start_precmd=libswift_precmd
+
+libswift_precmd()
+{
+	# create empty pidfile with correct permissions
+	install -o ${libswift_user} /dev/null ${libswift_pidfile}
+}
+
+run_rc_command "$1"

Added: head/net-p2p/libswift/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/libswift/pkg-descr	Wed Aug 17 18:10:01 2016	(r420360)
@@ -0,0 +1,9 @@
+LibSwift is the reference UDP-based implementation of IETF RFC7574,
+a multi-peer transport layer protocol. Its mission is to disseminate
+content among a swarm of peers.
+
+Given a root hash, the data is received from whatever source available
+and data integrity is checked cryptographically with Merkle hash
+trees.
+
+WWW: https://tools.ietf.org/html/rfc7574

Added: head/net-p2p/libswift/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net-p2p/libswift/pkg-plist	Wed Aug 17 18:10:01 2016	(r420360)
@@ -0,0 +1,3 @@
+bin/libswift
+ at dir(%%SWIFT_USER%%,%%SWIFT_GROUP%%,0750) %%SWIFT_PIDDIR%%
+ at dir(%%SWIFT_USER%%,%%SWIFT_GROUP%%,0755) %%SWIFT_SHAREDIR%%


More information about the svn-ports-all mailing list