Skip to content

Commit a1ef207

Browse files
reduced layers
1 parent f6515a8 commit a1ef207

1 file changed

Lines changed: 104 additions & 129 deletions

File tree

Dockerfile

Lines changed: 104 additions & 129 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ ENV DEBIAN_FRONTEND=noninteractive
44

55
RUN sed -i 's/main$/main contrib non-free non-free-firmware/' /etc/apt/sources.list && \
66
apt-get update
7+
8+
RUN apt-get install -y --no-install-recommends firejail
9+
710
RUN apt-get install -y \
811
apt-utils \
912
curl \
@@ -48,139 +51,133 @@ RUN apt-get install -y \
4851
# Fortran
4952
gfortran \
5053
# Algol
51-
algol68g
54+
algol68g \
55+
# Prolog
56+
swi-prolog \
57+
# Forth
58+
gforth \
59+
# Pascal
60+
fpc \
61+
# OCaml
62+
ocaml \
63+
# Scheme
64+
guile-3.0 \
65+
# Smalltalk
66+
gnu-smalltalk \
67+
# Groovy
68+
groovy \
69+
# Scala
70+
scala \
71+
# Racket
72+
racket \
73+
# Tcl
74+
tcl \
75+
# PostScript
76+
ghostscript \
77+
# Lua
78+
lua5.4 \
79+
# D
80+
gdc \
81+
# Verilog
82+
iverilog \
83+
# VHDL
84+
ghdl \
85+
# Octave
86+
octave \
87+
# COQ
88+
coq
5289

53-
RUN apt install -y --no-install-recommends firejail
5490
##################################################################################
55-
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y make
91+
RUN apt-get install -y make
5692

5793
### JAVA
58-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y default-jdk
59-
#RUN curl -O https://download.oracle.com/java/23/latest/jdk-23_linux-x64_bin.deb \
60-
# && dpkg -i jdk-23_linux-x64_bin.deb \
61-
# && rm jdk-23_linux-x64_bin.deb
62-
63-
64-
94+
#RUN apt-get install -y default-jdk
95+
RUN curl -O https://download.oracle.com/java/23/latest/jdk-23_linux-x64_bin.deb \
96+
&& dpkg -i jdk-23_linux-x64_bin.deb \
97+
&& rm jdk-23_linux-x64_bin.deb
6598

6699
### R
67-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y r-base
68-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y r-cran-car
69-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y r-cran-mapdata
70-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y r-cran-reshape
100+
RUN apt-get install -y r-base \
101+
r-cran-car \
102+
r-cran-mapdata \
103+
r-cran-reshape
71104

72105
### Julia
73-
#RUN curl -fsSL https://install.julialang.org | sh -s -- -y
106+
RUN curl -fsSL https://install.julialang.org | sh -s -- -y
74107

75108
### Zig
76-
#RUN curl -fLO https://ziglang.org/download/0.13.0/zig-linux-x86_64-0.13.0.tar.xz \
77-
# && tar -xf zig-linux-x86_64-0.13.0.tar.xz \
78-
# && rm zig-linux-x86_64-0.13.0.tar.xz \
79-
# && mv zig-linux-x86_64-0.13.0/ /opt/ \
80-
# && ln -s /opt/zig-linux-x86_64-0.13.0/zig /usr/local/bin/zig
109+
RUN curl -fLO https://ziglang.org/download/0.13.0/zig-linux-x86_64-0.13.0.tar.xz \
110+
&& tar -xf zig-linux-x86_64-0.13.0.tar.xz \
111+
&& rm zig-linux-x86_64-0.13.0.tar.xz \
112+
&& mv zig-linux-x86_64-0.13.0/ /opt/ \
113+
&& ln -s /opt/zig-linux-x86_64-0.13.0/zig /usr/local/bin/zig
81114

82115
### Nim
83-
#RUN curl -O https://nim-lang.org/choosenim/init.sh -sSf \
84-
# && sh init.sh -y \
85-
# && ln -s /root/.nimble/bin/nim /usr/local/bin/nim
86-
87-
116+
RUN curl -O https://nim-lang.org/choosenim/init.sh -sSf \
117+
&& sh init.sh -y \
118+
&& ln -s /root/.nimble/bin/nim /usr/local/bin/nim
88119

89120
### V-lang
90-
#RUN git clone https://github.com/vlang/v
91-
#RUN cd v &&\
92-
# make && \
93-
# ./v symlink
121+
RUN git clone https://github.com/vlang/v
122+
RUN cd v &&\
123+
make && \
124+
./v symlink
94125

95126
### Python3
96-
#RUN DEBIAN_FRONTEND=noninteractive pip3 install \
97-
# matplotlib \
98-
# numpy \
99-
# opencv-python opencv-contrib-python \
100-
# pyarrow \
101-
# pandas \
102-
# scipy \
103-
# sympy \
104-
# pyyaml
105-
106-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y \
107-
# ffmpeg \
108-
# libcairo2-dev \
109-
# libpango1.0-dev
110-
#RUN DEBIAN_FRONTEND=noninteractive pip3 install \
111-
# pycairo \
112-
# manim
113-
114-
127+
RUN apt-get install -y \
128+
ninja-build \
129+
ffmpeg \
130+
libcairo2-dev \
131+
libpango1.0-dev
132+
133+
# Install the latest version of meson
134+
RUN pip3 install --upgrade meson
135+
136+
RUN pip3 install \
137+
matplotlib \
138+
numpy \
139+
opencv-python opencv-contrib-python \
140+
pyarrow \
141+
pandas \
142+
scipy \
143+
sympy \
144+
pyyaml \
145+
pycairo \
146+
manim
115147

116148
### Clojure
117-
#RUN curl -L -O https://github.com/clojure/brew-install/releases/latest/download/linux-install.sh \
118-
# && chmod +x linux-install.sh \
119-
# && ./linux-install.sh \
120-
# && rm linux-install.sh \
121-
# && clojure -e "(println \"First run clojure to install libs...\")"
122-
123-
149+
RUN curl -L -O https://github.com/clojure/brew-install/releases/latest/download/linux-install.sh \
150+
&& chmod +x linux-install.sh \
151+
&& ./linux-install.sh \
152+
&& rm linux-install.sh \
153+
&& clojure -e "(println \"First run clojure to install libs...\")"
124154

125155
### APL
126-
#RUN curl -O https://www.dyalog.com/uploads/php/download.dyalog.com/download.php?file=19.0/linux_64_19.0.50027_unicode.x86_64.deb \
127-
# && dpkg -i linux_64_19.0.50027_unicode.x86_64.deb \
128-
# && rm linux_64_19.0.50027_unicode.x86_64.deb
129-
130-
### Prolog
131-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y swi-prolog
132-
133-
### Forth
134-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y gforth
135-
136-
### Pascal
137-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y fpc
156+
RUN curl -O https://www.dyalog.com/uploads/php/download.dyalog.com/download.php?file=19.0/linux_64_19.0.50027_unicode.x86_64.deb \
157+
&& dpkg -i linux_64_19.0.50027_unicode.x86_64.deb \
158+
&& rm linux_64_19.0.50027_unicode.x86_64.deb
138159

139160

140-
### OCaml
141-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y ocaml
142-
143-
### Scheme
144-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y guile-3.0
145-
146-
### Smalltalk
147-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y gnu-smalltalk
148-
149-
### Prolog
150-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y swi-prolog
151-
152-
### Groovy
153-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y groovy
154-
155-
### Scala
156-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y scala
157-
158-
### Racket
159-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y racket
160-
161-
### Tcl
162-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y tcl
163-
164161
### IO
165162
# Install dependencies
166-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y libffi-dev \
167-
# cmake \
168-
# libpcre3-dev \
169-
# libxml2-dev \
170-
# libssl-dev \
171-
# zlib1g-dev \
172-
# git
163+
RUN apt-get install -y libffi-dev \
164+
cmake \
165+
libpcre3-dev \
166+
libxml2-dev \
167+
libssl-dev \
168+
zlib1g-dev \
169+
git
173170

174171
# Clone the Io language repository with submodules
175-
#RUN git clone --recurse-submodules https://github.com/IoLanguage/io.git && \
176-
# cd io && \
177-
# mkdir build && \
178-
# cd build && \
179-
# cmake .. && \
180-
# make && \
181-
# make install && \
182-
# cd ../.. && \
183-
# rm -rf io
172+
RUN git clone --recurse-submodules https://github.com/IoLanguage/io.git && \
173+
cd io && \
174+
mkdir build && \
175+
cd build && \
176+
cmake .. && \
177+
make && \
178+
make install && \
179+
cd ../.. && \
180+
rm -rf io
184181

185182
### Kotlin
186183
# Install SDKMAN
@@ -196,29 +193,7 @@ RUN DEBIAN_FRONTEND=noninteractive apt-get install -y make
196193
# Verify installation
197194
#RUN kotlin -version
198195

199-
### PostScript
200-
#RUN sed -i 's/main$/main contrib non-free non-free-firmware/' /etc/apt/sources.list && \
201-
# DEBIAN_FRONTEND=noninteractive apt-get update && \
202-
# DEBIAN_FRONTEND=noninteractive apt-get install -y ghostscript
203-
204-
205-
### Lua
206-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y lua5.4
207-
208-
### D
209-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y gdc
210-
211-
### Verilog
212-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y iverilog
213-
214-
### VHDL
215-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y ghdl
216-
217-
### Octave
218-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y octave
219196

220-
### COQ
221-
#RUN DEBIAN_FRONTEND=noninteractive apt-get install -y coq
222197

223198
#############################################################################################
224199
COPY . /coderunner

0 commit comments

Comments
 (0)