Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 31 Jul 2016 14:26:31 +0000 (UTC)
From:      Kurt Jaeger <pi@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r419383 - in head/net: . cjdns cjdns/files
Message-ID:  <201607311426.u6VEQVGL096462@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: pi
Date: Sun Jul 31 14:26:30 2016
New Revision: 419383
URL: https://svnweb.freebsd.org/changeset/ports/419383

Log:
  New port: net/cjdns
  
  Cjdns implements an encrypted IPv6 network using public-key cryptography for
  address allocation and a distributed hash table for routing. This provides
  near-zero-configuration networking, and prevents many of the security and
  scalability issues that plague existing networks.
  
  WWW: https://github.com/cjdelisle/cjdns
  
  PR:		210730
  Submitted by:	Yuri Victorovich <yuri@rawbw.com>

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

Modified: head/net/Makefile
==============================================================================
--- head/net/Makefile	Sun Jul 31 14:26:04 2016	(r419382)
+++ head/net/Makefile	Sun Jul 31 14:26:30 2016	(r419383)
@@ -68,6 +68,7 @@
     SUBDIR += cf
     SUBDIR += chrony
     SUBDIR += citrix_ica
+    SUBDIR += cjdns
     SUBDIR += clamz
     SUBDIR += cloud-init
     SUBDIR += clusterit

Added: head/net/cjdns/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net/cjdns/Makefile	Sun Jul 31 14:26:30 2016	(r419383)
@@ -0,0 +1,42 @@
+# Created by: Yuri Victorovich <yuri@rawbw.com>
+# $FreeBSD$
+
+PORTNAME=	cjdns
+PORTVERSION=	17.4
+DISTVERSIONPREFIX=	cjdns-v
+CATEGORIES=	net security
+
+MAINTAINER=	yuri@rawbw.com
+COMMENT=	Routing engine designed for security, scalability, speed
+
+LICENSE=	GPLv3
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	node:www/node \
+		bash:shells/bash
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	cjdelisle
+
+USES=		gmake python
+USE_RC_SUBR=	cjdns
+SUB_FILES=	cjdns pkg-message
+SUB_LIST=	LOCALBASE=${LOCALBASE}
+PLIST_FILES=	bin/cjdroute bin/run-cjdroute man/man5/cjdroute.conf.5.gz
+
+post-patch:
+	@${REINPLACE_CMD} -i '' -e 's|/etc/|${LOCALBASE}/etc/|g' \
+		${WRKSRC}/contrib/sh/run-cjdroute.sh
+
+do-build:
+	cd ${WRKSRC} && ./do
+
+do-install:
+	${INSTALL_PROGRAM} ${WRKSRC}/cjdroute ${STAGEDIR}${PREFIX}/bin
+	${INSTALL_SCRIPT} ${WRKSRC}/contrib/sh/run-cjdroute.sh ${STAGEDIR}${PREFIX}/bin/run-cjdroute
+	${INSTALL_MAN} ${WRKSRC}/doc/man/cjdroute.conf.5 ${STAGEDIR}${MANPREFIX}/man/man5
+
+do-test:
+	${WRKSRC}/cjdroute --bench
+
+.include <bsd.port.mk>

Added: head/net/cjdns/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net/cjdns/distinfo	Sun Jul 31 14:26:30 2016	(r419383)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1467325399
+SHA256 (cjdelisle-cjdns-cjdns-v17.4_GH0.tar.gz) = 2f30aa4d2cc96a6c1f00e873df19b7b213cca1af716d74a091f59aa98b5758c4
+SIZE (cjdelisle-cjdns-cjdns-v17.4_GH0.tar.gz) = 3955198

Added: head/net/cjdns/files/cjdns.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net/cjdns/files/cjdns.in	Sun Jul 31 14:26:30 2016	(r419383)
@@ -0,0 +1,23 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+# PROVIDE: cjdns
+# REQUIRE: LOGIN
+
+. /etc/rc.subr
+
+name="cjdns"
+rcvar=cjdns_enable
+command="%%PREFIX%%/bin/cjdroute"
+command_args="< %%PREFIX%%/etc/cjdroute.conf"
+
+if expr "$1" : ".*start" > /dev/null && ! [ -r %%PREFIX%%/etc/cjdroute.conf ]; then
+  %%PREFIX%%/bin/cjdroute --genconf > %%PREFIX%%/etc/cjdroute.conf &&
+  echo "$name: (!!!) generated the initial config file %%PREFIX%%/etc/cjdroute.conf" &&
+  echo "$name: (!!!) keep this file secret because it contains your secret key"
+  chmod 0600 %%PREFIX%%/etc/cjdroute.conf
+fi
+
+load_rc_config $name
+run_rc_command "$1"

Added: head/net/cjdns/files/pkg-message.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net/cjdns/files/pkg-message.in	Sun Jul 31 14:26:30 2016	(r419383)
@@ -0,0 +1,38 @@
+======================================================================
+You installed CJDNS: IPv6 routing engine
+
+It is recommended to run CJDNS as a service:
+# sysrc cjdns_enable="YES"
+# service cjdns start
+
+When started the first time, CJDNS will create the config file
+%%PREFIX%%/etc/cjdroute.conf that you should edit to make CJDNS connected:
+* You may want to add some nodes to connect to the section "connectTo"
+  from some of these sites:
+  * https://pad.meshwith.me/p/public
+  * http://cjdns.me/
+  * https://github.com/hyperboria/peers
+* You may want to uncomment "tunDevice" to make CJDNS always use the same
+  tun device.
+
+In order to be able to open IPv6 websites available through CJDNS network
+that you connect to, you need to add the IPv6 default route:
+# route -6 add default fc00::1
+
+In order to create an IPv4 or IPv6 VPN, on the server in the section
+ipTunnel/allowedConnections of the config file you need to add the public
+keys of the clients, and to define the VPN network. On the clients you
+only need to add the public key of the server in the section
+ipTunnel/outgoingConnections. You may also need to bridge the tunN
+interface on the server to connect the segments of the VPN network.
+
+Here are some websites on CJDNS Hyperboria network:
+* http://socialno.de/ - social network
+* https://rows.io/ - Jabber server
+* http://forum.meshbits.io/ - forums
+* http://h.fc00.org/ - network map
+
+Warning: When CJDNS daemon is connected to outside network, tunN
+interface will generally directly expose your computer to that network,
+bypassing the regular firewall that you normally use.
+======================================================================

Added: head/net/cjdns/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/net/cjdns/pkg-descr	Sun Jul 31 14:26:30 2016	(r419383)
@@ -0,0 +1,6 @@
+Cjdns implements an encrypted IPv6 network using public-key cryptography for
+address allocation and a distributed hash table for routing. This provides
+near-zero-configuration networking, and prevents many of the security and
+scalability issues that plague existing networks.
+
+WWW: https://github.com/cjdelisle/cjdns



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201607311426.u6VEQVGL096462>