{ config, pkgs, ... }: let url = "https://git.dgnum.eu"; mkRunner = { labels, name, token, }: { enable = true; inherit name labels token url ; settings.container = { network = "host"; options = "--cpus=4"; }; }; in { services.forgejo-nix-runners = { enable = true; inherit url; storePath = "/data/slow"; tokenFile = config.age.secrets."forgejo_runners-token_file".path; dependencies = [ pkgs.npins pkgs.tea ]; containerOptions = [ "--cpus=4" ]; nbRunners = 6; }; services.gitea-actions-runner.instances = builtins.mapAttrs (_: mkRunner) { runner01 = { token = "qT9nZXKgLcb3fWOj7VTj3S58raiCWwF0weuIIKlY"; name = "storage01 [debian]"; labels = [ "debian-latest:docker://node:20-bookworm" ]; }; runner02 = { token = "m0rUDBxxkMb6xLTmPFwIieHswJFROqPFByPlT3V9"; name = "storage01 [debian]"; labels = [ "debian-latest:docker://node:20-bookworm" ]; }; }; virtualisation = { podman = { enable = true; defaultNetwork.settings = { dns_enable = true; ipv6_enabled = true; }; }; containers.storage.settings = { storage = { driver = "overlay"; graphroot = "/data/slow/containers/storage"; runroot = "/run/containers/storage"; }; }; }; }