package/seatd: install init scripts

Add commands to the seatd package to install the systemd unit included
in the source tarball and a SysV init script, and ensure that the
"video" group gets created.

Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
[yann.morin.1998@free.fr:
  - model the init script after package/busybox/S01syslogd
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Adrian Perez de Castro 2021-05-18 16:54:21 +03:00 committed by Yann E. MORIN
parent daae311490
commit 60cee128c7
2 changed files with 61 additions and 0 deletions
package/seatd

46
package/seatd/S70seatd Executable file
View File

@ -0,0 +1,46 @@
#! /bin/sh
DAEMON="seatd"
DAEMON_EXE="/usr/bin/${DAEMON}"
PIDFILE="/run/${DAEMON}.pid"
start() {
printf 'Starting %s: ' "${DAEMON}"
start-stop-daemon -S -x "${DAEMON_EXE}" -p "${PIDFILE}" -m -b -- -g video
status=$?
if [ "$status" -eq 0 ]; then
echo OK
else
echo FAIL
fi
return "$status"
}
stop() {
printf 'Stopping %s: ' "${DAEMON}"
start-stop-daemon -K -x "${DAEMON_EXE}" -p "${PIDFILE}"
status=$?
if [ "$status" -eq 0 ]; then
echo OK
else
echo FAIL
fi
return "$status"
}
restart() {
stop
sleep 1
start
}
case "${1}" in
start|stop|restart)
"${1}";;
reload)
restart;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac

View File

@ -30,6 +30,21 @@ endif
ifeq ($(BR2_PACKAGE_SEATD_DAEMON),y)
SEATD_CONF_OPTS += -Dseatd=enabled -Dserver=enabled
define SEATD_USERS
- - video -1 - - - - -
endef
define SEATD_INSTALL_INIT_SYSV
$(INSTALL) -m 0755 -D $(SEATD_PKGDIR)/S70seatd \
$(TARGET_DIR)/etc/init.d/S70seatd
endef
define SEATD_INSTALL_INIT_SYSTEMD
$(INSTALL) -m 0644 -D $(@D)/contrib/systemd/seatd.service \
$(TARGET_DIR)/usr/lib/systemd/system/seatd.service
endef
else
SEATD_CONF_OPTS += -Dseatd=disabled -Dserver=disabled
endif