Skip to content

Commit be21cf9

Browse files
authored
Add CachyOS Images (#79)
* [NEW] added `cachyos` docker images * update README wth cachyos links * [FIX] ensure `en_US.UTF-8` locale is used; copy certs from default `steamcmd` image * correct tagging+linking of cachyos images
1 parent 7f18725 commit be21cf9

4 files changed

Lines changed: 115 additions & 0 deletions

File tree

.github/workflows/build.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,3 +96,18 @@ jobs:
9696
with:
9797
name: centos-9
9898
tags: centos
99+
100+
## linux / cachyos
101+
cachyos:
102+
uses: ./.github/workflows/_build-linux.yml
103+
needs: ubuntu-22
104+
secrets: inherit
105+
with:
106+
name: cachyos
107+
108+
cachyos-3:
109+
uses: ./.github/workflows/_build-linux.yml
110+
needs: ubuntu-22
111+
secrets: inherit
112+
with:
113+
name: cachyos-3

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ have a look at [steamcmd.net](https://www.steamcmd.net).
3333
* [`rocky-9`, `rocky`](dockerfiles/rocky-9/Dockerfile)
3434
* [`rocky-8`](dockerfiles/rocky-8/Dockerfile)
3535
* [`centos-9`, `centos`](dockerfiles/centos-9/Dockerfile)
36+
* [`cachyos-3`](dockerfiles/cachyos-3/Dockerfile)
37+
* [`cachyos`](dockerfiles/cachyos/Dockerfile)
3638
* [`windows-1809`](dockerfiles/windows-1809/Dockerfile) *(unavailable)*
3739
* [`windows-core-2025`](dockerfiles/windows-core-2025/Dockerfile) *(unavailable)*
3840
* [`windows-core-2022`](dockerfiles/windows-core-2022/Dockerfile) *(unavailable)*

dockerfiles/cachyos-3/Dockerfile

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
FROM steamcmd/steamcmd:ubuntu-22 AS builder
2+
3+
USER root
4+
ENV USER=root
5+
ENV HOME=/root/installer
6+
7+
RUN apt-get update && apt-get install -y --no-install-recommends curl tar
8+
9+
WORKDIR $HOME
10+
11+
RUN curl http://media.steampowered.com/installer/steamcmd_linux.tar.gz --output steamcmd.tar.gz --silent
12+
RUN tar -xvzf steamcmd.tar.gz && rm steamcmd.tar.gz
13+
14+
FROM cachyos/cachyos-v3:latest
15+
16+
USER root
17+
ENV USER=root
18+
ENV HOME=/root
19+
20+
RUN sed -i 's/^#\[multilib\]/[multilib]/' /etc/pacman.conf && sed -i 's|^#Include = /etc/pacman.d/mirrorlist|Include = /etc/pacman.d/mirrorlist|' /etc/pacman.conf
21+
22+
RUN pacman --noconfirm --needed -Syu \
23+
&& pacman --noconfirm --needed -S bash dbus gcc-libs sdl2 lib32-glibc lib32-dbus lib32-gcc-libs lib32-sdl2 \
24+
&& pacman --noconfirm -Scc
25+
26+
RUN sed -i 's/^#\s*\(en_US\.UTF-8[[:space:]]\+UTF-8\)/\1/' /etc/locale.gen \
27+
&& locale-gen \
28+
&& echo -e 'LANG=en_US.UTF-8\nLC_COLLATE=C' | tee /etc/locale.conf > /dev/null
29+
30+
ENV LANG='en_US.UTF-8'
31+
ENV LANGUAGE='en_US:en'
32+
33+
COPY --from=builder /etc/ssl/certs /etc/ssl/certs
34+
COPY --from=builder /root/installer/steamcmd.sh /usr/lib/games/steam/
35+
COPY --from=builder /root/installer/linux32/steamcmd /usr/lib/games/steam/
36+
COPY --from=builder /usr/games/steamcmd /usr/bin/steamcmd
37+
38+
RUN steamcmd +quit
39+
40+
RUN mkdir -p $HOME/.steam \
41+
&& ln -s $HOME/.local/share/Steam/steamcmd/linux32 $HOME/.steam/sdk32 \
42+
&& ln -s $HOME/.local/share/Steam/steamcmd/linux64 $HOME/.steam/sdk64 \
43+
&& ln -s $HOME/.steam/sdk32/steamclient.so $HOME/.steam/sdk32/steamservice.so \
44+
&& ln -s $HOME/.steam/sdk64/steamclient.so $HOME/.steam/sdk64/steamservice.so \
45+
&& chown -R $USER:$USER $HOME \
46+
&& rm -rf /tmp/* && rm -rf /var/tmp/*
47+
48+
ENTRYPOINT ["steamcmd"]
49+
CMD ["+help", "+quit"]

dockerfiles/cachyos/Dockerfile

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
FROM steamcmd/steamcmd:ubuntu-22 AS builder
2+
3+
USER root
4+
ENV USER=root
5+
ENV HOME=/root/installer
6+
7+
RUN apt-get update && apt-get install -y --no-install-recommends curl tar
8+
9+
WORKDIR $HOME
10+
11+
RUN curl http://media.steampowered.com/installer/steamcmd_linux.tar.gz --output steamcmd.tar.gz --silent
12+
RUN tar -xvzf steamcmd.tar.gz && rm steamcmd.tar.gz
13+
14+
FROM cachyos/cachyos:latest
15+
16+
USER root
17+
ENV USER=root
18+
ENV HOME=/root
19+
20+
RUN sed -i 's/^#\[multilib\]/[multilib]/' /etc/pacman.conf && sed -i 's|^#Include = /etc/pacman.d/mirrorlist|Include = /etc/pacman.d/mirrorlist|' /etc/pacman.conf
21+
22+
RUN pacman --noconfirm --needed -Syu \
23+
&& pacman --noconfirm --needed -S bash dbus gcc-libs sdl2 lib32-glibc lib32-dbus lib32-gcc-libs lib32-sdl2 \
24+
&& pacman --noconfirm -Scc
25+
26+
RUN sed -i 's/^#\s*\(en_US\.UTF-8[[:space:]]\+UTF-8\)/\1/' /etc/locale.gen \
27+
&& locale-gen \
28+
&& echo -e 'LANG=en_US.UTF-8\nLC_COLLATE=C' | tee /etc/locale.conf > /dev/null
29+
30+
ENV LANG='en_US.UTF-8'
31+
ENV LANGUAGE='en_US:en'
32+
33+
COPY --from=builder /etc/ssl/certs /etc/ssl/certs
34+
COPY --from=builder /root/installer/steamcmd.sh /usr/lib/games/steam/
35+
COPY --from=builder /root/installer/linux32/steamcmd /usr/lib/games/steam/
36+
COPY --from=builder /usr/games/steamcmd /usr/bin/steamcmd
37+
38+
RUN steamcmd +quit
39+
40+
RUN mkdir -p $HOME/.steam \
41+
&& ln -s $HOME/.local/share/Steam/steamcmd/linux32 $HOME/.steam/sdk32 \
42+
&& ln -s $HOME/.local/share/Steam/steamcmd/linux64 $HOME/.steam/sdk64 \
43+
&& ln -s $HOME/.steam/sdk32/steamclient.so $HOME/.steam/sdk32/steamservice.so \
44+
&& ln -s $HOME/.steam/sdk64/steamclient.so $HOME/.steam/sdk64/steamservice.so \
45+
&& chown -R $USER:$USER $HOME \
46+
&& rm -rf /tmp/* && rm -rf /var/tmp/*
47+
48+
ENTRYPOINT ["steamcmd"]
49+
CMD ["+help", "+quit"]

0 commit comments

Comments
 (0)