summaryrefslogtreecommitdiffstats
path: root/build_tools/l7/larch0/profiles/xmini/rootoverlay/etc/X11/xinit/startx.custom
diff options
context:
space:
mode:
Diffstat (limited to 'build_tools/l7/larch0/profiles/xmini/rootoverlay/etc/X11/xinit/startx.custom')
-rw-r--r--build_tools/l7/larch0/profiles/xmini/rootoverlay/etc/X11/xinit/startx.custom18
1 files changed, 18 insertions, 0 deletions
diff --git a/build_tools/l7/larch0/profiles/xmini/rootoverlay/etc/X11/xinit/startx.custom b/build_tools/l7/larch0/profiles/xmini/rootoverlay/etc/X11/xinit/startx.custom
new file mode 100644
index 0000000..d24a70a
--- /dev/null
+++ b/build_tools/l7/larch0/profiles/xmini/rootoverlay/etc/X11/xinit/startx.custom
@@ -0,0 +1,18 @@
+if [ -z "$DISPLAY" ] && [ ! -f /tmp/_nox_ ] \
+ && echo $(tty) | grep "tty1" &>/dev/null; then
+ startx
+
+ # Maybe there should be some code here to handle a failed startx?
+
+ # The 'return' value is at /tmp/xlogout
+ # If there is nothing there, switch user to 'newuser'
+ # If there is also nothing there, login as root
+ # - if already root, fall through to terminal
+
+ if [ -f /tmp/xlogout ] || [ -f /tmp/newuser ]; then
+ logout
+ elif [ ${UID} -ne 0 ]; then
+ echo "root" >/tmp/newuser
+ logout
+ fi
+fi