Initial commit

This commit is contained in:
2026-04-17 13:53:44 +10:00
commit 1e29da45e6
4 changed files with 54 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
solstice

34
Dockerfile Normal file
View File

@@ -0,0 +1,34 @@
# Build Ground
FROM archlinux:latest AS ground-build
RUN pacman-key --init && \
pacman-key --populate archlinux && \
pacman -Syu --noconfirm base-devel git
RUN pacman -Syu --noconfirm base-devel git
RUN git clone --depth 1 https://chookspace.com/ground/ground /src/ground
WORKDIR /src/ground
RUN make
# Build Solstice
FROM archlinux:latest AS solstice-build
RUN pacman-key --init && \
pacman-key --populate archlinux && \
pacman -Syu --noconfirm base-devel git
RUN pacman -Syu --noconfirm base-devel git uthash
COPY --from=ground-build /src/ground/build/lib/libgroundvm.a ./libs/
COPY --from=ground-build /src/ground/include/ ./libs/include/
RUN git clone --depth 1 https://chookspace.com/solstice/solstice /src/solstice
WORKDIR /src/solstice
RUN make static GROUND_STATIC=/libs/libgroundvm.a GROUND_INCLUDE=/libs/include
# ── Stage 3: Output ────────────────────────────────────────────────
FROM archlinux:latest AS final
COPY --from=solstice-build /src/solstice/solstice /usr/local/bin/solstice

13
README.md Normal file
View File

@@ -0,0 +1,13 @@
# Solstice Builder
This script and Dockerfile will build a Solstice executable, statically linked with Ground, seperate from your environment. Perfect for building release builds.
## Using
```
bash script.sh
```
Use `sudo` if your Docker requires root.
The `solstice` binary will be produced for Linux running on your host architecture.

6
build.sh Normal file
View File

@@ -0,0 +1,6 @@
#!/bin/sh
docker build --no-cache -t solstice-builder .
docker create --name extract solstice-builder
docker cp extract:/usr/local/bin/solstice ./solstice
docker rm extract