changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > infra > pod / Containerfile.dev

changeset 14: 6cb3bf451afc
parent: 43c84d8fb729
child: 21250ff5559c
author: Richard Westhaver <ellis@rwest.io>
date: Sun, 07 Jul 2024 02:00:14 -0400
permissions: -rw-r--r--
description: dev tweaks
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 RUN useradd --system -s /usr/bin/bash -u ${DEV_ID} -m ${DEV}
15 RUN groupadd -g 128 engineer -U ${DEV}
16 RUN groupadd -g 256 operator -U ${DEV}
17 RUN chown -R ${DEV}:engineer /usr/local/share/
18 RUN chown -R ${DEV}:engineer /usr/local/src/
19 RUN chown -R ${DEV}:engineer /usr/local/bin/
20 RUN chown -R ${DEV}:engineer /usr/local/etc/
21 RUN chown -R ${DEV}:engineer /usr/local/lib/
22 RUN chown -R ${DEV}:engineer /usr/local/man/
23 USER ${DEV}
24 RUN mkdir ${DEV_HOME}/.stash
25 WORKDIR /usr/local/src
26 RUN hg clone https://vc.compiler.company/comp/infra
27 WORKDIR infra
28 ENV CARGO_HOME="/usr/local/share/rust/cargo"
29 ENV RUSTUP_HOME="/usr/local/share/rust/rustup"
30 # stage1
31 RUN ./bootstrap.sh
32 RUN install -m 755 .stash/bin/* /usr/local/bin/
33 RUN mv .stash/lib/** /usr/local/lib/
34 RUN mv .stash/share/lisp/** /usr/local/share/lisp/
35 ENV PATH="$PATH:/usr/local/share/rust/cargo/bin"
36 RUN skel run install-rocksdb-pack
37 RUN skel make tree-sitter
38 RUN skel make tree-sitter-install
39 RUN skel make tree-sitter-langs
40 RUN skel make quicklisp
41 RUN skel make rustup
42 RUN rustup default nightly
43 RUN rustup component add --toolchain nightly rust-src rust-analyzer rustc-dev llvm-tools-preview
44 WORKDIR ${DEV_HOME}
45 RUN rm -rf /usr/local/src/*
46 ENV DEV=${DEV}
47 ENV DEV_ID=${DEV_ID}
48 ENTRYPOINT ["/usr/bin/bash"]