6 ms·
I wonder if you could pair this with nix e.g.,: - shell: nix develop --command {0} run: ...
by cdata 1y ago
I wonder if you could pair this with nix e.g.,:
- shell: nix develop --command {0}
run: ...
- _cenw 1y agoIn my experience, the default VM size is so slow, you probably don't want Nix on a workflow that doesn't already take minutes. Even with a binary cache (we used R2), installing Lix, Devbox and some common tools costs us 2 1/2 minutes. Just evaluating the derivation takes ~20-30 seconds.
- manx 1y agoIs there a way to cache the derivation evaluation?
- chuckadams 1y agoYou can cache arbitrary directories in github actions, but the nix package cache is enormous and probably bigger than GH's cache system will allow. Restoring multi-gig caches is also not instant, though it still beats doing everything from scratch. Might be more feasible to bake the cache into a container image instead. I think any nix enthusiast is still likely to go for self-hosted runners though.
- _cenw 1y agoThe default cache action also has issued with anything that isn't owned by the runner user, and caches are per-repository, so you can't just have one cache like you do for binary caches.
- adobrawy 1y agoYou can use a self-hosted runner with an image that has anything pre-loaded.
- tadfisher 1y agoYes, we do this, although you need to do `nix develop --command bash -- {0}` to make it behave as a shell.