nebula: update to 1.8.0

* https://github.com/slackhq/nebula/releases/tag/v1.8.0

Signed-off-by: Stan Grishin <stangri@melmac.ca>
This commit is contained in:
Stan Grishin 2023-12-10 17:45:43 +00:00
parent ec0ea77927
commit e9b04f32a4
2 changed files with 22 additions and 16 deletions

View file

@ -4,12 +4,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=nebula PKG_NAME:=nebula
PKG_VERSION:=1.7.2 PKG_VERSION:=1.8.0
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/slackhq/nebula/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/slackhq/nebula/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=c4771ce6eb3e142f88f5f4c12443cfca140bf96b2746c74f9536bd1a362f3f88 PKG_HASH:=678ad2bda47258cce8c2d14b3fa56d17c0ba4f894d75b75afab8937d64e12da7
PKG_MAINTAINER:=Stan Grishin <stangri@melmac.ca> PKG_MAINTAINER:=Stan Grishin <stangri@melmac.ca>
PKG_LICENSE:=MIT PKG_LICENSE:=MIT
@ -51,6 +51,9 @@ define Package/nebula-proto
TITLE:=nebula-proto TITLE:=nebula-proto
URL:=https://docs.openwrt.melmac.net/nebula/ URL:=https://docs.openwrt.melmac.net/nebula/
DEPENDS:=nebula DEPENDS:=nebula
DEPENDS+=+!BUSYBOX_DEFAULT_AWK:gawk
DEPENDS+=+!BUSYBOX_DEFAULT_GREP:grep
DEPENDS+=+!BUSYBOX_DEFAULT_SED:sed
PKGARCH:=all PKGARCH:=all
endef endef
@ -60,6 +63,8 @@ define Package/nebula-service
TITLE:=nebula-service TITLE:=nebula-service
URL:=https://docs.openwrt.melmac.net/nebula/ URL:=https://docs.openwrt.melmac.net/nebula/
DEPENDS:=nebula DEPENDS:=nebula
DEPENDS+=+!BUSYBOX_DEFAULT_AWK:gawk
DEPENDS+=+!BUSYBOX_DEFAULT_SED:sed
CONFLICTS:=nebula-proto CONFLICTS:=nebula-proto
PKGARCH:=all PKGARCH:=all
endef endef
@ -69,28 +74,28 @@ define Build/Compile
endef endef
define Package/nebula/description define Package/nebula/description
Nebula is a scalable overlay networking tool with a focus on performance, simplicity 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. and security. It lets you seamlessly connect computers anywhere in the world.
This package contains only nebula binary. Unless you want to start nebula manually, This package contains only nebula binary. Unless you want to start nebula manually,
you may want to also install *either* 'nebula-service' *or* 'nebula-proto' package. you may want to also install *either* 'nebula-service' *or* 'nebula-proto' package.
endef endef
define Package/nebula-cert/description define Package/nebula-cert/description
Nebula is a scalable overlay networking tool with a focus on performance, simplicity 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. and security. It lets you seamlessly connect computers anywhere in the world.
This package contains only nebula-cert binary. This package contains only nebula-cert binary.
endef endef
define Package/nebula-proto/description define Package/nebula-proto/description
Nebula is a scalable overlay networking tool with a focus on performance, simplicity 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. and security. It lets you seamlessly connect computers anywhere in the world.
This package contains only OpenWrt protocol/interface support for nebula. This package contains only OpenWrt protocol/interface support for nebula.
endef endef
define Package/nebula-service/description define Package/nebula-service/description
Nebula is a scalable overlay networking tool with a focus on performance, simplicity 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. and security. It lets you seamlessly connect computers anywhere in the world.
This package contains only OpenWrt-specific init.d script for nebula. This package contains only OpenWrt-specific init.d script for nebula.
endef endef
define Package/nebula/install define Package/nebula/install

View file

@ -49,6 +49,7 @@ proto_nebula_setup() {
[ -s "$config_file" ] || { log "Config file not found or empty!"; return 1; } [ -s "$config_file" ] || { log "Config file not found or empty!"; return 1; }
eval "$(yaml_parse "$config_file" "yaml_")" eval "$(yaml_parse "$config_file" "yaml_")"
yaml_tun_dev="${yaml_tun_dev%"${yaml_tun_dev##*[![:space:]]}"}"
[ "$yaml_tun_dev" = "$interface" ] || { log "Tunnel device in config file (${yaml_tun_dev}) doesn't match interface name (${interface})!"; return 1; } [ "$yaml_tun_dev" = "$interface" ] || { log "Tunnel device in config file (${yaml_tun_dev}) doesn't match interface name (${interface})!"; return 1; }
log "Setting up ${interface} from $(basename "$config_file")." log "Setting up ${interface} from $(basename "$config_file")."
@ -71,7 +72,7 @@ proto_nebula_setup() {
json_close_array json_close_array
proto_close_data proto_close_data
addresses="$(ip -4 a list dev "$interface" 2>/dev/null | grep inet | awk '{print $2}' | awk -F "/" '{print $1}')" addresses="$(ip -4 a list dev "$interface" 2>/dev/null | grep inet | awk '{print $2}' | awk -F "/" '{print $1}')"
log "Running ${interface} from $(basename "$config_file") with addresses: ${addresses}." log "Running ${interface} from $(basename "$config_file")${addresses+: with addresses: $addresses}."
for address in ${addresses}; do for address in ${addresses}; do
case "${address}" in case "${address}" in
*:*/*) *:*/*)