]> git.plutz.net Git - blast/blobdiff - modules/nodm.mk
try to prevent nodm from restarting on shutdown
[blast] / modules / nodm.mk
index 17b3556be7e4c6c0e822e106971bff7d184f2250..a2d36622a5fb3f01fda84e497aa540133ae52cb9 100644 (file)
@@ -1,26 +1,49 @@
 ifdef raspi
-PACKAGES := ${PACKAGES} nodm xserver-xorg-video-fbturbo xserver-xorg-input-evdev
+  PACKAGES += nodm xserver-xorg-input-evdev libgl1-mesa-dri
 else
-PACKAGES := ${PACKAGES} nodm xserver-xorg-video-all xserver-xorg-input-all
+  PACKAGES += nodm xserver-xorg-video-all xserver-xorg-input-all libgl1-mesa-dri
 endif
 
+define DEBCONF +=
 
-define DEBCONF :=
-${DEBCONF}
 nodm   nodm/enabled    boolean true
 endef
 
 ifdef nodm_user
-_config: _nodm_user
-define DEBCONF :=
-${DEBCONF}
+  _config: _nodm_user _nodm_cfg
+define DEBCONF +=
+
 nodm   nodm/user       string  ${nodm_user}
 endef
+endif
+
+ifdef webui
+  _config: _nodm_cfg
+  ifdef raspi
+    nodm_browser := chromium-browser
+    PACKAGES += chromium-browser
+  else
+    nodm_browser := chromium
+    PACKAGES += chromium
+  endif
+define DEBCONF +=
 
+nodm   nodm/xsession   string  "/usr/bin/${nodm_browser} --app=${webui}"
+endef
 endif
 
-.PHONY: _nodm_user
-_nodm_user: ${CFGROOT}
+.PHONY: _nodm_user _nodm_cfg
+
+_nodm_cfg: ${CFGROOT}
+       sed -Ei 'TimeoutStopSec=2' "$${CFGROOT}/lib/systemd/system/nodm.service"
        rm "$${CFGROOT}/etc/default/nodm"
-       chroot "${CFGROOT}" dpkg-reconfigure --default-priority -u nodm
+       chroot "$${CFGROOT}" dpkg-reconfigure --default-priority -u nodm
+
+ifdef users
+  _nodm_user: _users
+endif
+
+_nodm_user: ${CFGROOT}
        chroot "${CFGROOT}" adduser "${nodm_user}" video
+       chroot "${CFGROOT}" adduser "${nodm_user}" input
+