Skip to content

Nix flake support - #3

Open
JL2718 wants to merge 8 commits into
ai-dock:mainfrom
JL2718:feature/nix
Open

Nix flake support#3
JL2718 wants to merge 8 commits into
ai-dock:mainfrom
JL2718:feature/nix

Conversation

@JL2718

@JL2718 JL2718 commented May 15, 2026

Copy link
Copy Markdown

This adds:

  • a nix flake that uses the release configured from a local JSON file
  • a script to update that release to the latest version in the repo
  • a GitHub action to update the repo when a release is published

Why:
Loading the ggml-org/llama.cpp flake for a CUDA user requires a full compile. This is much faster.

Testing:
nix develop github:jl2718/llama.cpp-cuda/feature/nix works

Notes:
if you don't want to pollute your 'main' with commits for every release, the update action works on whatever branch it is given, so maybe a 'nix' branch.

2524068379 added a commit to 2524068379/llama.cpp-cuda that referenced this pull request Aug 25, 2026
… push

Addresses architecture review round 4:

ai-dock#1 (HIGH) Tag dedup was broken — actions/checkout@v4 fetches no tags by
default, so 'git tag | grep' was always empty and every cron run would
rebuild. Fixed by switching check-branch dedup from local git tags to the
GitHub Releases API (gate now agrees with release creation).

ai-dock#3 (MEDIUM) Orphaned-tag gap — if tag was pushed but release creation
failed, the old git-tag dedup would block retries forever. Releases-API
dedup makes the check self-healing: a tag without a release triggers a
rebuild on the next run. Mirrors scripts/check-releases.sh exactly.

ai-dock#2 (MEDIUM) force_build crashed at tag push when the tag already existed
on remote (non-fast-forward). Now uses 'git tag -f' + 'git push --force'.

ai-dock#4 (LOW) Unauthenticated upstream tip lookup moved to use GITHUB_TOKEN
(60 -> 5000 req/h). Both API calls now send Authorization headers.

Also: release job checkout gets fetch-tags: true (belt-and-suspenders).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant