64 lines
2.0 KiB
Docker
Raw Normal View History

FROM ubuntu:20.04
LABEL maintainer="citraemu"
2023-05-08 22:12:22 +03: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
# 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 \
build-essential \
libsdl2-dev \
2023-05-02 05:21:29 -07:00
libssl-dev \
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 \
qt6-documentation-tools \
2023-05-02 05:21:29 -07:00
qt6-wayland \
# FFmpeg
ffmpeg \
libavcodec-dev \
2023-05-02 05:21:29 -07:00
libavdevice-dev \
libavfilter-dev \
libavformat-dev \
2023-05-02 05:21:29 -07:00
libswresample-dev \
libswscale-dev \
2023-05-02 05:21:29 -07:00
# Tools
cmake \
p7zip-full \
wget \
2023-05-08 22:12:22 +03:00
unzip \
git \
ccache \
ninja-build \
glslang-dev \
glslang-tools \
2023-05-02 05:21:29 -07:00
file
# Download tools for building AppImages
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
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