-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
fae1898
commit fae139c
Showing
6 changed files
with
82 additions
and
149 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,67 +1,43 @@ | ||
FROM ubuntu:latest | ||
|
||
ENV DEBIAN_FRONTEND="noninteractive" TZ="Europe/London" | ||
RUN apt-get update && apt-get install -y \ | ||
build-essential clang curl jq moreutils sudo tar unzip wget xz-utils | ||
|
||
RUN useradd -m runner && echo "runner ALL=(ALL:ALL) NOPASSWD: ALL" > /etc/sudoers.d/runner | ||
USER runner | ||
RUN apt-get update && apt-get install -y \ | ||
build-essential clang coffeescript curl default-jdk default-jre erlang \ | ||
fp-compiler gdb lldb gforth gfortran git gnu-smalltalk gnucobol3 golang \ | ||
haskell-platform jq kotlin lua5.4 mono-complete moreutils nasm php ruby \ | ||
scala swi-prolog tar tcl unzip wget xz-utils \ | ||
&& apt-get clean | ||
RUN curl -fSL https://deb.nodesource.com/setup_lts.x | bash - \ | ||
&& apt-get install -y nodejs | ||
|
||
RUN curl \ | ||
-sSfL \ | ||
--proto '=https' \ | ||
--tlsv1.2 \ | ||
https://sh.rustup.rs | sh -s -- --default-toolchain stable -y | ||
RUN curl -fSL https://sh.rustup.rs | sh -s -- -y --default-toolchain stable | ||
ENV PATH="/root/.cargo/bin:$PATH" | ||
|
||
RUN curl \ | ||
-sSfL \ | ||
--proto '=https' \ | ||
--tlsv1.2 \ | ||
https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh | bash | ||
RUN curl -fSL \ | ||
https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh \ | ||
| bash | ||
RUN cargo install ripgrep --features pcre2 | ||
RUN cargo binstall --no-confirm hyperfine just timers juliaup | ||
|
||
ENV PATH="/home/runner/.cargo/bin:$PATH" | ||
RUN cargo binstall --no-confirm hyperfine just ripgrep timers | ||
RUN juliaup add release | ||
|
||
RUN cargo binstall --no-confirm juliaup && juliaup add release | ||
RUN curl -fsSL https://bun.sh/install | bash | ||
RUN curl -fsSL https://deno.land/x/install/install.sh | sh | ||
RUN sudo -E apt-get install -y coffeescript | ||
RUN sudo -E apt-get install -y erlang | ||
RUN sudo -E apt-get install -y fp-compiler | ||
RUN sudo -E apt-get install -y gforth | ||
RUN sudo -E apt-get install -y gfortran | ||
RUN sudo -E apt-get install -y gnu-smalltalk | ||
RUN sudo -E apt-get install -y gnucobol3 | ||
RUN sudo -E apt-get install -y haskell-platform | ||
RUN sudo -E apt-get install -y kotlin | ||
RUN sudo -E apt-get install -y lua5.4 | ||
RUN sudo -E apt-get install -y nasm | ||
RUN sudo -E apt-get install -y nodejs | ||
RUN sudo -E apt-get install -y php | ||
RUN sudo -E apt-get install -y scala | ||
RUN sudo -E apt-get install -y swi-prolog | ||
RUN sudo -E apt-get install -y tcl | ||
RUN curl -fSL https://bun.sh/install | bash | ||
ENV PATH="/root/.bun/bin:$PATH" | ||
|
||
RUN curl -fsSL https://crystal-lang.org/install.sh | sudo bash | ||
RUN curl -fSL https://deno.land/x/install/install.sh | sh | ||
ENV PATH="/root/.deno/bin:$PATH" | ||
|
||
RUN curl \ | ||
-sSfL \ | ||
--proto '=https' \ | ||
--tlsv1.2 \ | ||
https://nim-lang.org/choosenim/init.sh | sh -s -- -y | ||
ENV PATH="/home/runner/.nimble/bin:$PATH" | ||
RUN curl -fSL https://crystal-lang.org/install.sh | bash | ||
|
||
RUN sudo mkdir -p /opt/zig && cd $_ && \ | ||
wget \ | ||
--quiet \ | ||
-O zig.tar.xz \ | ||
$(curl --silent https://ziglang.org/download/index.json | jq -r '.[keys_unsorted[1]]["x86_64-linux"].tarball') && \ | ||
tar -xvf zig.tar.xz --strip-components=1 2>&1 >/dev/null | ||
ENV PATH="/opt/zig:$PATH" | ||
RUN curl -fSL https://nim-lang.org/choosenim/init.sh | sh -s -- -y | ||
ENV PATH="/root/.nimble/bin:$PATH" | ||
|
||
# FIXME: https://github.com/mono/mono/issues/21423 | ||
# installing gdb/lldb provide a better error message when mono-devel fails to install | ||
RUN sudo -E apt-get install -y gdb lldb | ||
RUN sudo -E apt-get install -y mono-complete | ||
RUN cd && curl -fSL "$(curl -fSL https://ziglang.org/download/index.json | jq -r '.[keys_unsorted[1]]["x86_64-linux"].tarball')" \ | ||
> zig.tar.xz \ | ||
&& mkdir -p "/root/.zig" \ | ||
&& tar -xvf zig.tar.xz --strip-components=1 -C "/root/.zig" \ | ||
&& rm zig.tar.xz | ||
ENV PATH="/root/.zig:$PATH" | ||
|
||
# TODO: when this docker image works, get CI to use it | ||
WORKDIR /var/count |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters