every.channel/nix/modules/ec-runner.nix
2026-02-17 02:00:26 -08:00

28 lines
770 B
Nix

{ lib, config, pkgs, self, ... }:
let
cfg = config.services.every-channel.runner;
in
{
options.services.every-channel.runner = {
enable = lib.mkEnableOption "every.channel runner base system profile";
};
config = lib.mkIf cfg.enable {
# Minimal, conservative baseline for headless runners.
networking.useDHCP = lib.mkDefault true;
services.openssh.enable = lib.mkDefault true;
# Keep Nix flakes available on the runner itself.
nix.settings.experimental-features = lib.mkDefault [ "nix-command" "flakes" ];
# Provide the flake source tree at a stable path (symlink into /nix/store).
environment.etc."every-channel/flake".source = self;
environment.systemPackages = with pkgs; [
git
jq
curl
];
};
}