zaphyra's git: nixfiles

zaphyra's nixfiles

commit adebb3249d74ad0ef69ea60000a2478e712f6032
parent b4bda85db509927832ccdc97e4375f3e1189f97d
Author: Katja Ramona Sophie Kwast (zaphyra) <git@zaphyra.eu>
Date: Mon, 13 Oct 2025 18:16:03 +0200

config/home/zaphyra: replace `sherlock` with `anyrun`
10 files changed, 157 insertions(+), 10 deletions(-)
diff --git a/config/home/zaphyra/configure/niri.nix b/config/home/zaphyra/configure/niri.nix
@@ -34,7 +34,7 @@ in
       programs.swaylock
       programs.ghostty
       programs.app2unit
-      programs.sherlock-launcher
+      programs.anyrun-launcher
       programs.fuzzel
     ]
     ++ (lib.optionals systemConfig.modules.hardware.bluetooth.enable [
diff --git a/config/home/zaphyra/programs/anyrun-launcher.nix b/config/home/zaphyra/programs/anyrun-launcher.nix
@@ -0,0 +1,147 @@
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}:
+
+{
+
+  programs.niri.settings.binds = with config.lib.niri.actions; {
+    "Mod+Space".action = spawn (lib.getExe pkgs.unstable.app2unit) "-C" "--" (
+      lib.getExe pkgs.tgc.anyrun
+    );
+  };
+
+  home.packages = [ pkgs.tgc.anyrun ];
+  xdg.configFile = lib.mapAttrs' (name: value: lib.nameValuePair "anyrun/${name}" { text = value; }) {
+    "config.ron" = ''
+      Config(
+        ignore_exclusive_zones: false,
+        layer: Overlay,
+        hide_plugin_info: false,
+        close_on_click: true,
+        max_entries: None,
+        plugins: [
+          "${pkgs.tgc.anyrun}/lib/libniri_focus.so",
+          "${pkgs.tgc.anyrun}/lib/libapplications.so",
+        ],
+        keybinds: [
+          Keybind(
+            key: "Return",
+            action: Select,
+          ),
+          Keybind(
+            key: "Up",
+            action: Up,
+          ),
+          Keybind(
+            key: "Down",
+            action: Down,
+          ),
+          Keybind(
+            key: "Escape",
+            action: Close,
+          ),
+        ],
+      )
+    '';
+    "applications.ron" = ''
+      Config(
+        desktop_actions: true,
+        max_entries: 30,
+        preprocess_exec_script: Some("${pkgs.writers.writeDash "anyrun-run.sh" ''
+          if [ "$1" = "term" ]
+          then
+            shift
+            echo "app2unit -T -- $*"
+            echo "app2unit -T -- $*" >> ~/foo
+          else
+            shift
+            echo "app2unit -- $*"
+          fi
+        ''}"),
+        terminal: Some(Terminal(
+          command: "",
+          args: "",
+        )),
+      )
+    '';
+    "style.css" = ''
+      window {
+        background: transparent;
+      }
+
+      * {
+        font-family: "Adwaita Sans", "Symbols Nerd Font";
+        outline-color: @accent-color;
+        color: white;
+      }
+
+      .main {
+        padding: 0;
+        margin: 6px;
+        background: @background-color;
+        border-radius: 10px;
+        border: 2px solid @accent-border-color;
+        box-shadow: 0 0 5px black;
+      }
+
+      text {
+        margin: 8px 10px;
+        font-size: 15pt;
+      }
+
+      box.info {
+        min-width: 160px;
+      }
+
+      box.info image {
+        margin: 6px;
+      }
+
+      list.plugin {
+        background: transparent;
+      }
+
+      box.matches {
+        border-top: 1px solid @border-color;
+      }
+
+      box.matches > box {
+        padding: 10px 12px;
+        border-bottom: 1px solid @border-color;
+      }
+
+      row.match {
+        border: 1px solid transparent;
+        border-radius: 5px;
+        margin: 4px 0;
+        padding: 4px;
+      }
+
+      row.match:selected {
+        background: @button-hover-color;
+        border: 1px solid @border-color;
+      }
+
+      row.match box.match:first-child {
+        border-left: 4px solid transparent;
+        margin: -4px;
+        padding: 4px 6px;
+      }
+
+      row.match:selected box.match:first-child {
+        border-left: 4px solid @accent-color;
+        border-radius: 4px;
+        margin: -4px;
+        padding: 4px 6px;
+      }
+
+      label.match.description {
+        font-size: 10pt;
+      }
+    '';
+  };
+
+}
diff --git a/config/home/zaphyra/programs/fish.nix b/config/home/zaphyra/programs/fish.nix
@@ -14,6 +14,6 @@
     generateCompletions = true;
   };
 
-  programs.sherlock.settings.ignore = "fish";
+  # programs.sherlock.settings.ignore = "fish";
 
 }
diff --git a/config/home/zaphyra/programs/gpg.nix b/config/home/zaphyra/programs/gpg.nix
@@ -29,7 +29,7 @@
       key = "95F0FE7CD7E6A022";
     };
 
-    sherlock.settings.ignore = "Gscriptor";
+    # sherlock.settings.ignore = "Gscriptor";
   };
 
   services = {
diff --git a/config/home/zaphyra/programs/helix.nix b/config/home/zaphyra/programs/helix.nix
@@ -34,6 +34,6 @@
     ];
   };
 
-  programs.sherlock.settings.ignore = "Helix";
+  # programs.sherlock.settings.ignore = "Helix";
 
 }
diff --git a/config/home/zaphyra/programs/htop.nix b/config/home/zaphyra/programs/htop.nix
@@ -17,6 +17,6 @@
     };
   };
 
-  programs.sherlock.settings.ignore = "Htop";
+  # programs.sherlock.settings.ignore = "Htop";
 
 }
diff --git a/config/home/zaphyra/programs/libreoffice.nix b/config/home/zaphyra/programs/libreoffice.nix
@@ -4,6 +4,6 @@
 
   home.packages = [ pkgs.libreoffice-fresh ];
 
-  programs.sherlock.settings.ignore = "LibreOffice *";
+  # programs.sherlock.settings.ignore = "LibreOffice *";
 
 }
diff --git a/config/home/zaphyra/programs/micro.nix b/config/home/zaphyra/programs/micro.nix
@@ -25,7 +25,7 @@
     );
   };
 
-  config.programs.sherlock.settings.ignore = "Micro";
+  # config.programs.sherlock.settings.ignore = "Micro";
   config.programs.micro = {
     enable = true;
     package =
diff --git a/config/home/zaphyra/programs/networkManagerDmenu.nix b/config/home/zaphyra/programs/networkManagerDmenu.nix
@@ -4,7 +4,7 @@
 
   home.packages = [ pkgs.networkmanager_dmenu ];
 
-  home.file.".config/networkmanager-dmenu/config.ini".text = lib.generators.toINI { } {
+  xdg.configFile."networkmanager-dmenu/config.ini".text = lib.generators.toINI { } {
     dmenu = {
       dmenu_command = "${lib.getExe pkgs.fuzzel} --anchor=top-right --x-margin=13 --y-margin=13";
       active_chars = "==";

@@ -37,6 +37,6 @@
     nmdm.rescan_delay = 5;
   };
 
-  programs.sherlock.settings.ignore = "NetworkManager Dmenu";
+  # programs.sherlock.settings.ignore = "NetworkManager Dmenu";
 
 }
diff --git a/config/home/zaphyra/programs/yazi.nix b/config/home/zaphyra/programs/yazi.nix
@@ -32,6 +32,6 @@
     '';
   };
 
-  programs.sherlock.settings.ignore = "Yazi";
+  # programs.sherlock.settings.ignore = "Yazi";
 
 }