diff --git a/.github/workflows/emu-wine.yml b/.github/workflows/emu-wine.yml index 7d8980e..1f3dad0 100644 --- a/.github/workflows/emu-wine.yml +++ b/.github/workflows/emu-wine.yml @@ -25,10 +25,11 @@ jobs: - devel - stable - staging - + - ubuntustaging + steps: - uses: actions/checkout@v4 - + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 with: @@ -39,7 +40,7 @@ jobs: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - + - uses: docker/build-push-action@v6 with: context: ./wine diff --git a/wine/staging/Dockerfile b/wine/staging/Dockerfile index 87f24cd..d730509 100644 --- a/wine/staging/Dockerfile +++ b/wine/staging/Dockerfile @@ -1,4 +1,4 @@ -FROM debian:bookworm-slim +FROM ubuntu:24.04 LABEL author="Torsten Widmann" maintainer="info@goover.de" LABEL org.opencontainers.image.source="https://github.com/gOOvER/own-pterodactyl-images" @@ -6,7 +6,6 @@ LABEL org.opencontainers.image.licenses=AGPL ## install required packages ARG DEBIAN_FRONTEND=noninteractive -COPY sources.list /etc/apt/sources.list RUN dpkg --add-architecture i386 RUN apt update RUN apt -y upgrade @@ -74,7 +73,7 @@ RUN rm -rf /var/lib/apt/lists/* # Install wine and with recommends RUN mkdir -pm755 /etc/apt/keyrings RUN wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key -RUN wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/debian/dists/bookworm/winehq-bookworm.sources +RUN wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/noble/winehq-noble.sources RUN apt update RUN apt install --install-recommends winehq-staging winbind cabextract -y diff --git a/wine/ubuntustaging/Dockerfile b/wine/ubuntustaging/Dockerfile new file mode 100644 index 0000000..aa84606 --- /dev/null +++ b/wine/ubuntustaging/Dockerfile @@ -0,0 +1,120 @@ +FROM debian:bookworm-slim + +LABEL author="Torsten Widmann" maintainer="info@goover.de" +LABEL org.opencontainers.image.source="https://github.com/gOOvER/own-pterodactyl-images" +LABEL org.opencontainers.image.licenses=AGPL + +## install required packages +ARG DEBIAN_FRONTEND=noninteractive +RUN dpkg --add-architecture i386 +RUN apt update +RUN apt -y upgrade +RUN apt install -y --no-install-recommends \ + apt-transport-https \ + binutils \ + ca-certificates \ + cabextract \ + curl \ + ffmpeg \ + g++ \ + gcc \ + gdb \ + git \ + gnupg2 \ + gnutls-bin \ + icu-devtools \ + iproute2 \ + locales \ + net-tools \ + netcat-openbsd \ + numactl \ + procps \ + python3 \ + rapidjson-dev \ + software-properties-common \ + sqlite3 \ + tar \ + telnet \ + tini \ + tzdata \ + unzip \ + wget \ + winbind \ + xauth \ + xvfb \ + xz-utils \ + zip \ + libatomic1 \ + libc++-dev \ + libc6 \ + libduktape207 \ + libevent-dev \ + libfluidsynth3 \ + libfontconfig \ + libgcc1 \ + libicu72 \ + liblua5.4-0 \ + liblzo2-2 \ + libmariadbclient-dev-compat \ + libncurses6:i386 \ + libntlm0 \ + libprotobuf32 \ + libsdl1.2debian \ + libsdl2-2.0-0 \ + libsdl2-2.0-0:i386 \ + libsqlite3-dev \ + libstdc++6 \ + libunwind8 \ + libz-dev \ + libzip4 + +RUN rm -rf /var/lib/apt/lists/* + +# Install wine and with recommends +RUN mkdir -pm755 /etc/apt/keyrings +RUN wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key +RUN wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/debian/dists/bookworm/winehq-bookworm.sources +RUN apt update +RUN apt install --install-recommends winehq-staging winbind cabextract -y + +# Set up Winetricks +RUN wget -q -O /usr/sbin/winetricks https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks +RUN 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 ENVs +ENV HOME=/home/container +ENV WINEPREFIX=/home/container/.wine +ENV WINEDLLOVERRIDES="mscoree,mshtml=" +ENV DISPLAY=:0 +ENV DISPLAY_WIDTH=1024 +ENV DISPLAY_HEIGHT=768 +ENV DISPLAY_DEPTH=16 + +# Set the locale +RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && \ + locale-gen +ENV LANG en_US.UTF-8 +ENV LANGUAGE en_US:en +ENV LC_ALL en_US.UTF-8 + +RUN bash -c 'echo "vm.max_map_count = 16777216" > /etc/sysctl.d/20-max_map_count.conf' + +## 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 + +# Sets the default stop signal as wings can (currently) only send a kill or generic stop +STOPSIGNAL SIGINT + +COPY --chown=container:container ../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"]