feat: Add nix-setup composite action

Reusable action for Nix CI with caching:
- DeterminateSystems/nix-installer-action for Nix installation
- actions/cache@v4 for Nix store caching
- Cache key based on flake.lock for per-repo isolation
This commit is contained in:
2026-01-13 15:50:23 -08:00
parent edd0261110
commit 55a7a69d64
2 changed files with 64 additions and 1 deletions

25
nix-setup/action.yml Normal file
View File

@@ -0,0 +1,25 @@
name: 'Nix Setup with Cache'
description: 'Install Nix and set up store caching'
inputs:
cache-name:
description: 'Optional cache name prefix for disambiguation'
required: false
default: ''
runs:
using: 'composite'
steps:
- name: Install Nix
uses: DeterminateSystems/nix-installer-action@main
- name: Cache Nix store
uses: actions/cache@v4
with:
path: |
/nix/store
/nix/var/nix
~/.cache/nix
key: nix-${{ inputs.cache-name }}${{ runner.os }}-${{ hashFiles('flake.lock') }}
restore-keys: |
nix-${{ inputs.cache-name }}${{ runner.os }}-