niri-s76-bridge/flake.nix
2026-02-16 00:03:46 +11:00

36 lines
999 B
Nix

{
description = "Passes focused Niri window's PID to System76 Scheduler.";
outputs = _: {
nixosModules.default =
{
config,
lib,
pkgs,
...
}:
{
options.services.niri-s76-bridge = {
enable = lib.mkEnableOption "niri-s76-bridge service";
};
config = lib.mkIf config.services.niri-s76-bridge.enable {
systemd.user.services.niri-s76-bridge = {
description = "Bridge between niri and System76 Scheduler";
after = [ "graphical-session.target" ];
partOf = [ "graphical-session.target" ];
wantedBy = [ "graphical-session.target" ];
path = [ config.programs.niri.package ];
serviceConfig = {
Type = "simple";
ExecStart = "${lib.getExe pkgs.nushell} -n ${./niri-s76-bridge.nu}";
Restart = "on-failure";
RestartSec = "5";
};
};
};
};
};
}