Cache Nix derivations on GitHub Actions with Attic
TypeScript
59
56 commits
updated Sep 22, 2026
Cache Nix derivations with Attic.
Configure your Attic instance with an endpoint, a cache, and a token that can read from and write to the cache. Then, add this step to a workflow job after Nix is installed:
- name: Setup Attic cache
uses: ryanccn/attic-action@v0
with:
endpoint: ${{ secrets.ATTIC_ENDPOINT }}
cache: ${{ secrets.ATTIC_CACHE }}
token: ${{ secrets.ATTIC_TOKEN }}
endpointThe Attic endpoint. This is the URL without the cache name.
cacheThe name of the Attic cache.
tokenThe authorization token to provide to Attic (optional).
inputs-fromPath to get the Nixpkgs flake input from instead of github:NixOS/nixpkgs/nixpkgs-unstable when installing Attic (optional).
push-argsAdditional command-line arguments to pass to attic push (optional).
skip-pushDisable pushing new derivations to the cache automatically at the end of the job (default is false).
This requires you to invoke attic push <cache> with the paths you want to push to the cache manually.
None
MIT
TypeScript
87.7%
Nix
12.3%
Cache Nix derivations on GitHub Actions with Attic
TypeScript
59
56 commits
updated Sep 22, 2026
Cache Nix derivations with Attic.
Configure your Attic instance with an endpoint, a cache, and a token that can read from and write to the cache. Then, add this step to a workflow job after Nix is installed:
- name: Setup Attic cache
uses: ryanccn/attic-action@v0
with:
endpoint: ${{ secrets.ATTIC_ENDPOINT }}
cache: ${{ secrets.ATTIC_CACHE }}
token: ${{ secrets.ATTIC_TOKEN }}
endpointThe Attic endpoint. This is the URL without the cache name.
cacheThe name of the Attic cache.
tokenThe authorization token to provide to Attic (optional).
inputs-fromPath to get the Nixpkgs flake input from instead of github:NixOS/nixpkgs/nixpkgs-unstable when installing Attic (optional).
push-argsAdditional command-line arguments to pass to attic push (optional).
skip-pushDisable pushing new derivations to the cache automatically at the end of the job (default is false).
This requires you to invoke attic push <cache> with the paths you want to push to the cache manually.
None
MIT
TypeScript
87.7%
Nix
12.3%