mirror of
https://dev.iopsys.eu/feed/iopsys.git
synced 2025-12-10 07:44:50 +01:00
sulu-builder: add qrencode dependency for generating wifi qr code
This commit is contained in:
parent
b99d4413dc
commit
3636e217a6
4 changed files with 65 additions and 12 deletions
|
|
@ -5,11 +5,11 @@
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=sulu-base
|
PKG_NAME:=sulu-base
|
||||||
PKG_VERSION:=4.1.1
|
PKG_VERSION:=4.1.2
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/websdk/sulu.git
|
PKG_SOURCE_URL:=https://dev.iopsys.eu/websdk/sulu.git
|
||||||
PKG_SOURCE_VERSION:=eedd3e8b065a235a47eaf7373ca78031c12e90bc
|
PKG_SOURCE_VERSION:=9b10b746c4bd2f6b1ccbf2d1f334a0977f2bb482
|
||||||
PKG_MIRROR_HASH:=skip
|
PKG_MIRROR_HASH:=skip
|
||||||
|
|
||||||
SULU_MOD:=core
|
SULU_MOD:=core
|
||||||
|
|
|
||||||
|
|
@ -5,12 +5,12 @@
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=sulu-builder
|
PKG_NAME:=sulu-builder
|
||||||
PKG_VERSION:=4.1.1
|
PKG_VERSION:=4.1.2
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/websdk/sulu-builder.git
|
PKG_SOURCE_URL:=https://dev.iopsys.eu/websdk/sulu-builder.git
|
||||||
PKG_SOURCE_VERSION:=cad1aed9791e916ac99ef34b2b8314a4e50d0e46
|
PKG_SOURCE_VERSION:=958c6e85e770d1e3f7b394f16bdf8df47063e4d4
|
||||||
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION)
|
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION)
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
|
||||||
PKG_BUILD_DIR:=$(BUILD_DIR)/sulu-$(PKG_VERSION)/sulu-builder-$(PKG_SOURCE_VERSION)
|
PKG_BUILD_DIR:=$(BUILD_DIR)/sulu-$(PKG_VERSION)/sulu-builder-$(PKG_SOURCE_VERSION)
|
||||||
|
|
@ -28,7 +28,7 @@ define Package/sulu/default
|
||||||
CATEGORY:=Utilities
|
CATEGORY:=Utilities
|
||||||
SUBMENU:=SULU
|
SUBMENU:=SULU
|
||||||
TITLE:=SULU-CE
|
TITLE:=SULU-CE
|
||||||
DEPENDS:=+mosquitto-auth-shadow +usermngr +jq +userinterface +obuspa
|
DEPENDS:=+mosquitto-auth-shadow +usermngr +jq +userinterface +obuspa +qrencode
|
||||||
EXTRA_DEPENDS:=nginx
|
EXTRA_DEPENDS:=nginx
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,11 +8,10 @@ STOP=01
|
||||||
. /lib/functions.sh
|
. /lib/functions.sh
|
||||||
|
|
||||||
log() {
|
log() {
|
||||||
echo "${@}"|logger -t sulu.init -p debug
|
echo "${@}" | logger -t sulu.init -p debug
|
||||||
}
|
}
|
||||||
|
|
||||||
validate_sulu_global_section()
|
validate_sulu_global_section() {
|
||||||
{
|
|
||||||
uci_validate_section sulu global global \
|
uci_validate_section sulu global global \
|
||||||
'enabled:bool:1'
|
'enabled:bool:1'
|
||||||
}
|
}
|
||||||
|
|
@ -23,7 +22,7 @@ start_service() {
|
||||||
config_load sulu
|
config_load sulu
|
||||||
procd_open_instance sulu
|
procd_open_instance sulu
|
||||||
|
|
||||||
validate_sulu_global_section || return 0;
|
validate_sulu_global_section || return 0
|
||||||
# append sulu connection injection
|
# append sulu connection injection
|
||||||
if [ "${enabled}" -eq "0" ]; then
|
if [ "${enabled}" -eq "0" ]; then
|
||||||
procd_close_instance
|
procd_close_instance
|
||||||
|
|
@ -34,6 +33,7 @@ start_service() {
|
||||||
log "Reloading related services"
|
log "Reloading related services"
|
||||||
/etc/sulu/sulu.sh -r
|
/etc/sulu/sulu.sh -r
|
||||||
fi
|
fi
|
||||||
|
/etc/sulu/sulu.sh -q
|
||||||
procd_close_instance
|
procd_close_instance
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -42,7 +42,7 @@ reload_service() {
|
||||||
start update
|
start update
|
||||||
}
|
}
|
||||||
|
|
||||||
service_triggers()
|
service_triggers() {
|
||||||
{
|
|
||||||
procd_add_reload_trigger "sulu" "userinterface" "mosquitto"
|
procd_add_reload_trigger "sulu" "userinterface" "mosquitto"
|
||||||
|
procd_add_reload_trigger "config.change" "mapcontroller" /etc/sulu/sulu.sh -q
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@
|
||||||
|
|
||||||
. /lib/functions.sh
|
. /lib/functions.sh
|
||||||
. /usr/share/libubox/jshn.sh
|
. /usr/share/libubox/jshn.sh
|
||||||
|
. /lib/functions/iopsys-environment.sh
|
||||||
|
|
||||||
RESTART_REQ=0
|
RESTART_REQ=0
|
||||||
_RESTART_SERVICES="0"
|
_RESTART_SERVICES="0"
|
||||||
|
|
@ -214,17 +215,69 @@ function update_obuspa_config() {
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
generate_qr_code() {
|
||||||
|
local NA="UNKNOWN"
|
||||||
|
local TMP="/tmp/wifi_qr.svg"
|
||||||
|
local QR="/sulu/assets/QR.svg"
|
||||||
|
local SSID=""
|
||||||
|
local KEY=""
|
||||||
|
which qrencode || return
|
||||||
|
local PASS="$(get_user_password)"
|
||||||
|
if [ -z "$PASS" ]; then
|
||||||
|
PASS="$NA"
|
||||||
|
fi
|
||||||
|
get_ssid_and_key() {
|
||||||
|
local sec="$1"
|
||||||
|
local filter_vid="$2"
|
||||||
|
if [ "$SSID" != "" ]; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
config_get type "$sec" type
|
||||||
|
if [ "$type" != "fronthaul" ]; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
if [ "$filter_vid" = "1" ]; then
|
||||||
|
config_get vid "$sec" vid
|
||||||
|
if [ "$vid" != "1" ]; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
config_get ssid "$sec" ssid
|
||||||
|
config_get key "$sec" key
|
||||||
|
SSID="$ssid"
|
||||||
|
KEY="$key"
|
||||||
|
}
|
||||||
|
config_load mapcontroller
|
||||||
|
config_foreach get_ssid_and_key "ap" "0"
|
||||||
|
if [ "$SSID" == "" ]; then
|
||||||
|
config_foreach get_ssid_and_key "ap" "1"
|
||||||
|
fi
|
||||||
|
SSID=${SSID:-$NA}
|
||||||
|
KEY=${KEY:-$NA}
|
||||||
|
PASS=${PASS:-$NA}
|
||||||
|
qrencode -t svg -m 0 -o "$TMP" "WIFI:S:$SSID;T:WPA;P:$KEY;;GNX:U:user;Q:$PASS;;"
|
||||||
|
if [ "$(sha256sum "$TMP" | cut -d ' ' -f1)" != "$(sha256sum "$QR" | cut -d ' ' -f1)" ]; then
|
||||||
|
mv "$TMP" "$QR"
|
||||||
|
else
|
||||||
|
rm "$TMP"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
function configure_sulu() {
|
function configure_sulu() {
|
||||||
_create_mosquitto_acl
|
_create_mosquitto_acl
|
||||||
update_obuspa_config
|
update_obuspa_config
|
||||||
generate_sulu_conn_config
|
generate_sulu_conn_config
|
||||||
}
|
}
|
||||||
|
|
||||||
while getopts ":r" opt; do
|
while getopts ":rq" opt; do
|
||||||
case ${opt} in
|
case ${opt} in
|
||||||
r)
|
r)
|
||||||
_RESTART_SERVICES="1"
|
_RESTART_SERVICES="1"
|
||||||
;;
|
;;
|
||||||
|
q)
|
||||||
|
generate_qr_code
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
slog "Invalid option: ${OPTARG}"
|
slog "Invalid option: ${OPTARG}"
|
||||||
exit 1
|
exit 1
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue