mirror of
https://github.com/riptidewave93/UNVR-NAS.git
synced 2025-02-12 10:31:55 +00:00
fix: migrate UNVR init logic
Let's keep ulcmd for the pro only, and move LED stuff elsewhere.
This commit is contained in:
parent
24d98456e6
commit
6f01afd72b
5 changed files with 26 additions and 29 deletions
|
@ -1,5 +1,5 @@
|
|||
[Unit]
|
||||
Description=Unifi LED/ULCMD contoller
|
||||
Description=Unifi ULCMD contoller
|
||||
Requires=ubnt-init.service
|
||||
Requires=mock-ubnt-api.service
|
||||
|
||||
|
|
|
@ -11,10 +11,18 @@ case "$1" in
|
|||
|
||||
# Setup bluetooth hci0 device
|
||||
/usr/lib/init/boot/ubnt-bt.sh hci0
|
||||
|
||||
# If UNVR, turn on LED
|
||||
if [ -f "/sys/class/leds/ulogo_ctrl/pattern" ]; then
|
||||
# Set boot LED to blue
|
||||
# 2=white, 1=blue, 0=off, needs a value set with :x for ms
|
||||
echo 1:500 > /sys/class/leds/ulogo_ctrl/pattern
|
||||
fi
|
||||
;;
|
||||
stop)
|
||||
# Tear down BT
|
||||
hciconfig hci0 down
|
||||
# LED shutdown on UNVR4 is done via systemd/system-shutdown/unifi-shutdown
|
||||
;;
|
||||
*)
|
||||
echo "Invalid command $1"
|
||||
|
|
|
@ -1,29 +1,16 @@
|
|||
#!/bin/bash
|
||||
|
||||
# ULCMD wrapper, used to start ulcmd on the UNVR Pro, or setup the status LED on the UNVR-4
|
||||
# ULCMD wrapper, used to start ulcmd on the UNVR Pro
|
||||
|
||||
case "$(ubnteeprom -systeminfo -key shortname)" in
|
||||
"UNVRPRO")
|
||||
# Ensure our tmp file with info is generated
|
||||
ubnteeprom -systeminfo > /tmp/.ubnthal_system_info
|
||||
# Is ulcmd running already? if so, assume it was not done via systemd so let's
|
||||
# kill and respawn as this is our systemd entry script for the service, and we
|
||||
# need to have it foregrounded as we act as the "daemon" here.
|
||||
if pidof -q ulcmd; then
|
||||
killall ulcmd
|
||||
fi
|
||||
# Restart ulcmd
|
||||
exec ulcmd
|
||||
;;
|
||||
"UNVR4")
|
||||
# 2=white, 1=blue, 0=off, needs a value set with :x for ms
|
||||
echo 1:500 > /sys/class/leds/ulogo_ctrl/pattern
|
||||
# Start our "daemon" loop so systemd stays happy
|
||||
while true; do
|
||||
sleep 3600
|
||||
done
|
||||
;;
|
||||
*)
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
# Ensure our tmp file with info is generated for our patched ulcmd
|
||||
ubnteeprom -systeminfo > /tmp/.ubnthal_system_info
|
||||
|
||||
# Is ulcmd running already? if so, assume it was not done via systemd so let's
|
||||
# kill and respawn as this is our systemd entry script for the service, and we
|
||||
# need to have it foregrounded as we act as the "daemon" here.
|
||||
if pidof -q ulcmd; then
|
||||
killall ulcmd
|
||||
fi
|
||||
|
||||
# Start ulcmd
|
||||
exec ulcmd
|
||||
|
|
|
@ -21,11 +21,11 @@ apt-mark hold linux-image-* # We do not want these, as we run our own kernel!
|
|||
# Setup our services
|
||||
systemctl enable ubnt-init
|
||||
systemctl enable unvr-fan-daemon
|
||||
systemctl enable ulcmd # This runs ubnt-ulcmd.sh!
|
||||
|
||||
# Do we have ulcmd? if so, we are UNVRPRO so enable ulcmd services
|
||||
if [ -f "/usr/bin/ulcmd" ]; then
|
||||
systemctl enable mock-ubnt-api
|
||||
systemctl enable ulcmd
|
||||
systemctl enable ulcmd-reboot-hook
|
||||
systemctl enable ulcmd-shutdown-hook
|
||||
fi
|
||||
|
|
|
@ -63,12 +63,14 @@ else
|
|||
# Remove UNVRPRO specific files/services
|
||||
rm "${build_path}/rootfs/etc/ld.so.conf.d/ubnt.conf" \
|
||||
"${build_path}/rootfs/etc/systemd/system/mock-ubnt-api.service" \
|
||||
"${build_path}/rootfs/etc/systemd/system/ulcmd.service" \
|
||||
"${build_path}/rootfs/etc/systemd/system/ulcmd-reboot-hook.service" \
|
||||
"${build_path}/rootfs/etc/systemd/system/ulcmd-shutdown-hook.service" \
|
||||
"${build_path}/rootfs/usr/bin/mock-ubnt-api" \
|
||||
"${build_path}/rootfs/usr/bin/ubnt-systool" \
|
||||
"${build_path}/rootfs/usr/bin/ubnt-tools" \
|
||||
"${build_path}/rootfs/usr/bin/ustorage"
|
||||
"${build_path}/rootfs/usr/bin/ustorage" \
|
||||
"${build_path}/rootfs/usr/lib/init/boot/ubnt-ulcmd.sh"
|
||||
fi
|
||||
|
||||
# Copy over bluetooth firmware files
|
||||
|
|
Loading…
Reference in a new issue