mirror of
https://github.com/azahar-emu/build-environment
synced 2025-11-06 23:19:59 +01:00
71 lines
1.9 KiB
Docker
71 lines
1.9 KiB
Docker
FROM debian:12-slim
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
# Create a user account lime (UID 1027) that the container will run as
|
|
RUN useradd -m -u 1027 -s /bin/bash lime
|
|
|
|
# Update repos + upgrade system
|
|
RUN apt-get update && apt-get -y full-upgrade
|
|
|
|
# Add LLVM repo
|
|
RUN echo "deb http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-18 main" >> /etc/apt/sources.list
|
|
RUN apt-get install -y gnupg wget
|
|
RUN wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -
|
|
RUN apt-get update
|
|
|
|
# Install package dependencies
|
|
RUN apt-get install -y \
|
|
# Tools
|
|
build-essential \
|
|
ccache \
|
|
clang-18 \
|
|
clang-format-18 \
|
|
cmake \
|
|
curl \
|
|
file \
|
|
git \
|
|
libc++-18-dev \
|
|
lld \
|
|
llvm-18 \
|
|
ninja-build \
|
|
python3-pip \
|
|
ruby \
|
|
software-properties-common \
|
|
unzip \
|
|
zip \
|
|
# FFmpeg
|
|
ffmpeg \
|
|
libavcodec-dev \
|
|
libavdevice-dev \
|
|
libavfilter-dev \
|
|
libavformat-dev \
|
|
libswresample-dev \
|
|
libswscale-dev \
|
|
# Qt 6
|
|
qt6-base-dev \
|
|
qt6-base-private-dev \
|
|
libqt6opengl6-dev \
|
|
qt6-multimedia-dev \
|
|
qt6-l10n-tools \
|
|
qt6-tools-dev \
|
|
qt6-tools-dev-tools \
|
|
libgl-dev \
|
|
# glslang
|
|
glslang-dev \
|
|
glslang-tools \
|
|
# Other libraries
|
|
libsdl2-dev
|
|
|
|
# Download Transifex client
|
|
RUN curl -o- https://raw.githubusercontent.com/transifex/cli/master/install.sh | bash
|
|
RUN mv /tx /usr/bin/
|
|
|
|
# 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
|
|
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
|
|
RUN chmod a+x linuxdeploy-plugin-checkrt-x86_64.sh
|