summaryrefslogtreecommitdiff
path: root/Dockerfile
diff options
context:
space:
mode:
Diffstat (limited to 'Dockerfile')
-rw-r--r--Dockerfile60
1 files changed, 60 insertions, 0 deletions
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..a664173
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,60 @@
+FROM ubuntu:rolling
+
+ENV PS2DEV /ps2dev
+ENV PS2SDK $PS2DEV/ps2sdk
+ENV PATH $PATH:$PS2DEV/bin:$PS2DEV/ee/bin:$PS2DEV/iop/bin:$PS2DEV/dvp/bin:$PS2SDK/bin
+
+ENV DEBIAN_FRONTEND noninteractive
+
+ENV TOOLCHAIN_GIT_URL git://github.com/ps2dev/ps2toolchain.git
+ENV TOOLCHAIN_GIT_BRANCH master
+
+ENV PREMAKE5_URL=https://github.com/premake/premake-core/releases/download/v5.0.0-alpha12/premake-5.0.0-alpha12-linux.tar.gz
+
+RUN mkdir -p "$PS2DEV" "$PS2SDK" \
+ && apt-get update \
+ && apt-get upgrade -y \
+ && apt-get install -y \
+ build-essential \
+ cmake \
+ autoconf \
+ bzip2 \
+ gcc \
+ git \
+ libucl-dev \
+ make \
+ patch \
+ vim \
+ wget \
+ zip \
+ zlib1g-dev \
+ libglfw3-dev \
+ libsdl2-dev \
+ && git clone -b $TOOLCHAIN_GIT_BRANCH $TOOLCHAIN_GIT_URL /toolchain \
+ && cd /toolchain \
+ && ./toolchain.sh \
+ && git clone git://github.com/ps2dev/ps2eth.git /ps2dev/ps2eth \
+ && make -C /ps2dev/ps2eth \
+ && git clone git://github.com/ps2dev/ps2-packer.git /ps2-packer \
+ && make install -C /ps2-packer \
+ && rm -rf \
+ /ps2-packer \
+ /ps2dev/ps2eth/.git \
+ /ps2dev/ps2sdk/test.tmp \
+ /ps2dev/test.tmp \
+ /toolchain \
+ && rm -rf /var/lib/apt/lists/* \
+ && wget "$PREMAKE5_URL" -O /tmp/premake5.tar.gz \
+ && tar xf /tmp/premake5.tar.gz -C /usr/bin/ \
+ && rm /tmp/premake5.tar.gz \
+ && groupadd 1000 -g 1000 \
+ && groupadd 1001 -g 1001 \
+ && groupadd 2000 -g 2000 \
+ && groupadd 999 -g 999 \
+ && useradd -ms /bin/bash builder -g 1001 -G 1000,2000,999 \
+ && printf "builder:builder" | chpasswd \
+ && adduser builder sudo \
+ && printf "builder ALL= NOPASSWD: ALL\\n" >> /etc/sudoers
+
+USER builder
+WORKDIR /home/builder