zaphyra's git: tgcNUR

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

commit 6d476bf1c35de65a3a3cbe8ebe0033b0a8d6f466
parent a9813acfb97f8e3308cb48df4dbdc420fe6f1505
Author: Katja Ramona Sophie Kwast (zaphyra) <git@zaphyra.eu>
Date: Fri, 20 Feb 2026 20:43:08 +0100

homeManagerModules: add `niri-screen-time`
1 file changed, 40 insertions(+), 0 deletions(-)
A
homeManagerModules/services/niri-screen-time/default.nix
|
40
++++++++++++++++++++++++++++++++++++++++
diff --git a/homeManagerModules/services/niri-screen-time/default.nix b/homeManagerModules/services/niri-screen-time/default.nix
@@ -0,0 +1,40 @@
+{ tgcFlake, tgcMaintainers, ... }:
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}:
+let
+  cfg = config.tgc.services.niri-screen-time;
+
+in
+{
+
+  meta.maintainers = [ tgcMaintainers.zaphyra ];
+
+  options.tgc.services.niri-screen-time = {
+    enable = lib.mkEnableOption "Niri Screen Time";
+    package = lib.mkPackageOption tgcFlake.packages.${pkgs.system} "niri-screen-time" { };
+  };
+
+  config = lib.mkIf cfg.enable {
+    home.packages = [ cfg.package ];
+
+    systemd.user.services.niri-screen-time = {
+      Unit = {
+        Description = "Niri Screen Time";
+        Documentation = "https://github.com/probeldev/niri-screen-time";
+        After = [ "niri.service" ];
+        PartOf = [ "graphical-session.target" ];
+      };
+      Service = {
+        Restart = "on-failure";
+        RestartSec = 5;
+        ExecStart = "${lib.getExe cfg.package} -daemon";
+      };
+      Install.WantedBy = [ "niri.service" ];
+    };
+  };
+
+}