forked from PabloMK7/build-environments
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Dockerfile
70 lines (63 loc) · 1.91 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
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