2023-05-11 20:46:50 +02:00
|
|
|
FROM ubuntu:20.04
|
2023-04-09 11:23:53 +02:00
|
|
|
LABEL maintainer="citraemu"
|
2023-05-08 22:12:22 +03:00
|
|
|
|
2023-04-09 11:23:53 +02:00
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
|
|
|
|
# Create a user account citra (UID 1027) that the container will run as
|
2023-05-02 05:21:29 -07:00
|
|
|
RUN useradd -m -u 1027 -s /bin/bash citra
|
|
|
|
|
2023-05-11 20:46:50 +02:00
|
|
|
# Update system, install PPAs and install packages for building Citra.
|
|
|
|
RUN apt-get update && apt-get full-upgrade -y
|
|
|
|
RUN apt-get install -y software-properties-common lsb-release
|
|
|
|
RUN add-apt-repository -y ppa:savoury1/build-tools
|
|
|
|
RUN add-apt-repository -y ppa:savoury1/display
|
|
|
|
RUN add-apt-repository -y ppa:savoury1/ffmpeg4
|
|
|
|
RUN add-apt-repository -y ppa:savoury1/gcc-defaults-11
|
|
|
|
RUN add-apt-repository -y ppa:savoury1/llvm-defaults-13
|
|
|
|
RUN add-apt-repository -y ppa:savoury1/qt-6-2
|
|
|
|
RUN add-apt-repository -y ppa:theofficialgman/gpu-tools
|
|
|
|
RUN apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y
|
|
|
|
RUN apt-get install -y \
|
2023-04-09 11:23:53 +02:00
|
|
|
build-essential \
|
|
|
|
libsdl2-dev \
|
2023-05-02 05:21:29 -07:00
|
|
|
libssl-dev \
|
2023-05-11 20:46:50 +02:00
|
|
|
gcc-11 \
|
|
|
|
g++-11 \
|
|
|
|
cpp-11 \
|
2023-05-02 05:21:29 -07:00
|
|
|
# Qt 6
|
|
|
|
qt6-base-dev \
|
|
|
|
qt6-base-private-dev \
|
|
|
|
qt6-multimedia-dev \
|
|
|
|
qt6-l10n-tools \
|
|
|
|
qt6-tools-dev \
|
|
|
|
qt6-tools-dev-tools \
|
|
|
|
qt6-gtk-platformtheme \
|
2023-05-11 20:46:50 +02:00
|
|
|
qt6-documentation-tools \
|
2023-05-02 05:21:29 -07:00
|
|
|
qt6-wayland \
|
|
|
|
# FFmpeg
|
|
|
|
ffmpeg \
|
2023-04-09 11:23:53 +02:00
|
|
|
libavcodec-dev \
|
2023-05-02 05:21:29 -07:00
|
|
|
libavdevice-dev \
|
2023-04-09 11:23:53 +02:00
|
|
|
libavfilter-dev \
|
|
|
|
libavformat-dev \
|
2023-05-02 05:21:29 -07:00
|
|
|
libswresample-dev \
|
2023-04-09 11:23:53 +02:00
|
|
|
libswscale-dev \
|
2023-05-02 05:21:29 -07:00
|
|
|
# Tools
|
|
|
|
cmake \
|
|
|
|
p7zip-full \
|
2023-04-09 11:23:53 +02:00
|
|
|
wget \
|
2023-05-08 22:12:22 +03:00
|
|
|
unzip \
|
2023-04-09 11:23:53 +02:00
|
|
|
git \
|
|
|
|
ccache \
|
|
|
|
ninja-build \
|
|
|
|
glslang-dev \
|
|
|
|
glslang-tools \
|
2023-05-02 05:21:29 -07:00
|
|
|
file
|
|
|
|
|
|
|
|
# Download tools for building AppImages
|
2023-04-09 11:23:53 +02:00
|
|
|
RUN wget https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage
|
|
|
|
RUN wget https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage
|
2023-05-18 17:21:56 -04:00
|
|
|
RUN wget https://github.com/linuxdeploy/linuxdeploy-plugin-checkrt/releases/download/continuous/linuxdeploy-plugin-checkrt-x86_64.sh
|
2023-04-09 11:23:53 +02:00
|
|
|
RUN chmod a+x linuxdeploy-x86_64.AppImage
|
|
|
|
RUN chmod a+x linuxdeploy-plugin-qt-x86_64.AppImage
|
2023-05-18 17:21:56 -04:00
|
|
|
RUN chmod a+x linuxdeploy-plugin-checkrt-x86_64.sh
|