svn commit: r419383 - in head/net: . cjdns cjdns/files
Kurt Jaeger
pi at FreeBSD.org
Sun Jul 31 14:26:32 UTC 2016
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 at 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 at rawbw.com>
+# $FreeBSD$
+
+PORTNAME= cjdns
+PORTVERSION= 17.4
+DISTVERSIONPREFIX= cjdns-v
+CATEGORIES= net security
+
+MAINTAINER= yuri at 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
More information about the svn-ports-all
mailing list