feat: Init harmonia cache #27

Open
martin wants to merge 1 commit from harmonia/init into main
Owner

Summary

  • Add Harmonia binary cache service on Nidaros with x86_64 clients on desktop and ThinkPad.
  • Publish workstation and trusted Woodpecker build outputs to Harmonia over SSH.
  • Keep Cachix as the first read substituter in the Bun image pipeline; stop publishing to Cachix.
  • Add a Just recipe for generating publisher and cache-signing keys, with setup documentation.

Verification

  • Evaluated the Nidaros, desktop, and ThinkPad system derivations.
  • Confirmed pi4 does not use the Harmonia cache.
  • Formatting and Justfile checks pass.
  • nix flake check --no-build did not complete because the existing pi4 Catppuccin derivation was missing from the local store.

The secrets file contains encrypted SOPS data; private keys are not exposed in the workflow source.

## Summary - Add Harmonia binary cache service on Nidaros with x86_64 clients on desktop and ThinkPad. - Publish workstation and trusted Woodpecker build outputs to Harmonia over SSH. - Keep Cachix as the first read substituter in the Bun image pipeline; stop publishing to Cachix. - Add a Just recipe for generating publisher and cache-signing keys, with setup documentation. ## Verification - Evaluated the Nidaros, desktop, and ThinkPad system derivations. - Confirmed pi4 does not use the Harmonia cache. - Formatting and Justfile checks pass. - `nix flake check --no-build` did not complete because the existing pi4 Catppuccin derivation was missing from the local store. The secrets file contains encrypted SOPS data; private keys are not exposed in the workflow source.
feat: Init harmonia cache
Some checks failed
ci/woodpecker/pr/pr-review Pipeline failed
3d79e708c2
martin self-assigned this 2026-09-27 20:06:00 +00:00
Some checks failed
ci/woodpecker/pr/pr-review Pipeline failed
This pull request has changes conflicting with the target branch.
  • shared/secrets/secrets.yaml
View command line instructions

Manual merge helper

Use this merge commit message when completing the merge manually.

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin harmonia/init:harmonia/init
git switch harmonia/init

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff harmonia/init
git switch harmonia/init
git rebase main
git switch main
git merge --ff-only harmonia/init
git switch harmonia/init
git rebase main
git switch main
git merge --no-ff harmonia/init
git switch main
git merge --squash harmonia/init
git switch main
git merge --ff-only harmonia/init
git switch main
git merge harmonia/init
git push origin main
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
martin/nixos-configuration!27
No description provided.