netbird: new package
authorOskari Rauta <oskari.rauta@gmail.com>
Thu, 2 Feb 2023 13:06:08 +0000 (13:06 +0000)
committerJosef Schlehofer <pepe.schlehofer@gmail.com>
Mon, 25 Sep 2023 17:51:00 +0000 (19:51 +0200)
Netbird is similar vpn service as tailscale and zerotier.

Description:
NetBird is an open-source VPN management platform built on top of WireGuard® making it easy to create secure private networks for your organization or home.
It requires zero configuration effort leaving behind the hassle of opening ports, complex firewall rules, VPN gateways, and so forth.

Signed-off-by: Oskari Rauta <oskari.rauta@gmail.com>
(cherry picked from commit a4d8d2459aa4fc0de453b23c34355311366f8d3b)

net/netbird/Makefile [new file with mode: 0644]
net/netbird/files/netbird.init [new file with mode: 0755]

diff --git a/net/netbird/Makefile b/net/netbird/Makefile
new file mode 100644 (file)
index 0000000..5615572
--- /dev/null
@@ -0,0 +1,51 @@
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=netbird
+PKG_VERSION:=0.12.0
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://codeload.github.com/netbirdio/netbird/tar.gz/v$(PKG_VERSION)?
+PKG_HASH:=c88b65bb9358e5a6f9c34882e77a3414b02d4c5ac13b76fb2e60b952af6a18d7
+
+PKG_MAINTAINER:=Oskari Rauta <oskari.rauta@gmail.com>
+PKG_LICENSE:=BSD-3-Clause
+PKG_LICENSE_FILES:=LICENSE
+
+PKG_BUILD_DEPENDS:=golang/host
+PKG_BUILD_PARALLEL:=1
+PKG_USE_MIPS16:=0
+
+GO_PKG:=github.com/netbirdio/netbird
+GO_PKG_BUILD_PKG:=$(GO_PKG)/client
+GO_PKG_LDFLAGS_X:=$(GO_PKG)/client/system.version=$(PKG_VERSION)
+
+include $(INCLUDE_DIR)/package.mk
+include ../../lang/golang/golang-package.mk
+
+define Package/netbird
+  SECTION:=net
+  CATEGORY:=Network
+  SUBMENU:=VPN
+  TITLE:=Connect your devices into a single secure private WireGuard®-based mesh network
+  URL:=https://netbird.io
+  DEPENDS:=$(GO_ARCH_DEPENDS)
+endef
+
+define Package/netbird/description
+  NetBird is an open-source VPN management platform built on top of WireGuard® making it easy to create 
+  secure private networks for your organization or home.
+
+  It requires zero configuration effort leaving behind the hassle of opening ports, complex firewall rules, VPN 
+  gateways, and so forth.
+endef
+
+define Package/netbird/install
+       $(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR))
+       $(INSTALL_DIR) $(1)/usr/bin $(1)/etc/init.d
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/client $(1)/usr/bin/netbird
+       $(INSTALL_BIN) ./files/netbird.init $(1)/etc/init.d/netbird
+endef
+
+$(eval $(call GoBinPackage,netbird))
+$(eval $(call BuildPackage,netbird))
diff --git a/net/netbird/files/netbird.init b/net/netbird/files/netbird.init
new file mode 100755 (executable)
index 0000000..b7ccd2d
--- /dev/null
@@ -0,0 +1,14 @@
+#!/bin/sh /etc/rc.common
+
+START=99
+STOP=10
+
+USE_PROCD=1
+
+start_service() {
+       procd_open_instance
+       procd_set_param command /usr/bin/netbird
+       procd_append_param command service run
+       procd_set_param pidfile /var/run/netbird.pid
+       procd_close_instance
+}