From: John Crispin Date: Mon, 18 Aug 2014 13:09:17 +0000 (+0000) Subject: base-files: add a hardware detection layer X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=562d9f958290acd4323b24fbecfec43514b392e9;p=openwrt%2Fstaging%2Frobimarko.git base-files: add a hardware detection layer this allows targets to use the new uci-default helper which will generate a file called /etc/board.json. a tool called /bin/config_generate can then be used to generate the default uci settings. Signed-off-by: John Crispin SVN-Revision: 42185 --- diff --git a/package/base-files/files/bin/board_detect b/package/base-files/files/bin/board_detect new file mode 100755 index 0000000000..ddd17a1633 --- /dev/null +++ b/package/base-files/files/bin/board_detect @@ -0,0 +1,14 @@ +#!/bin/sh + +[ -d "/etc/board.d/" -a ! -f "/etc/board.json" ] || { + for a in `ls /etc/board.d/*`; do + [ -x $a ] || continue; + $(. $a) + done +} + +[ -f "/etc/board.json" ] || return 1 +[ -f "/etc/config/network" ] || { + touch /etc/config/network + /bin/config_generate +} diff --git a/package/base-files/files/bin/config_generate b/package/base-files/files/bin/config_generate new file mode 100755 index 0000000000..c435e7bb43 --- /dev/null +++ b/package/base-files/files/bin/config_generate @@ -0,0 +1,173 @@ +#!/bin/sh + +CFG=/etc/board.json + +. /usr/share/libubox/jshn.sh + +[ -f $CFG ] || exit 1 + +generate_static_network() { + uci -q batch < /tmp/.board.json + mv /tmp/.board.json ${CFG} +}