fix: forgejo-runner module migration (orbi) + drop gitSVN collision #11

Open
eumel wants to merge 2 commits from eumel/nixos-config:fix/ci-failures into main
Contributor

Follow-up to #10 (same root causes block all scheduled runs, see Forgejo Actions #3608–#3611).

1. orbi: services.gitea-actions-runner → services.forgejo-runner

NixOS 26.11 nixpkgs (f20cd90e) asserts:

Running forgejo-runner via `services.gitea-actions-runner' is no longer supported.
Please use `services.forgejo-runner' instead.

The new module has a different API, so this is a real migration:

  • labels → settings.runner.labels
  • url → settings.server.connections.default.url
  • tokenFile → secrets.server.connections.default.token_url (systemd LoadCredential)
  • name option removed (runners no longer self-report their name)

⚠️ Deploy note: the runner registration must be migrated manually on orbi —
take uuid and token from /var/lib/gitea-runner/orbi/.runner:

  • uuid → settings.server.connections.default.uuid (currently a placeholder)
  • raw token (without the TOKEN= prefix) → token file

2. homes/common/git.nix: drop pkgs.gitSVN

gitSVN (git-with-svn-2.55.0) collides with git-2.55.0 (pulled in by
difftastic/lazygit/…) in home-manager-path buildEnv: conflicting subpath
lib/perl5/site_perl/…/Git/I18N.pm. Commit 4341b9d7 (PR #10) only removed the
redundant pkgs.git; the collision persists the other way round, so gitSVN
itself has to go (re-add as programs.git.package if SVN support is needed).

Follow-up to #10 (same root causes block all scheduled runs, see Forgejo Actions #3608–#3611). **1. orbi: `services.gitea-actions-runner` → `services.forgejo-runner`** NixOS 26.11 nixpkgs (`f20cd90e`) asserts: Running forgejo-runner via `services.gitea-actions-runner' is no longer supported. Please use `services.forgejo-runner' instead. The new module has a different API, so this is a real migration: - `labels` → `settings.runner.labels` - `url` → `settings.server.connections.default.url` - `tokenFile` → `secrets.server.connections.default.token_url` (systemd `LoadCredential`) - `name` option removed (runners no longer self-report their name) ⚠️ **Deploy note:** the runner registration must be migrated manually on orbi — take `uuid` and `token` from `/var/lib/gitea-runner/orbi/.runner`: - `uuid` → `settings.server.connections.default.uuid` (currently a placeholder) - raw `token` (without the `TOKEN=` prefix) → token file **2. homes/common/git.nix: drop `pkgs.gitSVN`** `gitSVN` (`git-with-svn-2.55.0`) collides with `git-2.55.0` (pulled in by difftastic/lazygit/…) in `home-manager-path` buildEnv: conflicting subpath `lib/perl5/site_perl/…/Git/I18N.pm`. Commit 4341b9d7 (PR #10) only removed the redundant `pkgs.git`; the collision persists the other way round, so `gitSVN` itself has to go (re-add as `programs.git.package` if SVN support is needed).
home-manager-path buildEnv failed with:
  conflicting subpath: git-with-svn-2.55.0/git-whatchanged vs git-2.55.0/git-whatchanged

pkgs.gitSVN (git-with-svn) already contains full git, so the separate
pkgs.git entry causes two different git builds to collide in buildEnv.
services.gitea-actions-runner now asserts against running forgejo-runner:

  Running forgejo-runner via `services.gitea-actions-runner' is no longer supported.

Migrated to the rewritten services.forgejo-runner module:
  - labels -> settings.runner.labels
  - url    -> settings.server.connections.default.url
  - tokenFile -> secrets.server.connections.default.token_url (LoadCredential)
  - name option removed (runner no longer self-reports)

TODO before deploy: copy uuid + raw token from /var/lib/gitea-runner/orbi/.runner
into settings.server.connections.default.uuid and the token file.
This pull request can be merged automatically.
This branch is out-of-date with the base branch
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u fix/ci-failures:eumel-fix/ci-failures
git switch eumel-fix/ci-failures

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 eumel-fix/ci-failures
git switch eumel-fix/ci-failures
git rebase main
git switch main
git merge --ff-only eumel-fix/ci-failures
git switch eumel-fix/ci-failures
git rebase main
git switch main
git merge --no-ff eumel-fix/ci-failures
git switch main
git merge --squash eumel-fix/ci-failures
git switch main
git merge --ff-only eumel-fix/ci-failures
git switch main
git merge eumel-fix/ci-failures
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
palo/nixos-config!11
No description provided.