changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > infra > pod / Containerfile.dev

changeset 13: 43c84d8fb729
parent: a67e164d4def
child: 6cb3bf451afc
author: Richard Westhaver <ellis@rwest.io>
date: Sun, 07 Jul 2024 00:22:10 -0400
permissions: -rw-r--r--
description: rename base to scratch, update devbox
1 FROM localhost/archlinux:latest
2 RUN --network=host pacman -Sy uutils-coreutils sysstat iotop imagemagick giflib libgccjit libxaw snappy sbcl llvm clang lld liburing libxkbcommon --noconfirm
3 # custom
4 ARG DEV=dev
5 ARG DEV_HOME=/home/${DEV}
6 ARG DEV_ID=808
7 # stage0
8 RUN mkdir -p /usr/share/lisp /usr/local/share/lisp /usr/local/share/rust
9 # COPY .stash/bin/ /usr/local/bin/
10 # COPY .stash/lib/ /usr/local/lib/
11 # COPY .stash/include/ /usr/local/include/
12 # COPY .stash/share/ /usr/local/share/
13 # COPY .stash/src/ /usr/local/src/
14 WORKDIR /usr/local/src
15 RUN hg clone https://vc.compiler.company/comp/infra
16 WORKDIR infra
17 ENV CARGO_HOME="/usr/local/share/rust/cargo"
18 ENV RUSTUP_HOME="/usr/local/share/rust/rustup"
19 # stage1
20 RUN ./bootstrap.sh
21 RUN install -m 755 .stash/bin/* /usr/local/bin/
22 RUN mv .stash/lib/** /usr/local/lib/
23 RUN mv .stash/share/lisp/** /usr/local/share/lisp/
24 ENV PATH="$PATH:/usr/local/share/rust/cargo/bin"
25 RUN skel run install-rocksdb-pack
26 RUN skel make tree-sitter
27 RUN skel make tree-sitter-install
28 RUN skel make tree-sitter-langs
29 RUN useradd --system -s /usr/bin/bash -u ${DEV_ID} -m ${DEV}
30 RUN groupadd -g 128 engineer -U ${DEV}
31 RUN groupadd -g 256 operator -U ${DEV}
32 RUN chown -R ${DEV}:engineer /usr/local/share/
33 RUN chown -R ${DEV}:engineer /usr/local/src/
34 RUN chown -R ${DEV}:engineer /usr/local/bin/
35 RUN chown -R ${DEV}:engineer /usr/local/etc/
36 RUN chown -R ${DEV}:engineer /usr/local/man/
37 USER ${DEV}
38 RUN mkdir ${DEV_HOME}/.stash
39 RUN skel make quicklisp
40 RUN skel make rustup
41 RUN rustup default nightly
42 RUN rustup component add --toolchain nightly rust-src rust-analyzer rustc-dev llvm-tools-preview
43 WORKDIR ${DEV_HOME}
44 RUN rm -rf /usr/local/src/*
45 ENV DEV=${DEV}
46 ENV DEV_ID=${DEV_ID}
47 ENTRYPOINT ["/usr/bin/bash"]