git: c867da6a87bf - main - security/nebula: New port

Ashish SHUKLA ashish at FreeBSD.org
Tue Jun 29 19:29:00 UTC 2021


The branch main has been updated by ashish:

URL: https://cgit.FreeBSD.org/ports/commit/?id=c867da6a87bfd2d1625a7f8b768b3ed5f7c4db74

commit c867da6a87bfd2d1625a7f8b768b3ed5f7c4db74
Author:     Ashish SHUKLA <ashish at FreeBSD.org>
AuthorDate: 2021-06-29 19:25:29 +0000
Commit:     Ashish SHUKLA <ashish at FreeBSD.org>
CommitDate: 2021-06-29 19:25:29 +0000

    security/nebula: New port
    
    Nebula is a scalable overlay networking tool with
    a focus on performance, simplicity and security.
    It lets you seamlessly connect computers anywhere
    in the world. Nebula is portable, and runs on Linux,
    OSX, Windows, iOS, and Android. It can be used to
    connect a small number of computers, but is also
    able to connect tens of thousands of computers.
    
    WWW: https://github.com/slackhq/nebula
---
 security/Makefile               |  1 +
 security/nebula/Makefile        | 69 +++++++++++++++++++++++++++++++++++++
 security/nebula/distinfo        | 75 +++++++++++++++++++++++++++++++++++++++++
 security/nebula/files/nebula.in | 38 +++++++++++++++++++++
 security/nebula/pkg-descr       |  9 +++++
 5 files changed, 192 insertions(+)

diff --git a/security/Makefile b/security/Makefile
index 15d22cd1d391..9896760557b1 100644
--- a/security/Makefile
+++ b/security/Makefile
@@ -374,6 +374,7 @@
     SUBDIR += nacl
     SUBDIR += ncrack
     SUBDIR += ncrypt
+    SUBDIR += nebula
     SUBDIR += nettle
     SUBDIR += nextcloud-end_to_end_encryption
     SUBDIR += nextcloud-passman
diff --git a/security/nebula/Makefile b/security/nebula/Makefile
new file mode 100644
index 000000000000..7046f83135fc
--- /dev/null
+++ b/security/nebula/Makefile
@@ -0,0 +1,69 @@
+PORTNAME=	nebula
+DISTVERSIONPREFIX=	v
+DISTVERSION=	1.4.0
+CATEGORIES=	security
+
+MAINTAINER=	ashish at FreeBSD.org
+COMMENT=	Scalable overlay networking tool
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		go:modules
+USE_GITHUB=	yes
+GH_ACCOUNT=	slackhq
+GH_TUPLE=	\
+		anmitsu:go-shlex:648efa622239:anmitsu_go_shlex/vendor/github.com/anmitsu/go-shlex \
+		armon:go-radix:v1.0.0:armon_go_radix/vendor/github.com/armon/go-radix \
+		beorn7:perks:v1.0.1:beorn7_perks/vendor/github.com/beorn7/perks \
+		cespare:xxhash:v2.1.1:cespare_xxhash_v2/vendor/github.com/cespare/xxhash/v2 \
+		cyberdelia:go-metrics-graphite:39f87cc3b432:cyberdelia_go_metrics_graphite/vendor/github.com/cyberdelia/go-metrics-graphite \
+		davecgh:go-spew:v1.1.1:davecgh_go_spew/vendor/github.com/davecgh/go-spew \
+		flynn:go-shlex:3f9db97f8568:flynn_go_shlex/vendor/github.com/flynn/go-shlex \
+		flynn:noise:4bdb43be3117:flynn_noise/vendor/github.com/flynn/noise \
+		go-yaml:yaml:9f266ea9e77c:go_yaml_yaml_1/vendor/gopkg.in/yaml.v3 \
+		go-yaml:yaml:v2.2.7:go_yaml_yaml/vendor/gopkg.in/yaml.v2 \
+		gogo:protobuf:v1.3.2:gogo_protobuf/vendor/github.com/gogo/protobuf \
+		golang:crypto:0c34fe9e7dc2:golang_crypto/vendor/golang.org/x/crypto \
+		golang:net:e18ecbb05110:golang_net/vendor/golang.org/x/net \
+		golang:protobuf:v1.5.0:golang_protobuf/vendor/github.com/golang/protobuf \
+		golang:sys:f84b799fce68:golang_sys/vendor/golang.org/x/sys \
+		golang:term:7de9c90e9dd1:golang_term/vendor/golang.org/x/term \
+		google:gopacket:v1.1.19:google_gopacket/vendor/github.com/google/gopacket \
+		imdario:mergo:v0.3.8:imdario_mergo/vendor/github.com/imdario/mergo \
+		kardianos:service:v1.1.0:kardianos_service/vendor/github.com/kardianos/service \
+		konsorten:go-windows-terminal-sequences:v1.0.2:konsorten_go_windows_terminal_sequences/vendor/github.com/konsorten/go-windows-terminal-sequences \
+		matttproud:golang_protobuf_extensions:v1.0.1:matttproud_golang_protobuf_extensions/vendor/github.com/matttproud/golang_protobuf_extensions \
+		miekg:dns:v1.1.25:miekg_dns/vendor/github.com/miekg/dns \
+		nbrownus:go-metrics-prometheus:6e6d5173d99c:nbrownus_go_metrics_prometheus/vendor/github.com/nbrownus/go-metrics-prometheus \
+		pmezard:go-difflib:v1.0.0:pmezard_go_difflib/vendor/github.com/pmezard/go-difflib \
+		prometheus:client_golang:v1.2.1:prometheus_client_golang/vendor/github.com/prometheus/client_golang \
+		prometheus:client_model:d1d2010b5bee:prometheus_client_model/vendor/github.com/prometheus/client_model \
+		prometheus:common:v0.7.0:prometheus_common/vendor/github.com/prometheus/common \
+		prometheus:procfs:v0.0.8:prometheus_procfs/vendor/github.com/prometheus/procfs \
+		protocolbuffers:protobuf-go:v1.26.0:protocolbuffers_protobuf_go/vendor/google.golang.org/protobuf \
+		rcrowley:go-metrics:cac0b30c2563:rcrowley_go_metrics/vendor/github.com/rcrowley/go-metrics \
+		sirupsen:logrus:v1.4.2:sirupsen_logrus/vendor/github.com/sirupsen/logrus \
+		skip2:go-qrcode:da1b6568686e:skip2_go_qrcode/vendor/github.com/skip2/go-qrcode \
+		songgao:water:fd331bda3f4b:songgao_water/vendor/github.com/songgao/water \
+		stretchr:testify:v1.6.1:stretchr_testify/vendor/github.com/stretchr/testify \
+		vishvananda:netlink:00009fb8606a:vishvananda_netlink/vendor/github.com/vishvananda/netlink \
+		vishvananda:netns:0a2b9b5464df:vishvananda_netns/vendor/github.com/vishvananda/netns
+
+GO_TARGET=	./cmd/nebula ./cmd/nebula-cert
+USE_RC_SUBR=	${PORTNAME}
+PLIST_FILES=	bin/nebula \
+		bin/nebula-cert \
+		etc/${PORTNAME}/config.yml.example
+
+post-patch:
+	${REINPLACE_CMD} -e s,/etc/nebula,${PREFIX}/etc/${PORTNAME}, \
+		-e /dev:/s/nebula1/tun1/ \
+		${WRKSRC}/examples/config.yml
+
+post-install:
+	${MKDIR} ${STAGEDIR}${PREFIX}/etc/${PORTNAME}
+	${INSTALL_DATA} ${WRKSRC}/examples/config.yml \
+		${STAGEDIR}${PREFIX}/etc/${PORTNAME}/config.yml.example
+
+.include <bsd.port.mk>
diff --git a/security/nebula/distinfo b/security/nebula/distinfo
new file mode 100644
index 000000000000..91a8b80f0730
--- /dev/null
+++ b/security/nebula/distinfo
@@ -0,0 +1,75 @@
+TIMESTAMP = 1624985029
+SHA256 (slackhq-nebula-v1.4.0_GH0.tar.gz) = e8d79231f6100a2cd240d6a092d0dcc2bfccadffa83cb40e99b7328f6c75c2ec
+SIZE (slackhq-nebula-v1.4.0_GH0.tar.gz) = 165669
+SHA256 (anmitsu-go-shlex-648efa622239_GH0.tar.gz) = 516a11f3532d0dba519ecac7691a0b983b96f01b97795987aae9db5353bafdd4
+SIZE (anmitsu-go-shlex-648efa622239_GH0.tar.gz) = 3853
+SHA256 (armon-go-radix-v1.0.0_GH0.tar.gz) = 9e5238a553708bccf930d1f9d0ce62ce30d92602b64ea248585ce06ec7bfee17
+SIZE (armon-go-radix-v1.0.0_GH0.tar.gz) = 5975
+SHA256 (beorn7-perks-v1.0.1_GH0.tar.gz) = 98db84bb0224a26094e6adba91b7ee7a1a7ace28cb648d818f8e779e6a19f825
+SIZE (beorn7-perks-v1.0.1_GH0.tar.gz) = 10867
+SHA256 (cespare-xxhash-v2.1.1_GH0.tar.gz) = 0ee31178d2c5a1249be4e26294a2f428008dc4e1ecbbfbe47f74e41026df1148
+SIZE (cespare-xxhash-v2.1.1_GH0.tar.gz) = 9292
+SHA256 (cyberdelia-go-metrics-graphite-39f87cc3b432_GH0.tar.gz) = 702a9c872e66b4797c682cc7d455c2bde25ee8032ee9f68afb88a36d8901e2e0
+SIZE (cyberdelia-go-metrics-graphite-39f87cc3b432_GH0.tar.gz) = 3915
+SHA256 (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 7d82b9bb7291adbe7498fe946920ab3e7fc9e6cbfc3b2294693fad00bf0dd17e
+SIZE (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 42152
+SHA256 (flynn-go-shlex-3f9db97f8568_GH0.tar.gz) = fbe293093bb4dbb07985d7ee5f6cd975fe4065d7c7106d711cb48d6bf480c7e8
+SIZE (flynn-go-shlex-3f9db97f8568_GH0.tar.gz) = 7677
+SHA256 (flynn-noise-4bdb43be3117_GH0.tar.gz) = 4ac467d1b6c6c0c772d0cef800d4064fbf7ac1c40d29e1c12c7b332392972455
+SIZE (flynn-noise-4bdb43be3117_GH0.tar.gz) = 209646
+SHA256 (go-yaml-yaml-9f266ea9e77c_GH0.tar.gz) = 63efc9aabcbb56b2c9469927784fd67ecb3a79720c4fa754c511335a04156d04
+SIZE (go-yaml-yaml-9f266ea9e77c_GH0.tar.gz) = 86898
+SHA256 (go-yaml-yaml-v2.2.7_GH0.tar.gz) = 74afe4be0fa4482de73cfaf952dc6c8d41088b687c3f9de4a7ced86d2bbe0cb4
+SIZE (go-yaml-yaml-v2.2.7_GH0.tar.gz) = 72651
+SHA256 (gogo-protobuf-v1.3.2_GH0.tar.gz) = 2bb4b13d6e56b3911f09b8e9ddd15708477fbff8823c057cc79dd99c9a452b34
+SIZE (gogo-protobuf-v1.3.2_GH0.tar.gz) = 2038725
+SHA256 (golang-crypto-0c34fe9e7dc2_GH0.tar.gz) = deab6194c4b5d5ceefa40e8c7fc82a4288ff6e8577cdbde406e781c62624f491
+SIZE (golang-crypto-0c34fe9e7dc2_GH0.tar.gz) = 1726075
+SHA256 (golang-net-e18ecbb05110_GH0.tar.gz) = c30374f6fd34c6b77d53224aa3ba7458e3773d7e6e4fa16d88fb05c7d05e0e89
+SIZE (golang-net-e18ecbb05110_GH0.tar.gz) = 1253124
+SHA256 (golang-protobuf-v1.5.0_GH0.tar.gz) = 10bbe0880bb400a63944409f685c55a3f65adf4360caab0cae068c699a9c07fa
+SIZE (golang-protobuf-v1.5.0_GH0.tar.gz) = 171512
+SHA256 (golang-sys-f84b799fce68_GH0.tar.gz) = 460f5326b83bac46e12e1fd6ec1fed7ddba3756cdc9c9de7ba3f3226c588fa81
+SIZE (golang-sys-f84b799fce68_GH0.tar.gz) = 1087830
+SHA256 (golang-term-7de9c90e9dd1_GH0.tar.gz) = 73603eaab2ab2bfe05061d64ad09f8ed7469de6964a672398f7bf82cffb4b1da
+SIZE (golang-term-7de9c90e9dd1_GH0.tar.gz) = 15239
+SHA256 (google-gopacket-v1.1.19_GH0.tar.gz) = 31efa87cc9d2b41e5e66c7daa8839d841d2a43cc477bf595c9e8c24ef6903830
+SIZE (google-gopacket-v1.1.19_GH0.tar.gz) = 950745
+SHA256 (imdario-mergo-v0.3.8_GH0.tar.gz) = 8722e1280a333b1b17541dc05102200e1c9e8ee85f45fc66a4ba629b97a870e6
+SIZE (imdario-mergo-v0.3.8_GH0.tar.gz) = 18180
+SHA256 (kardianos-service-v1.1.0_GH0.tar.gz) = c25317a6d00aa14bdb01e545230109d8acac404b4d5c0cb60d28580b5440d94d
+SIZE (kardianos-service-v1.1.0_GH0.tar.gz) = 24360
+SHA256 (konsorten-go-windows-terminal-sequences-v1.0.2_GH0.tar.gz) = e61f6422c7d1222c4c642b9134e5a4576a89ff651ef947487faa8ef33b6b4cfe
+SIZE (konsorten-go-windows-terminal-sequences-v1.0.2_GH0.tar.gz) = 1987
+SHA256 (matttproud-golang_protobuf_extensions-v1.0.1_GH0.tar.gz) = 2def0ee6f6b12b1efc0e3007d89f598608a072610e805c3655ea9d13c3ead49b
+SIZE (matttproud-golang_protobuf_extensions-v1.0.1_GH0.tar.gz) = 37184
+SHA256 (miekg-dns-v1.1.25_GH0.tar.gz) = e94ac821ccdcb32dd227af714b7fa9ce03d307d23f8818352ef2d571dc60e3cd
+SIZE (miekg-dns-v1.1.25_GH0.tar.gz) = 179389
+SHA256 (nbrownus-go-metrics-prometheus-6e6d5173d99c_GH0.tar.gz) = 39a7479e4d71377c7b06a12d5213d79e9178947929239232d0ad56f4cfe9fcc1
+SIZE (nbrownus-go-metrics-prometheus-6e6d5173d99c_GH0.tar.gz) = 6543
+SHA256 (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 28f3dc1b5c0efd61203ab07233f774740d3bf08da4d8153fb5310db6cea0ebda
+SIZE (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 11398
+SHA256 (prometheus-client_golang-v1.2.1_GH0.tar.gz) = fe6a626322d22d8ce9780320fd04a64a90c9a7aa62ec88809651072b30a10e6a
+SIZE (prometheus-client_golang-v1.2.1_GH0.tar.gz) = 142465
+SHA256 (prometheus-client_model-d1d2010b5bee_GH0.tar.gz) = 4bbf143b7127ff4cb458219e651dab7fb7607c0a716ad77b727c68b2f1406a69
+SIZE (prometheus-client_model-d1d2010b5bee_GH0.tar.gz) = 10525
+SHA256 (prometheus-common-v0.7.0_GH0.tar.gz) = 71b1dce2afd959f9fcab3b5e097dfa9d398a61749851d290114746a3f8f119ae
+SIZE (prometheus-common-v0.7.0_GH0.tar.gz) = 100520
+SHA256 (prometheus-procfs-v0.0.8_GH0.tar.gz) = 1c26c8b86a9b1902684f860f94d0bf4b94abcc570e456bf9a74d1c9d83643872
+SIZE (prometheus-procfs-v0.0.8_GH0.tar.gz) = 126299
+SHA256 (protocolbuffers-protobuf-go-v1.26.0_GH0.tar.gz) = 26218474bcf776ecf32d7d194c6bfaca8e7b4f0c087e5b595fd50fbb31409676
+SIZE (protocolbuffers-protobuf-go-v1.26.0_GH0.tar.gz) = 1270215
+SHA256 (rcrowley-go-metrics-cac0b30c2563_GH0.tar.gz) = d509efdc86ad876288937eeec07ac73c0d72a65dbf507984a40f927aac5e91cc
+SIZE (rcrowley-go-metrics-cac0b30c2563_GH0.tar.gz) = 37569
+SHA256 (sirupsen-logrus-v1.4.2_GH0.tar.gz) = 67f2ddf467b7e63d2d2529d227946a331e245aeef7e2e4521ae82647b5ef84d9
+SIZE (sirupsen-logrus-v1.4.2_GH0.tar.gz) = 41373
+SHA256 (skip2-go-qrcode-da1b6568686e_GH0.tar.gz) = af179c37da861a43242fb4383186724b34866d7b5bd3e54ca44031a2b9f92046
+SIZE (skip2-go-qrcode-da1b6568686e_GH0.tar.gz) = 36693
+SHA256 (songgao-water-fd331bda3f4b_GH0.tar.gz) = fa222380bb34071fa51cf2d5cf2ece74e9df7b656b38bb027552bf1cf6a6d0e6
+SIZE (songgao-water-fd331bda3f4b_GH0.tar.gz) = 17081
+SHA256 (stretchr-testify-v1.6.1_GH0.tar.gz) = 40fd7204ab72ca9d8759f1cc3604dd17f556a0f9177f6fc05dd0cad9f06e708f
+SIZE (stretchr-testify-v1.6.1_GH0.tar.gz) = 84215
+SHA256 (vishvananda-netlink-00009fb8606a_GH0.tar.gz) = e160b9f3eabb53a031fdf74e04e9c7b6083999d848109384cafe9e4858adccfc
+SIZE (vishvananda-netlink-00009fb8606a_GH0.tar.gz) = 138016
+SHA256 (vishvananda-netns-0a2b9b5464df_GH0.tar.gz) = 15f89c51e1daf9b0c24d80ad38a2dbbec2efd7214e36120dc1383702387ec679
+SIZE (vishvananda-netns-0a2b9b5464df_GH0.tar.gz) = 8004
diff --git a/security/nebula/files/nebula.in b/security/nebula/files/nebula.in
new file mode 100644
index 000000000000..1d45660db6c6
--- /dev/null
+++ b/security/nebula/files/nebula.in
@@ -0,0 +1,38 @@
+#!/bin/sh 
+
+# PROVIDE: caddy
+# REQUIRE: LOGIN DAEMON NETWORKING
+# KEYWORD: shutdown
+
+# To enable nebula, add 'nebula_enable="YES"' to /etc/rc.conf or
+# /etc/rc.conf.local
+
+# Optional settings:
+# nebula_config (string):   Full path to nebula configuration file
+#			    (%%PREFIX%%/etc/nebula/config.yml)
+# nebula_logfile (string):   Full path to nebula log file
+#			    (/var/log/nebula.log)
+
+. /etc/rc.subr 
+
+name="nebula"
+rcvar="nebula_enable"
+desc="Scalable overlay networking tool with a focus on performance, simplicity and security"
+
+load_rc_config $name 
+
+# Defaults
+: ${nebula_enable:=NO}
+: ${nebula_config:=%%PREFIX%%/etc/nebula/config.yml}
+: ${nebula_logfile:=/var/log/nebula.log}
+
+command="/usr/sbin/daemon"
+actual_command="%%PREFIX%%/bin/nebula"
+command_args="-c -t nebula -o ${nebula_logfile} ${actual_command} -config ${nebula_config}"
+
+required_files="${nebula_config} ${command}"
+
+extra_commands="configtest"
+configtest_cmd="${actual_command} -test -config ${nebula_config}"
+
+run_rc_command "$1"
diff --git a/security/nebula/pkg-descr b/security/nebula/pkg-descr
new file mode 100644
index 000000000000..bc44bd160977
--- /dev/null
+++ b/security/nebula/pkg-descr
@@ -0,0 +1,9 @@
+Nebula is a scalable overlay networking tool with
+a focus on performance, simplicity and security.
+It lets you seamlessly connect computers anywhere
+in the world. Nebula is portable, and runs on Linux,
+OSX, Windows, iOS, and Android. It can be used to
+connect a small number of computers, but is also
+able to connect tens of thousands of computers.
+
+WWW: https://github.com/slackhq/nebula


More information about the dev-commits-ports-main mailing list