From 903e3e2e5a55c8422c547c18548e2f3a761adb29 Mon Sep 17 00:00:00 2001 From: Kyattsukuro Date: Tue, 3 Jun 2025 21:13:25 +0200 Subject: [PATCH] init --- Dockerfile | 26 ++++++++++++++++++++++++ README.md | 38 ++++++++++++++++++++++++++++++++++ compose.yaml | 53 ++++++++++++++++++++++++++++++++++++++++++++++++ setup_runtime.sh | 10 +++++++++ 4 files changed, 127 insertions(+) create mode 100644 Dockerfile create mode 100644 README.md create mode 100644 compose.yaml create mode 100755 setup_runtime.sh diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..da85823 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,26 @@ +FROM archlinux + +ARG USER_ID=1000 +ARG GROUP_ID=100 + +RUN cat >> /etc/pacman.conf < /etc/sudoers < +``` \ No newline at end of file diff --git a/compose.yaml b/compose.yaml new file mode 100644 index 0000000..63f316d --- /dev/null +++ b/compose.yaml @@ -0,0 +1,53 @@ +services: + archSysGui: + build: + context: . + dockerfile: Dockerfile + args: + - "USER_ID=${UID:-1000}" + - "GROUP_ID=${GID:-100}" + pull_policy: build + image: katzenkralle/archsysv2:latest + + environment: + - GDK_BACKEND=wayland + - QT_QPA_PLATFORM=wayland + - WAYLAND_DISPLAY=$WAYLAND_DISPLAY + - XDG_BACKEND=wayland + - XDG_SESSION_TYPE=wayland + - XDG_RUNTIME_DIR=/tmp/xdg_runtime + + - PULSE_SERVER=unix:${XDG_RUNTIME_DIR}/pulse/native + - DBUS_SESSION_BUS_ADDRESS=unix:path=/tmp/dbus + + - DISPLAY=$DISPLAY + + # Needed by steam for user namespacing + cap_add: + - SYS_ADMIN + security_opt: + - seccomp=unconfined + + volumes: + - $XDG_RUNTIME_DIR/$WAYLAND_DISPLAY:/tmp/xdg_runtime/$WAYLAND_DISPLAY + - /tmp/.X11-unix:/tmp/.X11-unix:rw + - ${XDG_RUNTIME_DIR}/pulse/native:${XDG_RUNTIME_DIR}/pulse/native + + # Add further directories to the container as needed + - ~/.local/share/icons:/home/someone/.local/share/icons + - ~/.local/share/themes:/home/someone/.local/share/themes + - ~/.config:/home/someone/.config + + - ~/.local/share/Steam/steamapps/:/home/someone/.local/share/Steam/steamapps/ + - /mnt/DT01ACA1/SteamLibrary/:/mnt/DT01ACA1/SteamLibrary + - /mnt/DT01ACA3/SteamLibrary/:/mnt/DT01ACA3/SteamLibrary + ipc: host + user: ${UID:-1000}:${GID:-100} + + # Alternativly use: LIBGL_ALWAYS_SOFTWARE=1 steam to launch steam, no GPU + devices: + - /dev/kfd + - /dev/dri + - /dev/snd # ALSA sound + + diff --git a/setup_runtime.sh b/setup_runtime.sh new file mode 100755 index 0000000..a12888e --- /dev/null +++ b/setup_runtime.sh @@ -0,0 +1,10 @@ +#!/usr/share/env bash +user=$(id -u) +group=$(id -g) + +mkdir -p $XDG_RUNTIME_DIR > /dev/null 2>&1 +sudo chown "$user:$group" $XDG_RUNTIME_DIR > /dev/null 2>&1 +dbus-daemon --config-file=/usr/share/dbus-1/session.conf --address=$(echo "$DBUS_SESSION_BUS_ADDRESS" | sed 's/"/\\"/g') --print-address; + +while true; do sleep 1000; done +