-
-
Notifications
You must be signed in to change notification settings - Fork 92
/
Dockerfile
63 lines (55 loc) · 2.08 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
# Dockerfile for ghcr.io/grumpycoders/pcsx-redux-build
FROM ubuntu:23.10
# The tzdata package isn't docker-friendly, and something pulls it.
ENV DEBIAN_FRONTEND noninteractive
ENV TZ Etc/GMT
RUN apt update
RUN apt dist-upgrade -y
# Utility packages
RUN apt install -y git
RUN apt install -y make
RUN apt install -y pkg-config
# Compilers & base libraries
RUN apt install -y g++-12
RUN apt install -y g++-mipsel-linux-gnu
# Development packages
RUN apt install -y libavcodec-dev
RUN apt install -y libavformat-dev
RUN apt install -y libavutil-dev
RUN apt install -y libcapstone-dev
RUN apt install -y libcurl4-openssl-dev
RUN apt install -y libfreetype-dev
RUN apt install -y libglfw3-dev
RUN apt install -y libswresample-dev
RUN apt install -y libuv1-dev
RUN apt install -y zlib1g-dev
# CI utilities
RUN apt install -y curl wget
RUN apt install -y xvfb
RUN apt install -y python3-pip python3-setuptools patchelf desktop-file-utils libgdk-pixbuf2.0-dev fakeroot strace
RUN apt install -y glibc-tools lcov
RUN apt install -y file
WORKDIR /tmp
RUN wget https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage && \
chmod +x /tmp/appimagetool-x86_64.AppImage && \
cd /opt && /tmp/appimagetool-x86_64.AppImage --appimage-extract && \
mv squashfs-root appimage-tool.AppDir && \
ln -s /opt/appimage-tool.AppDir/AppRun /usr/bin/appimagetool && \
rm /tmp/appimagetool-x86_64.AppImage
WORKDIR /
RUN pip3 install --break-system-packages appimage-builder pydpkg
COPY appimage-dpkg.patch /appimage-dpkg.patch
RUN patch -p 1 < appimage-dpkg.patch
RUN apt install -y imagemagick-6.q16 gtk-update-icon-cache appstream
ENV NVM_DIR /usr/local/nvm
ENV NODE_VERSION 14.17.0
RUN mkdir -p /usr/local/nvm
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
RUN . $NVM_DIR/nvm.sh && nvm alias default $NODE_VERSION
RUN . $NVM_DIR/nvm.sh && nvm use default
RUN . $NVM_DIR/nvm.sh && npm install -g appcenter-cli
RUN apt install -y squashfs-tools zip zsync
RUN mkdir /project
RUN mkdir -p /home/coder/dconf
RUN chmod a+rwx /home/coder/dconf
WORKDIR /project