
- Removed the `numactl` package from all images as SteamCMD no longer seems to have issues logging in with a real Steam account (at least on bookworm, which all these images use). The following cleanup changes only apply to Dockerfiles that had `numactl` removed: - Changed all Dockerfiles to use `apt` (instead of `apt-get`) for consistency. - Changed all `apt install` packages to a "list" format for consistency and easier diff reading for future package additions/removals. - Added `locales` to `games\source\Dockerfile` and set the locale. - Moved all instances of the `useradd` command down with the other user and working directory commands. Also added the shell specification flag if it was missing. - Unified all Dockerfiles to use space-indenting and fixed some indent spacing. - Cleaned up some comments.
79 lines
2.6 KiB
Docker
79 lines
2.6 KiB
Docker
# ---------------------------------------------
|
|
# Steam Proton image
|
|
# ---------------------------------------------
|
|
FROM debian:bookworm-slim
|
|
|
|
LABEL author="Torsten Widmann" maintainer="info@goover.de"
|
|
|
|
## install required packages
|
|
RUN dpkg --add-architecture i386
|
|
RUN apt update
|
|
RUN apt install -y --no-install-recommends \
|
|
wget \
|
|
iproute2 \
|
|
gnupg2 \
|
|
software-properties-common \
|
|
libntlm0 \
|
|
winbind \
|
|
xvfb \
|
|
xauth \
|
|
libncurses5-dev:i386 \
|
|
libncurses6 \
|
|
dbus \
|
|
libgdiplus \
|
|
lib32gcc-s1
|
|
RUN apt install -y \
|
|
alsa-tools \
|
|
libpulse0 \
|
|
pulseaudio \
|
|
libpulse-dev \
|
|
libasound2 \
|
|
libao-common \
|
|
gnutls-bin \
|
|
gnupg \
|
|
locales \
|
|
cabextract \
|
|
curl \
|
|
python3 \
|
|
python3-pip \
|
|
python3-setuptools \
|
|
tini \
|
|
file \
|
|
pipx
|
|
|
|
# Download Proton GE
|
|
RUN curl -sLOJ "$(curl -s https://api.github.com/repos/GloriousEggroll/proton-ge-custom/releases/tags/GE-Proton8-32 | grep browser_download_url | cut -d\" -f4 | egrep .tar.gz)"
|
|
RUN tar -xzf GE-Proton*.tar.gz -C /usr/local/bin/ --strip-components=1
|
|
RUN rm GE-Proton*.*
|
|
|
|
# Proton Fix machine-id
|
|
RUN rm -f /etc/machine-id
|
|
RUN dbus-uuidgen --ensure=/etc/machine-id
|
|
RUN rm /var/lib/dbus/machine-id
|
|
RUN dbus-uuidgen --ensure
|
|
|
|
# Setup Protontricks
|
|
RUN pipx install protontricks
|
|
|
|
# Set up Winetricks
|
|
RUN wget -q -O /usr/sbin/winetricks https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks \
|
|
&& chmod +x /usr/sbin/winetricks
|
|
|
|
# Install rcon
|
|
RUN cd /tmp/ \
|
|
&& curl -sSL https://github.com/gorcon/rcon-cli/releases/download/v0.10.3/rcon-0.10.3-amd64_linux.tar.gz > rcon.tar.gz \
|
|
&& tar xvf rcon.tar.gz \
|
|
&& mv rcon-0.10.3-amd64_linux/rcon /usr/local/bin/
|
|
|
|
# Setup user and working directory
|
|
RUN useradd -m -d /home/container -s /bin/bash container
|
|
USER container
|
|
ENV USER=container HOME=/home/container
|
|
WORKDIR /home/container
|
|
|
|
STOPSIGNAL SIGINT
|
|
|
|
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
|
RUN chmod +x /entrypoint.sh
|
|
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
|
CMD ["/entrypoint.sh"] |