changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > infra > pod / Containerfile.dev

changeset 40: 90970dfd5a8b
parent: 60461d073737
child: 7b2e34e1c161
author: Richard Westhaver <ellis@rwest.io>
date: Tue, 24 Sep 2024 15:02:27 -0400
permissions: -rw-r--r--
description: merge
1 FROM localhost/archlinux:latest
2 RUN --network=host pacman -Sy uutils-coreutils sysstat iotop imagemagick giflib libgccjit libxaw snappy llvm clang lld liburing libxkbcommon --noconfirm
3 ARG DEV=dev
4 ARG DEV_HOME=/home/${DEV}
5 ARG DEV_ID=808
6 RUN mkdir -p /usr/share/lisp /usr/local/share/lisp /usr/local/share/rust /opt/store /opt/stash
7 RUN useradd --system -s /usr/bin/bash -u ${DEV_ID} -m ${DEV} -G wheel
8 RUN groupadd -g 128 engineer -U ${DEV}
9 RUN groupadd -g 256 operator -U ${DEV}
10 RUN chown -R ${DEV}:engineer /usr/local/share/
11 RUN chown -R ${DEV}:engineer /usr/local/src/
12 RUN chown -R ${DEV}:engineer /usr/local/bin/
13 RUN chown -R ${DEV}:engineer /usr/local/etc/
14 RUN chown -R ${DEV}:engineer /usr/local/lib/
15 RUN chown -R ${DEV}:engineer /usr/local/include/
16 RUN chown -R ${DEV}:engineer /usr/local/man/
17 RUN ssh-keygen -A
18 RUN pacman -Scc --noconfirm
19 USER ${DEV}
20 RUN mkdir -p ${DEV_HOME}/.stash/lisp
21 WORKDIR ${DEV_HOME}/.stash
22 RUN hg clone https://vc.compiler.company/infra
23 WORKDIR infra
24 ENV CARGO_HOME="/usr/local/share/rust/cargo"
25 ENV RUSTUP_HOME="/usr/local/share/rust/rustup"
26 RUN ./bootstrap.sh
27 RUN mv .stash/bin/core /usr/local/bin/core
28 RUN ln -sf /usr/local/bin/core /usr/local/bin/skel
29 RUN ln -sf /usr/local/bin/core /usr/local/bin/homer
30 ENV PATH="$PATH:/usr/local/share/rust/cargo/bin"
31 RUN ./scripts/install-rocksdb-pack.sh
32 RUN skel build tree-sitter
33 RUN skel install tree-sitter tree-sitter-langs
34 RUN mv .stash/lib/** /usr/local/lib/
35 RUN mv .stash/share/lisp/** /usr/local/share/lisp/
36 RUN mv .stash/bin/* /usr/local/bin/
37 RUN skel install quicklisp
38 RUN skel install rustup
39 RUN rustup default nightly
40 RUN rustup component add --toolchain nightly rust-src rust-analyzer rustc-dev llvm-tools-preview
41 WORKDIR ${DEV_HOME}
42 RUN rm -rf ${DEV_HOME}/.stash/*
43 RUN hg clone https://vc.compiler.company/home .stash/home && cd .stash/home && hg up ${DEV}
44 RUN cp .stash/home/.homerc ${DEV_HOME}/.homerc
45 RUN homer install
46 ENV DEV=${DEV}
47 ENV DEV_ID=${DEV_ID}
48 ENV DEV_HOME=${DEV_HOME}
49 ENTRYPOINT ["/usr/bin/bash"]