Files
nix-config/.gitea/workflows/check-flake.yaml
Zuckerberg b90367dbe9
Some checks failed
Check Flake / check-flake (push) Failing after 2m35s
debug
2026-02-19 21:59:59 -08:00

39 lines
1.4 KiB
YAML

name: Check Flake
on: [push]
env:
DEBIAN_FRONTEND: noninteractive
PATH: /run/current-system/sw/bin/
jobs:
check-flake:
runs-on: nixos
steps:
- name: Checkout the repository
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Check Flake
run: nix flake check --all-systems --print-build-logs --log-format raw --show-trace
- name: Push to cache
env:
XDG_CONFIG_HOME: ${{ runner.temp }}/.config
run: |
set -euxo pipefail
export XDG_CONFIG_HOME="$(mktemp -d)"
mkdir -p "$XDG_CONFIG_HOME/attic"
attic login local "${{ vars.ATTIC_ENDPOINT }}" "${{ secrets.ATTIC_TOKEN }}"
# Get all system toplevel store paths
toplevels=$(nix eval .#nixosConfigurations --apply 'cs: map (n: "${cs.${n}.config.system.build.toplevel}") (builtins.attrNames cs)' --json | jq -r '.[]')
echo "Found $(echo "$toplevels" | wc -l) system toplevels"
# Expand to full closures, deduplicate, and filter out paths already
# signed by cache.nixos.org — only our custom builds need caching
paths=$(echo "$toplevels" \
| xargs nix path-info -r --json \
| jq -r '[.[] | select((.signatures // []) | all(startswith("cache.nixos.org") | not)) | .path] | unique[]')
echo "Pushing $(echo "$paths" | wc -l) unique paths to cache"
echo "$paths" | xargs attic push local:nixos