1.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2+++ b/Containerfile.dev Wed Jun 19 19:25:21 2024 -0400
1.3@@ -0,0 +1,42 @@
1.4+FROM localhost/archlinux:latest
1.5+RUN --network=host pacman -Sy uutils-coreutils sysstat iotop imagemagick giflib libgccjit libxaw snappy sbcl clang lld liburing libxkbcommon --noconfirm
1.6+# custom
1.7+ARG DEV=dev
1.8+ARG DEV_HOME=/home/${DEV}
1.9+ARG ID=808
1.10+# stage0
1.11+RUN mkdir -p /usr/share/lisp /usr/local/share/lisp /usr/local/share/rust
1.12+COPY .stash/bin/ /usr/local/bin/
1.13+COPY .stash/lib/ /usr/local/lib/
1.14+COPY .stash/include/ /usr/local/include/
1.15+COPY .stash/share/ /usr/local/share/
1.16+COPY .stash/src/ /usr/local/src/
1.17+WORKDIR /usr/local/src
1.18+RUN hg clone https://vc.compiler.company/comp/infra
1.19+WORKDIR infra
1.20+ENV CARGO_HOME="/usr/local/share/rust/cargo"
1.21+ENV RUSTUP_HOME="/usr/local/share/rust/rustup"
1.22+# stage1
1.23+ENV PATH="$PATH:/usr/local/share/rust/cargo/bin"
1.24+RUN skel run install-rocksdb-pack
1.25+RUN skel run install-emacs-mini-pack
1.26+RUN skel make tree-sitter
1.27+RUN skel make tree-sitter-langs
1.28+RUN useradd --system -s /usr/bin/bash -u ${ID} -m ${DEV}
1.29+RUN groupadd -g 128 engineer -U ${DEV}
1.30+RUN groupadd -g 256 operator -U ${DEV}
1.31+RUN chown -R ${DEV}:engineer /usr/local/share/
1.32+RUN chown -R ${DEV}:engineer /usr/local/src/
1.33+RUN chown -R ${DEV}:engineer /usr/local/bin/
1.34+RUN chown -R ${DEV}:engineer /usr/local/etc/
1.35+RUN chown -R ${DEV}:engineer /usr/local/man/
1.36+USER ${DEV}
1.37+RUN mkdir ${DEV_HOME}/.stash
1.38+RUN skel make quicklisp
1.39+RUN skel make rustup
1.40+RUN rustup default nightly
1.41+RUN rustup component add --toolchain nightly rust-src rust-analyzer rustc-dev llvm-tools-preview
1.42+WORKDIR ${DEV_HOME}
1.43+RUN rm -rf /usr/local/src/*
1.44+ENV DEV=${DEV}
1.45+ENV DEV_ID=${ID}
1.46\ No newline at end of file