summary refs log tree commit diff
path: root/os/etc/s6-rc/src/tinydm-srv
diff options
context:
space:
mode:
authorRobert Günzler <r@gnzler.io>2023-09-25 11:56:34 +0200
committerRobert Günzler <r@gnzler.io>2023-09-25 11:56:34 +0200
commitf5c219983c0f60a07f1bd52b6f6071e86f35455e (patch)
treeb7520a02b9822481f29aea4ccb404744a73414b1 /os/etc/s6-rc/src/tinydm-srv
parent91ba318df1ff9b04d08af373ae904f61a91bf489 (diff)
add os config
Signed-off-by: Robert Günzler <r@gnzler.io>
Diffstat (limited to 'os/etc/s6-rc/src/tinydm-srv')
-rw-r--r--os/etc/s6-rc/src/tinydm-srv/dependencies.d/seatd0
-rw-r--r--os/etc/s6-rc/src/tinydm-srv/dependencies.d/systemd-tmpfiles-setup0
-rw-r--r--os/etc/s6-rc/src/tinydm-srv/finish4
-rw-r--r--os/etc/s6-rc/src/tinydm-srv/finish-sh10
-rw-r--r--os/etc/s6-rc/src/tinydm-srv/producer-for1
-rw-r--r--os/etc/s6-rc/src/tinydm-srv/run9
-rw-r--r--os/etc/s6-rc/src/tinydm-srv/type1
7 files changed, 25 insertions, 0 deletions
diff --git a/os/etc/s6-rc/src/tinydm-srv/dependencies.d/seatd b/os/etc/s6-rc/src/tinydm-srv/dependencies.d/seatd
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/os/etc/s6-rc/src/tinydm-srv/dependencies.d/seatd
diff --git a/os/etc/s6-rc/src/tinydm-srv/dependencies.d/systemd-tmpfiles-setup b/os/etc/s6-rc/src/tinydm-srv/dependencies.d/systemd-tmpfiles-setup
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/os/etc/s6-rc/src/tinydm-srv/dependencies.d/systemd-tmpfiles-setup
diff --git a/os/etc/s6-rc/src/tinydm-srv/finish b/os/etc/s6-rc/src/tinydm-srv/finish
new file mode 100644
index 0000000..ae658da
--- /dev/null
+++ b/os/etc/s6-rc/src/tinydm-srv/finish
@@ -0,0 +1,4 @@
+#!/bin/execlineb -P
+redirfd -w 1 /dev/null
+redirfd -w 2 /dev/null
+exec sh /etc/s6-rc/src/tinydm-srv/finish-sh
diff --git a/os/etc/s6-rc/src/tinydm-srv/finish-sh b/os/etc/s6-rc/src/tinydm-srv/finish-sh
new file mode 100644
index 0000000..674de28
--- /dev/null
+++ b/os/etc/s6-rc/src/tinydm-srv/finish-sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+set -u
+
+pkill -f autologin
+
+for pid in $(pgrep -f marker); do
+	session=$(ps -o session= -p ${pid} | xargs)
+	[ -z "$session" ] && break
+	pkill -s ${session}
+done
diff --git a/os/etc/s6-rc/src/tinydm-srv/producer-for b/os/etc/s6-rc/src/tinydm-srv/producer-for
new file mode 100644
index 0000000..3930647
--- /dev/null
+++ b/os/etc/s6-rc/src/tinydm-srv/producer-for
@@ -0,0 +1 @@
+tinydm-log
diff --git a/os/etc/s6-rc/src/tinydm-srv/run b/os/etc/s6-rc/src/tinydm-srv/run
new file mode 100644
index 0000000..9a3f2e8
--- /dev/null
+++ b/os/etc/s6-rc/src/tinydm-srv/run
@@ -0,0 +1,9 @@
+#!/bin/execlineb -P
+
+redirfd -w 1 /dev/null
+redirfd -w 2 /dev/null
+
+envfile /etc/s6-rc/config/user.conf
+importas -ui USER USER
+
+exec /usr/bin/autologin ${USER} /usr/bin/tinydm-run-session
diff --git a/os/etc/s6-rc/src/tinydm-srv/type b/os/etc/s6-rc/src/tinydm-srv/type
new file mode 100644
index 0000000..5883cff
--- /dev/null
+++ b/os/etc/s6-rc/src/tinydm-srv/type
@@ -0,0 +1 @@
+longrun