@@ -4,6 +4,13 @@ FROM linuxserver/steamos:latest as stage1
44ENV LANG=C \
55 container=docker
66
7+ # drop stuff we don't need from the base image
8+ RUN \
9+ userdel abc && \
10+ userdel kasm-user && \
11+ rm -rf /etc/s6-overlay /config && \
12+ pacman --noconfirm -R x11vnc sunshine sunshine-debug nginx
13+
714# update packages
815RUN \
916 echo "# <file system> <mount pt> <type> <options> <dump> <pass>" >\
@@ -41,15 +48,23 @@ RUN systemctl set-default graphical.target && \
4148 steamos-install-steamcl steamos-install-grub etc.mount
4249
4350# add skiff core user
44- RUN useradd -m core && \
51+ RUN \
52+ useradd -m core && \
4553 printf "# skiff core user\n core ALL=(ALL) NOPASSWD: ALL\n " > /etc/sudoers.d/10-skiff-core && \
4654 chmod 0400 /etc/sudoers.d/10-skiff-core && \
4755 visudo -c -f /etc/sudoers.d/10-skiff-core && \
4856 groupadd nopasswdlogin && \
57+ passwd -d core && \
4958 usermod -aG nopasswdlogin core && \
5059 printf "[Autologin]\n User=core\n Session=plasma.desktop\n Relogin=false\n\n [General]\n NumlockOnWaylandEnable=true" | sudo tee /etc/sddm.conf.d/10-autologin.conf && \
5160 sed -i '0,/^[^#]/s//auth sufficient pam_succeed_if.so user ingroup nopasswdlogin\n &/' /etc/pam.d/sddm-autologin && \
52- printf "[Unit]\n Description=Fix Steam directory permissions\n After=graphical.target\n\n [Service]\n Type=oneshot\n ExecStart=/bin/chown core:core /home/core/.local/ /home/core/.local/share /home/core/.local/share/Steam\n\n [Install]\n WantedBy=graphical.target" | sudo tee /etc/systemd/system/fix-steam-perms.service && sudo systemctl enable fix-steam-perms.service
61+ printf "[Unit]\n Description=Fix Steam directory permissions\n After=graphical.target\n\n [Service]\n Type=oneshot\n ExecStart=/bin/chown core:core /home/core/.local/ /home/core/.local/share /home/core/.local/share/Steam\n\n [Install]\n WantedBy=graphical.target" | sudo tee /etc/systemd/system/fix-steam-perms.service && sudo systemctl enable fix-steam-perms.service && \
62+ printf '[Desktop Entry]\n Exec=/usr/bin/steam -gamepadui %%U\n Type=Application\n Name=Steam GamePad UI\n Terminal=false\n X-KDE-RunOnDiscreteGpu=true\n PrefersNonDefaultGPU=true' > /home/core/.config/autostart/steam.desktop && \
63+ printf '[General]\n loginMode=emptySession' > /home/core/.config/ksmserverrc && \
64+ printf '[AC][Display]\n LockBeforeTurnOffDisplay=true\n TurnOffDisplayIdleTimeoutSec=-1\n TurnOffDisplayWhenIdle=false\n [AC][SuspendAndShutdown]\n LidAction=1\n PowerButtonAction=1\n [Battery][Display]\n DimDisplayIdleTimeoutSec=600\n LockBeforeTurnOffDisplay=true\n TurnOffDisplayIdleTimeoutSec=-1\n TurnOffDisplayWhenIdle=false\n [Battery][SuspendAndShutdown]\n AutoSuspendIdleTimeoutSec=300\n LidAction=1\n PowerButtonAction=1\n [LowBattery][Display]\n DimDisplayIdleTimeoutSec=-1\n DimDisplayWhenIdle=false\n LockBeforeTurnOffDisplay=true\n TurnOffDisplayIdleTimeoutSec=-1\n TurnOffDisplayWhenIdle=false\n UseProfileSpecificDisplayBrightness=false\n [LowBattery][SuspendAndShutdown]\n AutoSuspendAction=1\n AutoSuspendIdleTimeoutSec=600\n LidAction=1\n PowerButtonAction=1' > /home/core/.config/powerdevilrc && \
65+ printf "[Daemon]\n Autolock=false\n LockOnResume=false\n Timeout=0\n " > /etc/xdg/kscreenlockerrc && \
66+ cp /etc/xdg/kscreenlockerrc /home/core/.config/kscreenlockerrc && \
67+ chown -R core:core /home/core
5368
5469# minimize image size by squashing OS to 1 layer.
5570FROM scratch
@@ -62,4 +77,3 @@ COPY --from=stage1 / /
6277
6378WORKDIR /
6479ENTRYPOINT ["/lib/systemd/systemd" ]
65-
0 commit comments