@@ -15,46 +15,70 @@ RUN wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-p
1515
1616RUN apt-get update -y && \
1717 apt-get install --no-install-recommends -y \
18+ aspnetcore-runtime-6.0=6.0.1-1 \
19+ aspnetcore-targeting-pack-6.0=6.0.0-1 \
1820 clang-10 \
19- dotnet-sdk-3.1=3.1.401-1 \
21+ dotnet-host=6.0.1-1 \
22+ dotnet-hostfxr-6.0=6.0.1-1 \
23+ dotnet-runtime-6.0=6.0.1-1 \
24+ dotnet-runtime-deps-6.0=6.0.1-1 \
25+ dotnet-sdk-6.0=6.0.101-1 \
26+ dotnet-targeting-pack-6.0=6.0.1-1 \
2027 fp-compiler-3.0.4 \
2128 fp-units-fcl-3.0.4 \
22- g++ \
23- gcc \
29+ g++-10 \
30+ gcc-10 \
2431 ghc \
2532 git \
2633 libc6-dev \
2734 libcap-dev \
2835 libcap2 \
36+ libz-dev \
2937 locales \
3038 lua5.3 \
3139 make \
32- openjdk-14 -jdk \
33- openjdk-14 -jdk-headless \
34- openjdk-14 -jre \
35- openjdk-14 -jre-headless \
40+ openjdk-16 -jdk \
41+ openjdk-16 -jdk-headless \
42+ openjdk-16 -jre \
43+ openjdk-16 -jre-headless \
3644 python2.7 \
3745 python3-apt \
3846 python3-pip \
39- python3.8 \
47+ python3.9 \
4048 ruby2.7 \
41- xz-utils && \
49+ unzip \
50+ xz-utils \
51+ zlib1g-dev \
52+ && \
4253 apt-get autoremove -y && \
4354 apt-get clean
4455
45- RUN mkdir -p /opt/nodejs && \
46- wget https://nodejs.org/dist/v12.18.3/node-v12.18.3-linux-x64.tar.xz \
56+ RUN ls -l /usr/bin/ | grep -- '[^9] ->.*-9$' | sed -e 's@^.* \(.\+\) -> \(.\+\)-9$@ln -sf \2-10 /usr/bin/\1@' | bash && \
57+ mkdir -p /opt/nodejs && \
58+ wget https://nodejs.org/dist/v16.13.1/node-v16.13.1-linux-x64.tar.xz \
4759 -O - | tar -xJ -C /opt/nodejs --strip-components=1 && \
60+ mkdir -p /opt/go && \
61+ wget https://go.dev/dl/go1.18beta2.linux-amd64.tar.gz \
62+ -O - | tar -xz -C /opt/go --strip-components=1 && \
63+ mkdir -p /tmp/kotlin && \
64+ wget https://github.com/JetBrains/kotlin/releases/download/v1.6.10/kotlin-compiler-1.6.10.zip \
65+ -O /tmp/kotlin/compiler.zip && \
66+ unzip -d /usr/lib/jvm /tmp/kotlin/compiler.zip && \
67+ rm -rf /tmp/kotlin && \
68+ wget https://static.rust-lang.org/rustup/dist/x86_64-unknown-linux-gnu/rustup-init \
69+ -O /tmp/rustup-init && \
70+ chmod +x /tmp/rustup-init && \
71+ RUSTUP_HOME=/opt/rust/rustup CARGO_HOME=/opt/rust/cargo /tmp/rustup-init --no-modify-path --default-host=x86_64-unknown-linux-gnu --default-toolchain=stable --profile=default -y --quiet && \
72+ rm /tmp/rustup-init && \
4873 wget https://github.com/omegaup/karel.js/releases/download/v0.2.1/karel \
4974 -O /opt/nodejs/karel.wasm && \
5075 wget https://github.com/omegaup/karel.js/releases/download/v0.2.1/karel.js \
5176 -O /opt/nodejs/karel.js && \
5277 chmod +x /opt/nodejs/karel.wasm /opt/nodejs/karel.js && \
53- python3 -c 'import random; random.seed("Ω🔒"); open("/opt/nodejs/urandom", "wb").write(bytes(random.randint(0, 255) for _ in range(4096)))' && \
5478 wget https://raw.githubusercontent.com/omegaup/libkarel/v0.0.99/libkarel.py \
5579 -O /usr/lib/python2.7/libkarel.py && \
56- python3 -m pip install --target=/usr/lib/python3.8 /dist-packages \
57- libkarel==1.0.2 omegaup==1.1.1
80+ python3.9 -m pip install --target=/usr/lib/python3/dist-packages \
81+ libkarel==1.0.2 omegaup==1.5.0
5882
5983RUN mkdir /src
6084WORKDIR /src
@@ -71,19 +95,26 @@ RUN wget --quiet https://github.com/omegaup/libinteractive/releases/download/v2.
7195
7296RUN ln -s /opt/nodejs/bin/node /usr/bin/node && \
7397 ln -s /opt/nodejs/lib/node_modules /usr/lib/node_modules && \
98+ ln -s /opt/rust/rustup /etc/rustup && \
7499 mkdir -p /var/lib/omegajail/root/dev/ && \
75100 cp /dev/null /var/lib/omegajail/root/dev/null
76101
77102COPY --from=rootfs-build \
78- /var/lib/omegajail/root-openjdk /java-14 -openjdk-amd64/lib/server/classes.jsa \
79- /usr/lib/jvm/java-14 -openjdk-amd64/lib/server/classes.jsa
103+ /var/lib/omegajail/root-java /java-16 -openjdk-amd64/lib/server/classes.jsa \
104+ /usr/lib/jvm/java-16 -openjdk-amd64/lib/server/classes.jsa
80105COPY --from=rootfs-build \
81- /var/lib/omegajail/root-openjdk /java.base.so \
106+ /var/lib/omegajail/root-java /java.base.so \
82107 /usr/lib/jvm/java.base.so
108+ COPY --from=rootfs-build \
109+ /var/lib/omegajail/root-java/kotlin-stdlib.jar.so \
110+ /usr/lib/jvm/kotlin-stdlib.jar.so
83111COPY --from=rootfs-build \
84112 /var/lib/omegajail/root-dotnet/Main.runtimeconfig.json \
85113 /var/lib/omegajail/root-dotnet/Release.rsp \
86114 /usr/share/dotnet/
115+ COPY --from=rootfs-build \
116+ /var/lib/omegajail/root-compilers/rust-toolchain.toml \
117+ /rust-toolchain.toml
87118
88119COPY --from=omegaup/omegajail-builder-distrib /var/lib/omegajail/ /var/lib/omegajail
89120RUN mv /var/lib/omegajail/bin/omegajail /var/lib/omegajail/bin/omegajail.wrapped
0 commit comments