Skip to content

fix(ci/tangled): fetch+extract full CTAN pseudo package zip (not just… #34

fix(ci/tangled): fetch+extract full CTAN pseudo package zip (not just…

fix(ci/tangled): fetch+extract full CTAN pseudo package zip (not just… #34

Workflow file for this run

name: nix-validate (spindle-ci)
# Build the flake.nix derivations on GH Actions to iterate on the design
# before wiring them up to tangled Spindle. Triggers only on this branch
# so the production gh-pages.yml is untouched.
on:
push:
branches: [spindle-ci]
workflow_dispatch: {}
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-22.04
timeout-minutes: 60
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: spindle-ci
- name: Install Nix (sandbox off — needed by tectonic+forester+wasm builds that fetch from the network)
uses: cachix/install-nix-action@v27
with:
nix_path: nixpkgs=channel:nixos-unstable
extra_nix_config: |
experimental-features = nix-command flakes
sandbox = false
substituters = https://cache.nixos.org/
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
- name: nix flake info
run: |
nix --extra-experimental-features 'nix-command flakes' flake metadata
nix --extra-experimental-features 'nix-command flakes' flake show
- name: Build forest-tectonic
continue-on-error: true
id: tectonic
run: |
out=$(nix --extra-experimental-features 'nix-command flakes' build .#forest-tectonic --no-link --print-out-paths)
echo "tectonic out: $out"
du -sh "$out"
ls -la "$out"
test -x "$out/bin/tectonic"
test -f "$out/env.sh"
test -d "$out/share/tectonic-cache" && echo "✓ warmed cache present" || echo "(no cache snapshot)"
- name: Build forest-forester
continue-on-error: true
id: forester
run: |
out=$(nix --extra-experimental-features 'nix-command flakes' build .#forest-forester --no-link --print-out-paths)
echo "forester out: $out"
du -sh "$out"
ls -la "$out"
test -x "$out/bin/forester"
"$out/bin/forester" --version || true
- name: Build forest-wasm-pkgs
continue-on-error: true
id: wasmpkgs
run: |
out=$(nix --extra-experimental-features 'nix-command flakes' build .#forest-wasm-pkgs --no-link --print-out-paths)
echo "wasm-pkgs out: $out"
du -sh "$out"
ls -la "$out/pkg"
for name in wgputoy egglog rhaiscript; do
test -d "$out/pkg/$name" && ls "$out/pkg/$name" | head -5 || echo "MISSING: $name"
done
- name: Summary
if: always()
run: |
echo "## nix-validate summary" >> "$GITHUB_STEP_SUMMARY"
for d in tectonic forester wasm-pkgs; do
if out=$(nix --extra-experimental-features 'nix-command flakes' build .#forest-$d --no-link --print-out-paths 2>/dev/null); then
size=$(du -sh "$out" | cut -f1)
echo "- ✅ \`forest-$d\` → $size ($out)" >> "$GITHUB_STEP_SUMMARY"
else
echo "- ❌ \`forest-$d\`" >> "$GITHUB_STEP_SUMMARY"
fi
done