-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathContainerfile
87 lines (76 loc) · 2.75 KB
/
Containerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# Use the SteamOS container as the base
FROM lscr.io/linuxserver/steamos:latest
# Update and install additional packages
RUN pacman -Syu --noconfirm && \
echo "1" | pacman -S --noconfirm \
lib32-vulkan-radeon \
libva-mesa-driver \
intel-media-driver && \
echo "1" | pacman -S --noconfirm \
vulkan-mesa-layers \
lib32-vulkan-mesa-layers \
lib32-libnm \
openal && \
pacman -S --noconfirm \
lib32-openal && \
pacman -S --noconfirm \
xdg-desktop-portal-kde \
vim \
nano \
hyfetch \
fish \
yad \
xdg-user-dirs && \
pacman -S --noconfirm \
xdotool \
xorg-xwininfo \
wmctrl \
wxwidgets-gtk3 \
rocm-opencl-runtime \
rocm-hip-runtime \
libbsd \
noto-fonts-cjk \
glibc-locales
# Install additional packages that may have dependencies on the core libraries
RUN pacman -S --noconfirm \
lutris \
mangohud \
lib32-mangohud
# Clean up after install
RUN pacman -Sc --noconfirm && rm -rf /var/cache/pacman/pkg/*
# Set any necessary environment variables or startup commands
CMD ["bash", "-c", "echo 'Customized SteamOS container started' && /bin/bash"]
# Install paru (for AUR support)
RUN pacman -Sy --noconfirm git paru zenity
# Install EmuDeck
RUN curl -L https://raw.githubusercontent.com/dragoonDorise/EmuDeck/main/install.sh | bash
# Install Decky Launcher
RUN curl -S -s -L -O --output-dir /tmp/ --connect-timeout 60 https://github.com/SteamDeckHomebrew/decky-installer/releases/latest/download/user_install_script.sh && \
bash /tmp/user_install_script.sh || echo "Something went wrong, please report this if it is a bug"
# Install LatencyFlex
RUN wget https://raw.githubusercontent.com/Shringe/LatencyFleX-Installer/main/install.sh -O /usr/bin/latencyflex && \
sed -i 's@"dxvk.conf"@"/usr/share/latencyflex/dxvk.conf"@g' /usr/bin/latencyflex && \
chmod +x /usr/bin/latencyflex
# Install AUR packages as build user
RUN useradd -m --shell=/bin/bash build && usermod -L build && \
echo "build ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers && \
echo "root ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
USER build
WORKDIR /home/build
RUN paru -S --noconfirm \
aur/protontricks \
aur/vkbasalt \
aur/lib32-vkbasalt \
aur/obs-vkcapture-git \
aur/lib32-obs-vkcapture-git \
aur/lib32-gperftools \
aur/steamcmd
# Switch back to root and clean up
USER root
WORKDIR /
RUN userdel -r build && \
sed -i '/build ALL=(ALL) NOPASSWD: ALL/d' /etc/sudoers && \
sed -i '/root ALL=(ALL) NOPASSWD: ALL/d' /etc/sudoers && \
rm -rf /home/build && \
pacman -Scc --noconfirm && \
rm -rf /var/cache/pacman/pkg/* /tmp/*