mirror of
https://github.com/RPCS3/rpcs3-docker.git
synced 2026-01-31 01:35:20 +01:00
Merge pull request #11 from ADAS2024/GAMEMODE_ADD
This commit is contained in:
@@ -78,7 +78,7 @@ RUN \
|
||||
libx11-* \
|
||||
libxcb-* \
|
||||
libxkb* \
|
||||
libpng-dev libjpeg-turbo8-dev libtiff-dev libwebp-dev libgtest-dev && \
|
||||
libpng-dev libjpeg-turbo8-dev libtiff-dev libwebp-dev libgtest-dev python3 python3-venv python3-pip libsystemd-dev && \
|
||||
apt-get clean autoclean && \
|
||||
apt-get autoremove --yes && \
|
||||
rm -rf /var/lib/apt
|
||||
@@ -259,3 +259,36 @@ RUN \
|
||||
cd ../.. && \
|
||||
rm ./*.tar.gz && \
|
||||
rm -r ./opencv*
|
||||
|
||||
# Gamemode package is outdated in jammy repo, we need to build own
|
||||
# Gamemode uses Meson, not CMake for building
|
||||
# Based on build instructions for Ubuntu 22 on repo page
|
||||
ENV GAMEMODE_VER=1.8.2
|
||||
RUN useradd -m rpcs3-dock && \
|
||||
echo "rpcs3-dock ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
|
||||
RUN \
|
||||
python3 -m venv /home/rpcs3-dock/.venv && \
|
||||
chown -R rpcs3-dock:rpcs3-dock /home/rpcs3-dock/.venv && \
|
||||
/home/rpcs3-dock/.venv/bin/pip install meson && \
|
||||
curl -L https://github.com/FeralInteractive/gamemode/archive/refs/tags/${GAMEMODE_VER}.tar.gz -o gamemode.tar.gz && \
|
||||
tar -xzf gamemode.tar.gz && \
|
||||
rm gamemode.tar.gz && \
|
||||
mv gamemode-${GAMEMODE_VER} gamemode && \
|
||||
chown -R rpcs3-dock:rpcs3-dock /gamemode
|
||||
|
||||
# Script needs to be run in user mode so we do this here before going back to root for cleanup
|
||||
USER rpcs3-dock
|
||||
WORKDIR /gamemode
|
||||
ENV CI=true
|
||||
RUN sudo -k && \
|
||||
. /home/rpcs3-dock/.venv/bin/activate && \
|
||||
./bootstrap.sh && \
|
||||
deactivate
|
||||
|
||||
USER root
|
||||
RUN \
|
||||
userdel -r rpcs3-dock 2>/dev/null || true && \
|
||||
rm -rf /home/rpcs3-dock/.venv && \
|
||||
rm -r /gamemode
|
||||
RUN ! getent passwd rpcs3-dock
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ RUN \
|
||||
libtheora-dev libwebp-dev libopus-dev libvorbis-dev libvpx-dev libx264-dev libxml2-dev ocl-icd-opencl-dev \
|
||||
libwayland-dev libwayland-cursor0 libxkbcommon-x11-dev libwayland-client0 libwayland-server0 \
|
||||
libpng-dev libjpeg-turbo8-dev libtiff-dev libwebp-dev \
|
||||
desktop-file-utils dput gnupg pbuilder ubuntu-dev-tools apt-file patchelf libgtest-dev && \
|
||||
desktop-file-utils dput gnupg pbuilder ubuntu-dev-tools apt-file patchelf libgtest-dev python3 python3-venv python3-pip libsystemd-dev && \
|
||||
apt-get install --only-upgrade dpkg && \
|
||||
apt-get clean autoclean && \
|
||||
apt-get autoremove --yes && \
|
||||
@@ -195,3 +195,35 @@ RUN \
|
||||
cd ../.. && \
|
||||
rm ./*.tar.gz && \
|
||||
rm -r ./opencv*
|
||||
|
||||
# Gamemode package is outdated in jammy repo, we need to build own
|
||||
# Gamemode uses Meson, not CMake for building
|
||||
# Based on build instructions for Ubuntu 22 on repo page
|
||||
ENV GAMEMODE_VER=1.8.2
|
||||
RUN useradd -m rpcs3-dock && \
|
||||
echo "rpcs3-dock ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
|
||||
RUN \
|
||||
python3 -m venv /home/rpcs3-dock/.venv && \
|
||||
chown -R rpcs3-dock:rpcs3-dock /home/rpcs3-dock/.venv && \
|
||||
/home/rpcs3-dock/.venv/bin/pip install meson && \
|
||||
curl -L https://github.com/FeralInteractive/gamemode/archive/refs/tags/${GAMEMODE_VER}.tar.gz -o gamemode.tar.gz && \
|
||||
tar -xzf gamemode.tar.gz && \
|
||||
rm gamemode.tar.gz && \
|
||||
mv gamemode-${GAMEMODE_VER} gamemode && \
|
||||
chown -R rpcs3-dock:rpcs3-dock /gamemode
|
||||
|
||||
# Script needs to be run in user mode so we do this here before going back to root for cleanup
|
||||
USER rpcs3-dock
|
||||
WORKDIR /gamemode
|
||||
ENV CI=true
|
||||
RUN sudo -k && \
|
||||
. /home/rpcs3-dock/.venv/bin/activate && \
|
||||
./bootstrap.sh && \
|
||||
deactivate
|
||||
|
||||
USER root
|
||||
RUN \
|
||||
userdel -r rpcs3-dock 2>/dev/null || true && \
|
||||
rm -rf /home/rpcs3-dock/.venv && \
|
||||
rm -r /gamemode
|
||||
RUN ! getent passwd rpcs3-dock
|
||||
|
||||
Reference in New Issue
Block a user