From cda1c1f501e150a503df04568878df57bbcfe0de Mon Sep 17 00:00:00 2001
From: Myned <dev@bjork.tech>
Date: Thu, 13 Feb 2025 21:59:01 -0600
Subject: [PATCH] rofi: fix network menu

Signed-off-by: Myned <dev@bjork.tech>
---
 options/custom/menus/rofi/default.nix            |  2 +-
 options/custom/programs/networkmanager-dmenu.nix | 12 +++++++++---
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/options/custom/menus/rofi/default.nix b/options/custom/menus/rofi/default.nix
index bd69b9c..fcfb611 100644
--- a/options/custom/menus/rofi/default.nix
+++ b/options/custom/menus/rofi/default.nix
@@ -45,7 +45,7 @@ in {
 
         dmenu.show = "${quit} || ${rofi} -dmenu";
         emoji.show = "${quit} || ${rofimoji} --prompt 󰱰";
-        network.show = "${quit} || ${rofi} -dmenu -p 󰛳";
+        network.show = "${quit} || ${networkmanager_dmenu}";
         search.show = "";
         vault.show = "${quit} || ${rofi-rbw} --prompt 󰌾";
       };
diff --git a/options/custom/programs/networkmanager-dmenu.nix b/options/custom/programs/networkmanager-dmenu.nix
index bb3ea98..62138d6 100644
--- a/options/custom/programs/networkmanager-dmenu.nix
+++ b/options/custom/programs/networkmanager-dmenu.nix
@@ -6,8 +6,9 @@
 }:
 with lib; let
   cfg = config.custom.programs.networkmanager-dmenu;
+  hm = config.home-manager.users.${config.custom.username};
 
-  bash = getExe pkgs.bash;
+  rofi = getExe hm.programs.rofi.package;
 in {
   options.custom.programs.networkmanager-dmenu.enable = mkOption {default = false;};
 
@@ -18,10 +19,15 @@ in {
     home-manager.users.${config.custom.username} = {
       # https://github.com/firecat53/networkmanager-dmenu/blob/main/config.ini.example
       #!! Option not available, files written directly
-      xdg.configFile."networkmanager-dmenu/config.ini".text = ''
+      xdg.configFile."networkmanager-dmenu/config.ini".text = let
+        menu =
+          if config.custom.menu == "rofi"
+          then "${rofi} -dmenu -p 󰛳"
+          else "";
+      in ''
         [dmenu]
         compact = true
-        dmenu_command = ${bash} -c '${config.custom.menus.network.show}'
+        dmenu_command = ${menu}
         list_saved = true
         active_chars = 
         highlight = true