zaphyra's git: nixfiles

zaphyra's nixfiles

commit b83cc51a6df91f35db23060e192c67ac082a36d7
parent d27c38cd2714a7165ad08efde38c51134429d572
Author: Katja Ramona Sophie Kwast (zaphyra) <git@zaphyra.eu>
Date: Mon, 27 Oct 2025 18:14:43 +0100

config/home/zaphyra/services: add `wvkbd`
3 files changed, 32 insertions(+), 1 deletion(-)
diff --git a/config/home/zaphyra/configure/niri.nix b/config/home/zaphyra/configure/niri.nix
@@ -29,6 +29,7 @@ in
       services.wlsunset
       services.playerctl
       services.gomuks-web
+      services.wvkbd
 
       programs.niri
       programs.swaylock
diff --git a/config/home/zaphyra/services/waybar.nix b/config/home/zaphyra/services/waybar.nix
@@ -218,7 +218,8 @@
         };
 
         "niri/language" = {
-          format = "{}";
+          format = "󰥻 {}";
+          on-click = "${lib.getExe' pkgs.systemd "systemctl"} --user kill --signal=SIGRTMIN wvkbd";
           format-en = "US";
           format-de = "DE";
           format-ru = "RU";
diff --git a/config/home/zaphyra/services/wvkbd.nix b/config/home/zaphyra/services/wvkbd.nix
@@ -0,0 +1,29 @@
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}:
+
+{
+
+  systemd.user.services.wvkbd = {
+    Unit = {
+      Description = "wayland on-sceen-keyboad";
+      ConditionEnvironment = [ "WAYLAND_DISPLAY" ];
+      PartOf = [ "graphical-session.target" ];
+      After = [
+        "graphical-session.target"
+      ];
+      StartLimitBurst = 5;
+      StartLimitIntervalSec = 10;
+    };
+    Service = {
+      ExecStart = "${lib.getExe pkgs.wvkbd} --hidden -H 450 -L 300 -l full,specialpad,emoji --landscape-layers fullwide,specialpad,emoji -alpha 240";
+      Restart = "on-failure";
+      RestartSec = 5;
+    };
+    Install.WantedBy = [ "graphical-session.target" ];
+  };
+
+}