{ lib, pkgs, config, ... }: with lib; let cfg = config.modules.github-runners; extraPackages = let gtar = pkgs.runCommandNoCC "gtar" { } '' mkdir -p $out/bin ln -s ${lib.getExe pkgs.gnutar} $out/bin/gtar ''; in with pkgs; [ nix nixci cachix coreutils which jq gtar docker curl ]; in { options = { modules = { github-runners = { enable = mkEnableOption "Deploy github runners"; }; }; }; config = mkIf cfg.enable { services.github-runners = { simplelink = { enable = true; name = "simplelink-" + config.networking.hostName; url = "https://github.com/waveringana/simplelink"; tokenFile = config.age.secrets."build-token".path; user = "regent"; group = "docker"; extraPackages = extraPackages; }; embedder = { enable = true; name = "embedder-" + config.networking.hostName; url = "https://github.com/waveringana/embedder"; tokenFile = config.age.secrets."build-token".path; user = "regent"; group = "docker"; extraPackages = extraPackages; }; }; }; }