zaphyra's git: tgcNUR

fork of https://git.transgirl.cafe/zaphoid/tgc-nix-user-repository

commit cd948ef0cd95dca9c7621d54dfa52375e85b2684
parent 6c0650dc5d3a6f414ec2693d089bad704f652cae
Author: Katja Ramona Sophie Kwast (zaphyra) <git@zaphyra.eu>
Date: Mon, 25 Aug 2025 14:47:19 +0200

homeManagerModules/programs: add `nirius` - utility commands for the niri wayland compositor
1 file changed, 44 insertions(+), 0 deletions(-)
A
homeManagerModules/programs/nirius/default.nix
|
44
++++++++++++++++++++++++++++++++++++++++++++
diff --git a/homeManagerModules/programs/nirius/default.nix b/homeManagerModules/programs/nirius/default.nix
@@ -0,0 +1,44 @@
+{ tgcMaintainers, tgcFlake, ... }:
+{
+  config,
+  pkgs,
+  lib,
+  ...
+}:
+
+let
+  cfg = config.tgc.programs.nirius;
+
+in
+{
+
+  meta.maintainers = [ tgcMaintainers.zaphyra ];
+
+  options.tgc.programs.nirius = {
+    enable = lib.mkEnableOption "Enable nirius - utility commands for the niri wayland compositor";
+    package = lib.mkPackageOption tgcFlake.packages.${pkgs.system} "nirius" { };
+  };
+
+  config = lib.mkIf cfg.enable {
+    home.packages = [ cfg.package ];
+
+    systemd.user.services.niriusd = {
+      Unit = {
+        Description = "Nirius: utility commands for the niri wayland compositor";
+        Documentation = "https://git.sr.ht/~tsdh/nirius";
+        After = [
+          "graphical-session-pre.target"
+          "niri.service"
+        ];
+        PartOf = [ "graphical-session.target" ];
+      };
+      Service = {
+        Restart = "on-failure";
+        RestartSec = 5;
+        ExecStart = lib.getExe' cfg.package "niriusd";
+      };
+      Install.WantedBy = [ "niri.service" ];
+    };
+  };
+
+}