diff options
| author | Hannu Nyman <hannu.nyman@iki.fi> | 2019-03-24 10:08:18 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-03-24 10:08:18 +0200 |
| commit | 80f2556eb23b9e61c4eb34df134c0cf0b970c97a (patch) | |
| tree | 6cd6499cf5f6d1a411cf4362cd40cdacc0d6a588 | |
| parent | 594a884c2d6dbfeaa64705f34f17131bb900e952 (diff) | |
| parent | 29c341684f6a68dece59a00ce0bac463c6cef8ed (diff) | |
Merge pull request #8479 from wfleurant/ygg-init-nodeinfo
yggdrasil: fix startup and generate nodeInfo info
| -rw-r--r-- | net/yggdrasil/Makefile | 2 | ||||
| -rw-r--r-- | net/yggdrasil/files/yggdrasil.defaults | 37 | ||||
| -rwxr-xr-x | net/yggdrasil/files/yggdrasil.init | 1 |
3 files changed, 37 insertions, 3 deletions
diff --git a/net/yggdrasil/Makefile b/net/yggdrasil/Makefile index ae1afc6bf..9c35acec2 100644 --- a/net/yggdrasil/Makefile +++ b/net/yggdrasil/Makefile @@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=yggdrasil PKG_VERSION:=0.3.5 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_SOURCE_URL:=https://codeload.github.com/yggdrasil-network/yggdrasil-go/tar.gz/v$(PKG_VERSION)? PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz diff --git a/net/yggdrasil/files/yggdrasil.defaults b/net/yggdrasil/files/yggdrasil.defaults index 2f2bb1dba..368750013 100644 --- a/net/yggdrasil/files/yggdrasil.defaults +++ b/net/yggdrasil/files/yggdrasil.defaults @@ -2,9 +2,42 @@ yggConfig="/etc/yggdrasil.conf" +first_boot_genConfig() +{ + . /usr/share/libubox/jshn.sh + boardcfg=$(ubus call system board) + yggcfg=$(yggdrasil -genconf -json | grep NodeInfo -v) + + json_load "$boardcfg" + json_get_var kernel kernel + json_get_var hostname hostname + json_get_var system system + json_get_var model model + json_get_var board_name board_name + + json_load "$yggcfg" + json_add_string "IfName" "ygg0" + json_add_object "NodeInfo" + json_add_string "kernel" "$kernel" + json_add_string "hostname" "$hostname" + json_add_string "system" "$system" + json_add_string "model" "$model" + json_add_string "board_name" "$board_name" + json_close_object + json_dump +} + if [ ! -e ${yggConfig} ]; then + echo "first_boot: adding system board details to NodeInfo[] in NEW config: ${yggConfig}" | logger -t yggdrasil - yggdrasil -genconf -json > ${yggConfig} + first_boot_genConfig > ${yggConfig} + + # create the network interface + uci -q batch <<-EOF >/dev/null + set network.yggdrasil=interface + set network.yggdrasil.ifname=ygg0 + set network.yggdrasil.proto=none +EOF # create the firewall zone uci -q batch <<-EOF >/dev/null @@ -58,6 +91,8 @@ EOF set firewall.@rule[-1].target=ACCEPT EOF + uci commit firewall + uci commit network else : diff --git a/net/yggdrasil/files/yggdrasil.init b/net/yggdrasil/files/yggdrasil.init index 82c209b4e..afdcdb433 100755 --- a/net/yggdrasil/files/yggdrasil.init +++ b/net/yggdrasil/files/yggdrasil.init @@ -11,7 +11,6 @@ start_service() procd_open_instance procd_set_param respawn - procd_set_param command /usr/sbin/yggdrasil -useconffile /etc/yggdrasil.conf procd_set_param command /bin/ash -c "/usr/sbin/yggdrasil -useconffile /etc/yggdrasil.conf | logger -t yggdrasil" procd_close_instance |
