1.1--- a/.hgsubstate Tue May 21 17:17:36 2024 -0400
1.2+++ b/.hgsubstate Fri May 24 20:01:52 2024 +0000
1.3@@ -1,2 +1,2 @@
1.4-0000000000000000000000000000000000000000 etc
1.5-0000000000000000000000000000000000000000 home
1.6+3637c633768a600b964bcb567a3b0ba195963706 etc
1.7+13e2311f62218eb153de54dd7c51e422567df0ed home
2.1--- a/Containerfile.alpine Tue May 21 17:17:36 2024 -0400
2.2+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
2.3@@ -1,2 +0,0 @@
2.4-FROM alpine:latest
2.5-RUN apk add --no-cache openssh mercurial wireguard-tools liburing
2.6\ No newline at end of file
3.1--- a/Containerfile.archlinux Tue May 21 17:17:36 2024 -0400
3.2+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
3.3@@ -1,4 +0,0 @@
3.4-FROM archlinux:latest
3.5-RUN --network=host pacman-key --init
3.6-RUN --network=host pacman-key --populate archlinux
3.7-RUN --network=host pacman -Syu base-devel less uutils-coreutils openssh mercurial git sqlite btrfs-progs liburing wireguard-tools clang tree-sitter libxcb glibc openssl zstd --noconfirm
3.8\ No newline at end of file
4.1--- a/Containerfile.archriscv Tue May 21 17:17:36 2024 -0400
4.2+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
4.3@@ -1,2 +0,0 @@
4.4-FROM --platform=linux/riscv64 riscfive/archlinux
4.5-RUN pacman -Syu
4.6\ No newline at end of file
6.1--- a/Containerfile.box Tue May 21 17:17:36 2024 -0400
6.2+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
6.3@@ -1,58 +0,0 @@
6.4-FROM localhost/archlinux:latest
6.5-RUN --network=host pacman -Sy uutils-coreutils sysstat iotop imagemagick giflib libgccjit libxaw snappy sbcl liburing libxkbcommon nuklear --noconfirm
6.6-# VOLUME /opt/store
6.7-# VOLUME /opt/stash
6.8-# custom
6.9-ARG DEV=dev
6.10-ARG DEV_HOME=/home/${DEV}
6.11-ARG ID=808
6.12-# stage0
6.13-RUN mkdir -p /usr/share/lisp /usr/local/share/lisp
6.14-WORKDIR /usr/local/src
6.15-RUN hg clone https://vc.compiler.company/comp/infra
6.16-RUN hg clone https://vc.compiler.company/comp/core
6.17-WORKDIR infra
6.18-RUN make build
6.19-ENV CARGO_HOME="/usr/local/share/cargo"
6.20-ENV RUSTUP_HOME="/usr/local/share/rustup"
6.21-# stage1
6.22-RUN make rustup-install
6.23-ENV PATH="$PATH:/usr/local/share/cargo/bin"
6.24-RUN rustup update
6.25-# dev rustc components
6.26-RUN rustup default nightly
6.27-RUN rustup component add --toolchain nightly rust-src rust-analyzer rustc-dev llvm-tools-preview
6.28-# RUN sh scripts/install-nushell-pack.sh
6.29-# RUN sh scripts/install-emacs-pack.sh
6.30-# RUN sh scripts/install-sbcl-pack.sh
6.31-# RUN sh scripts/install-rocksdb-pack.sh
6.32-# RUN sh scripts/install-cargo-tools.sh
6.33-RUN make sbcl-install
6.34-RUN make quicklisp-install
6.35-RUN make tree-sitter-install
6.36-RUN make tree-sitter-langs-install
6.37-RUN make emacs-build-mini
6.38-RUN make emacs-install
6.39-RUN make rocksdb-build-shared
6.40-RUN make rocksdb-install
6.41-ADD etc/sbclrc /etc/sbclrc
6.42-COPY etc/skel/ /etc/skel/
6.43-ADD etc/shells /etc/
6.44-RUN useradd --system -s /usr/bin/bash -u ${ID} -k /etc/skel -m ${DEV}
6.45-RUN groupadd -g 128 engineer -U ${DEV}
6.46-RUN groupadd -g 256 operator -U ${DEV}
6.47-# RUN make core-install
6.48-WORKDIR /usr/local/src
6.49-RUN cp -rf core/lisp /usr/local/share/lisp/core
6.50-RUN rm -rf ./*
6.51-RUN chown -R ${DEV}:engineer /usr/local/share/
6.52-RUN chown -R ${DEV}:engineer /usr/local/src/
6.53-RUN chown -R ${DEV}:engineer /usr/local/bin/
6.54-RUN chown -R ${DEV}:engineer /usr/local/etc/
6.55-RUN chown -R ${DEV}:engineer /usr/local/man/
6.56-USER ${DEV}
6.57-WORKDIR ${DEV_HOME}
6.58-RUN hg clone https://vc.compiler.company/comp/infra
6.59-RUN hg clone https://vc.compiler.company/comp/core
6.60-ENV DEV=${DEV}
6.61-ENV DEV_ID=${ID}
6.62\ No newline at end of file
7.1--- a/Containerfile.fedora.arm64v8 Tue May 21 17:17:36 2024 -0400
7.2+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
7.3@@ -1,1 +0,0 @@
7.4-FROM arm64v8/fedora:latest
7.5\ No newline at end of file
8.1--- a/Containerfile.mail Tue May 21 17:17:36 2024 -0400
8.2+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
8.3@@ -1,1 +0,0 @@
8.4-FROM stalwartlabs/mail-server:latest
8.5\ No newline at end of file
9.1--- a/Containerfile.operator Tue May 21 17:17:36 2024 -0400
9.2+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
9.3@@ -1,2 +0,0 @@
9.4-FROM localhost/box:latest
9.5-RUN infra/scripts/wg-gen-keys.sh private.key public.key
9.6\ No newline at end of file
10.1--- a/Containerfile.ubuntu Tue May 21 17:17:36 2024 -0400
10.2+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
10.3@@ -1,4 +0,0 @@
10.4-FROM ubuntu:latest
10.5-RUN apt-get update
10.6-RUN apt -y install git ssh python3-pip
10.7-RUN pip install mercurial --upgrade
10.8\ No newline at end of file
11.1--- a/Containerfile.vc Tue May 21 17:17:36 2024 -0400
11.2+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
11.3@@ -1,4 +0,0 @@
11.4-FROM octobus/heptapod:latest
11.5-RUN gitlab-ctl upgrade
11.6-# TODO: configure instance here, pull from comp/etc
11.7-# COPY etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb
11.8\ No newline at end of file
12.1--- a/Containerfile.vc-runner Tue May 21 17:17:36 2024 -0400
12.2+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
12.3@@ -1,8 +0,0 @@
12.4-FROM localhost/worker:latest
12.5-USER root
12.6-RUN curl -L --output /usr/local/bin/gitlab-runner https://download.heptapod.net/runner/runner/latest/binaries/heptapod-runner-linux-amd64
12.7-ARG RUNNER_TOKEN
12.8-RUN chmod +x /usr/local/bin/gitlab-runner
12.9-RUN echo ${WORKER_USER}
12.10-RUN echo ${WORKER_HOME}
12.11-RUN gitlab-runner install --user=${WORKER_USER} --working-directory=${WORKER_HOME}
12.12\ No newline at end of file
13.1--- a/Containerfile.worker Tue May 21 17:17:36 2024 -0400
13.2+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
13.3@@ -1,29 +0,0 @@
13.4-FROM localhost/alpine:latest
13.5-# VOLUME /opt/store
13.6-# VOLUME /opt/stash
13.7-ADD etc/skel/* /etc/skel/
13.8-ARG ID=908
13.9-ARG WORKER=worker
13.10-ARG WORKER_HOME=/home/${WORKER}
13.11-RUN apk add build-base zstd-dev curl make git linux-headers openssl-dev pkgconf clang m4 tree-sitter
13.12-RUN mkdir /usr/share/lisp
13.13-RUN mkdir /usr/local/share/lisp
13.14-WORKDIR /usr/local/src
13.15-RUN hg clone https://vc.compiler.company/comp/infra
13.16-RUN hg clone https://vc.compiler.company/comp/core
13.17-WORKDIR infra
13.18-ENV CARGO_HOME="/usr/local/share/cargo"
13.19-ENV RUSTUP_HOME="/usr/local/share/rustup"
13.20-RUN make build rustup-install tree-sitter-langs-install
13.21-ENV PATH="$PATH:/usr/local/share/cargo/bin"
13.22-RUN rustup update
13.23-#RUN rustup default nightly # disabled due to issue with zellij build
13.24-ADD etc/sbclrc /etc/sbclrc
13.25-RUN cd .. && rm -rf infra core
13.26-RUN adduser -D -u ${ID} -k /etc/skel ${WORKER}
13.27-USER ${WORKER}
13.28-WORKDIR ${WORKER_HOME}
13.29-ENV WORKER=${WORKER}
13.30-ENV WORKER_ID=${ID}
13.31-ENV WORKER_HOME=${WORKER_HOME}
13.32-ENTRYPOINT ["sh"]
13.33\ No newline at end of file
14.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
14.2+++ b/containers/Containerfile.alpine Fri May 24 20:01:52 2024 +0000
14.3@@ -0,0 +1,2 @@
14.4+FROM alpine:latest
14.5+RUN apk add --no-cache openssh mercurial wireguard-tools liburing
14.6\ No newline at end of file
15.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
15.2+++ b/containers/Containerfile.archlinux Fri May 24 20:01:52 2024 +0000
15.3@@ -0,0 +1,4 @@
15.4+FROM archlinux:latest
15.5+RUN --network=host pacman-key --init
15.6+RUN --network=host pacman-key --populate archlinux
15.7+RUN --network=host pacman -Syu base-devel less uutils-coreutils openssh mercurial git sqlite btrfs-progs liburing wireguard-tools clang tree-sitter libxcb glibc openssl zstd --noconfirm
15.8\ No newline at end of file
16.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
16.2+++ b/containers/Containerfile.archriscv Fri May 24 20:01:52 2024 +0000
16.3@@ -0,0 +1,2 @@
16.4+FROM --platform=linux/riscv64 riscfive/archlinux
16.5+RUN pacman -Syu
16.6\ No newline at end of file
18.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
18.2+++ b/containers/Containerfile.box Fri May 24 20:01:52 2024 +0000
18.3@@ -0,0 +1,58 @@
18.4+FROM localhost/archlinux:latest
18.5+RUN --network=host pacman -Sy uutils-coreutils sysstat iotop imagemagick giflib libgccjit libxaw snappy sbcl liburing libxkbcommon nuklear --noconfirm
18.6+# VOLUME /opt/store
18.7+# VOLUME /opt/stash
18.8+# custom
18.9+ARG DEV=dev
18.10+ARG DEV_HOME=/home/${DEV}
18.11+ARG ID=808
18.12+# stage0
18.13+RUN mkdir -p /usr/share/lisp /usr/local/share/lisp
18.14+WORKDIR /usr/local/src
18.15+RUN hg clone https://vc.compiler.company/comp/infra
18.16+RUN hg clone https://vc.compiler.company/comp/core
18.17+WORKDIR infra
18.18+RUN make build
18.19+ENV CARGO_HOME="/usr/local/share/cargo"
18.20+ENV RUSTUP_HOME="/usr/local/share/rustup"
18.21+# stage1
18.22+RUN make rustup-install
18.23+ENV PATH="$PATH:/usr/local/share/cargo/bin"
18.24+RUN rustup update
18.25+# dev rustc components
18.26+RUN rustup default nightly
18.27+RUN rustup component add --toolchain nightly rust-src rust-analyzer rustc-dev llvm-tools-preview
18.28+# RUN sh scripts/install-nushell-pack.sh
18.29+# RUN sh scripts/install-emacs-pack.sh
18.30+# RUN sh scripts/install-sbcl-pack.sh
18.31+# RUN sh scripts/install-rocksdb-pack.sh
18.32+# RUN sh scripts/install-cargo-tools.sh
18.33+RUN make sbcl-install
18.34+RUN make quicklisp-install
18.35+RUN make tree-sitter-install
18.36+RUN make tree-sitter-langs-install
18.37+RUN make emacs-build-mini
18.38+RUN make emacs-install
18.39+RUN make rocksdb-build-shared
18.40+RUN make rocksdb-install
18.41+ADD etc/sbclrc /etc/sbclrc
18.42+COPY etc/skel/ /etc/skel/
18.43+ADD etc/shells /etc/
18.44+RUN useradd --system -s /usr/bin/bash -u ${ID} -k /etc/skel -m ${DEV}
18.45+RUN groupadd -g 128 engineer -U ${DEV}
18.46+RUN groupadd -g 256 operator -U ${DEV}
18.47+# RUN make core-install
18.48+WORKDIR /usr/local/src
18.49+RUN cp -rf core/lisp /usr/local/share/lisp/core
18.50+RUN rm -rf ./*
18.51+RUN chown -R ${DEV}:engineer /usr/local/share/
18.52+RUN chown -R ${DEV}:engineer /usr/local/src/
18.53+RUN chown -R ${DEV}:engineer /usr/local/bin/
18.54+RUN chown -R ${DEV}:engineer /usr/local/etc/
18.55+RUN chown -R ${DEV}:engineer /usr/local/man/
18.56+USER ${DEV}
18.57+WORKDIR ${DEV_HOME}
18.58+RUN hg clone https://vc.compiler.company/comp/infra
18.59+RUN hg clone https://vc.compiler.company/comp/core
18.60+ENV DEV=${DEV}
18.61+ENV DEV_ID=${ID}
18.62\ No newline at end of file
19.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
19.2+++ b/containers/Containerfile.fedora.arm64v8 Fri May 24 20:01:52 2024 +0000
19.3@@ -0,0 +1,1 @@
19.4+FROM arm64v8/fedora:latest
19.5\ No newline at end of file
20.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
20.2+++ b/containers/Containerfile.mail Fri May 24 20:01:52 2024 +0000
20.3@@ -0,0 +1,1 @@
20.4+FROM stalwartlabs/mail-server:latest
20.5\ No newline at end of file
21.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
21.2+++ b/containers/Containerfile.operator Fri May 24 20:01:52 2024 +0000
21.3@@ -0,0 +1,2 @@
21.4+FROM localhost/box:latest
21.5+RUN infra/scripts/wg-gen-keys.sh private.key public.key
21.6\ No newline at end of file
22.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
22.2+++ b/containers/Containerfile.ubuntu Fri May 24 20:01:52 2024 +0000
22.3@@ -0,0 +1,3 @@
22.4+FROM ubuntu:latest
22.5+RUN apt-get update
22.6+RUN apt -y install git ssh python3-pip mercurial
23.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
23.2+++ b/containers/Containerfile.vc Fri May 24 20:01:52 2024 +0000
23.3@@ -0,0 +1,4 @@
23.4+FROM octobus/heptapod:latest
23.5+RUN gitlab-ctl upgrade
23.6+# TODO: configure instance here, pull from comp/etc
23.7+# COPY etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb
23.8\ No newline at end of file
24.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
24.2+++ b/containers/Containerfile.vc-runner Fri May 24 20:01:52 2024 +0000
24.3@@ -0,0 +1,8 @@
24.4+FROM localhost/worker:latest
24.5+USER root
24.6+RUN curl -L --output /usr/local/bin/gitlab-runner https://download.heptapod.net/runner/runner/latest/binaries/heptapod-runner-linux-amd64
24.7+ARG RUNNER_TOKEN
24.8+RUN chmod +x /usr/local/bin/gitlab-runner
24.9+RUN echo ${WORKER_USER}
24.10+RUN echo ${WORKER_HOME}
24.11+RUN gitlab-runner install --user=${WORKER_USER} --working-directory=${WORKER_HOME}
24.12\ No newline at end of file
25.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
25.2+++ b/containers/Containerfile.worker Fri May 24 20:01:52 2024 +0000
25.3@@ -0,0 +1,29 @@
25.4+FROM localhost/alpine:latest
25.5+# VOLUME /opt/store
25.6+# VOLUME /opt/stash
25.7+# ADD etc/skel/* /etc/skel/
25.8+ARG ID=908
25.9+ARG WORKER=worker
25.10+ARG WORKER_HOME=/home/${WORKER}
25.11+RUN apk add build-base zstd-dev curl make git linux-headers openssl-dev pkgconf clang m4 tree-sitter
25.12+RUN mkdir /usr/share/lisp
25.13+RUN mkdir /usr/local/share/lisp
25.14+WORKDIR /usr/local/src
25.15+RUN hg clone https://vc.compiler.company/comp/infra
25.16+RUN hg clone https://vc.compiler.company/comp/core
25.17+WORKDIR infra
25.18+ENV CARGO_HOME="/usr/local/share/cargo"
25.19+ENV RUSTUP_HOME="/usr/local/share/rustup"
25.20+RUN make rustup-install tree-sitter-langs-install
25.21+ENV PATH="$PATH:/usr/local/share/cargo/bin"
25.22+RUN rustup update
25.23+#RUN rustup default nightly # disabled due to issue with zellij build
25.24+ADD etc/sbclrc /etc/sbclrc
25.25+RUN cd .. && rm -rf infra core
25.26+RUN adduser -D -u ${ID} -k /etc/skel ${WORKER}
25.27+USER ${WORKER}
25.28+WORKDIR ${WORKER_HOME}
25.29+ENV WORKER=${WORKER}
25.30+ENV WORKER_ID=${ID}
25.31+ENV WORKER_HOME=${WORKER_HOME}
25.32+ENTRYPOINT ["sh"]
25.33\ No newline at end of file
26.1--- a/makefile Tue May 21 17:17:36 2024 -0400
26.2+++ b/makefile Fri May 24 20:01:52 2024 +0000
26.3@@ -17,21 +17,22 @@
26.4 B:=build
26.5 D:=dist
26.6 SRC:=code
26.7+CONTAINERS:=containers
26.8 HG_COMMIT:=$(shell hg id -i)
26.9 DESTINATION:=/mnt/y/data/packy
26.10 # requires emacs-build-minimal
26.11 # artifacts can deploy to dist/TARGET - need target triple first
26.12 # init:sbcl rust emacs rocksdb code
26.13 # dist/linux dist/rust dist/bundle
26.14-archlinux:Containerfile.archlinux;podman build -f $< -t archlinux
26.15-box:Containerfile.box archlinux;podman build -f $< -t box
26.16-alpine:Containerfile.alpine;podman build -f $< -t alpine
26.17-ubuntu:Containerfile.ubuntu;podman build -f $< -t ubuntu
26.18-worker:Containerfile.worker alpine;podman build -f $< -t worker
26.19-operator:Containerfile.operator box;podman build -f $< -t operator
26.20+archlinux:$(CONTAINERS)/Containerfile.archlinux;podman build -f $< -t archlinux
26.21+box:$(CONTAINERS)/Containerfile.box archlinux;podman build -f $< -t box
26.22+alpine:$(CONTAINERS)/Containerfile.alpine;podman build -f $< -t alpine
26.23+ubuntu:$(CONTAINERS)/Containerfile.ubuntu;podman build -f $< -t ubuntu
26.24+worker:$(CONTAINERS)/Containerfile.worker alpine;podman build -f $< -t worker
26.25+operator:$(CONTAINERS)/Containerfile.operator box;podman build -f $< -t operator
26.26 pods:archlinux alpine ubuntu box worker operator
26.27 quick:code
26.28-all:dist/cdn dist/code dist/lisp dist/rust dist/sbcl dist/rocksdb dist/emacs dist/pods
26.29+all:dist/code dist/lisp dist/rust dist/sbcl dist/rocksdb dist/emacs dist/pods
26.30 clean:;rm -rf $(B) $(D)
26.31 $(B):;mkdir -pv $@/src
26.32 $(D):;mkdir -pv $@/bin $@/lib $@/include $@/bundle $@/share
26.33@@ -45,7 +46,7 @@
26.34 $< $(LINUX_VERSION) build build/$@/keyring.gpg
26.35 cd build && unxz $@.tar.xz && tar -xvf $@.tar $(LINUX_TARGET)
26.36 linux-config:$(LINUX_TARGET);
26.37- cd build/$< && make mrproper -j && zcat /proc/config.gz > .config && yes N | make localmodconfig
26.38+ cd build/$< && make mrproper -j && zcat /proc/config.gz > .config && yes N | make localmodconfig
26.39 clean-linux::;rm -rf build/$(LINUX_TARGET)
26.40
26.41 ### Emacs