changelog shortlog graph tags branches changeset file revisions annotate raw help

Mercurial > infra > pod / Containerfile.box

revision 0: 98aa8d30816a
child 1: 0d37b97f681e
     1.1--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2+++ b/Containerfile.box	Fri Jun 14 19:15:37 2024 +0000
     1.3@@ -0,0 +1,52 @@
     1.4+FROM localhost/archlinux:latest
     1.5+RUN --network=host pacman -Sy uutils-coreutils sysstat iotop imagemagick giflib libgccjit libxaw snappy sbcl 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
    1.12+WORKDIR /usr/local/src
    1.13+RUN hg clone https://vc.compiler.company/comp/infra
    1.14+RUN hg clone https://vc.compiler.company/comp/core
    1.15+WORKDIR infra
    1.16+ENV CARGO_HOME="/usr/local/share/cargo"
    1.17+ENV RUSTUP_HOME="/usr/local/share/rustup"
    1.18+# stage1
    1.19+RUN ./bootstrap.sh
    1.20+ENV PATH="$PATH:/usr/local/share/cargo/bin"
    1.21+RUN .stash/bin/sk make rustup
    1.22+RUN rustup update
    1.23+# dev rustc components
    1.24+RUN rustup default nightly
    1.25+RUN rustup component add --toolchain nightly rust-src rust-analyzer rustc-dev llvm-tools-preview
    1.26+RUN .stash/bin/sk make sbcl
    1.27+RUN .stash/bin/sk make quicklisp
    1.28+RUN .stash/bin/sk make sbcl-install
    1.29+RUN .stash/bin/sk make tree-sitter
    1.30+RUN .stash/bin/sk make tree-sitter-langs
    1.31+RUN .stash/bin/sk make emacs-mini
    1.32+RUN .stash/bin/sk make emacs-install
    1.33+RUN .stash/bin/sk make rocksdb
    1.34+RUN .stash/bin/sk make rocksdb-install
    1.35+#ADD etc/sbclrc /etc/sbclrc
    1.36+#COPY etc/skel/ /etc/skel/
    1.37+#ADD etc/shells /etc/
    1.38+RUN useradd --system -s /usr/bin/bash -u ${ID} -k /etc/skel -m ${DEV}
    1.39+RUN groupadd -g 128 engineer -U ${DEV}
    1.40+RUN groupadd -g 256 operator -U ${DEV}
    1.41+# RUN make core-install
    1.42+WORKDIR /usr/local/src
    1.43+RUN cp -rf core/lisp /usr/local/share/lisp/core
    1.44+RUN rm -rf ./*
    1.45+RUN chown -R ${DEV}:engineer /usr/local/share/
    1.46+RUN chown -R ${DEV}:engineer /usr/local/src/
    1.47+RUN chown -R ${DEV}:engineer /usr/local/bin/
    1.48+RUN chown -R ${DEV}:engineer /usr/local/etc/
    1.49+RUN chown -R ${DEV}:engineer /usr/local/man/
    1.50+USER ${DEV}
    1.51+WORKDIR ${DEV_HOME}
    1.52+RUN hg clone https://vc.compiler.company/comp/infra
    1.53+RUN hg clone https://vc.compiler.company/comp/core
    1.54+ENV DEV=${DEV}
    1.55+ENV DEV_ID=${ID}
    1.56\ No newline at end of file