about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-11-29 21:24:11 +0100
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-11-29 21:24:11 +0100
commit815d9d8bf57fa491fe062c7c839c60cdef5dffaf (patch)
treecd3fbd45c23141d425a0ea610073af136f95d6f5
parentpkgs/notify-run: Init (diff)
downloadnixos-config-815d9d8bf57fa491fe062c7c839c60cdef5dffaf.zip
modules/river/keymap: Send a notification, when spawning a command fails
Diffstat (limited to '')
-rw-r--r--modules/by-name/ri/river/keymap.nix6
-rw-r--r--pkgs/by-name/no/notify-run/package.nix9
-rw-r--r--pkgs/by-name/no/notify-run/src/main.rs2
3 files changed, 14 insertions, 3 deletions
diff --git a/modules/by-name/ri/river/keymap.nix b/modules/by-name/ri/river/keymap.nix
index 81bb0754..458f77de 100644
--- a/modules/by-name/ri/river/keymap.nix
+++ b/modules/by-name/ri/river/keymap.nix
@@ -14,10 +14,14 @@
         if args == ""
         then ""
         else " ";
+      maybeQuote =
+        if args == ""
+        then ""
+        else "\"";
     in {
       command = [
         "spawn"
-        "${lib.getExe' pkg binaryName}${maybeSpace}${args}"
+        "${lib.getExe pkgs.notify-run} \"${lib.getExe' pkg binaryName}\" ${maybeSpace}${maybeQuote}${args}${maybeQuote}"
       ];
 
       description = "${binaryName}${maybeSpace}${args}";
diff --git a/pkgs/by-name/no/notify-run/package.nix b/pkgs/by-name/no/notify-run/package.nix
index a5b0a1d7..7bf07c1a 100644
--- a/pkgs/by-name/no/notify-run/package.nix
+++ b/pkgs/by-name/no/notify-run/package.nix
@@ -7,11 +7,18 @@
 #
 # You should have received a copy of the License along with this program.
 # If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>.
-{rustPlatform}:
+{
+  rustPlatform,
+  libnotify,
+}:
 rustPlatform.buildRustPackage {
   pname = "notify-run";
   version = "0.1.0";
 
+  buildInputs = [
+    libnotify
+  ];
+
   src = ./.;
   cargoLock = {
     lockFile = ./Cargo.lock;
diff --git a/pkgs/by-name/no/notify-run/src/main.rs b/pkgs/by-name/no/notify-run/src/main.rs
index 18b7af58..2aefd4df 100644
--- a/pkgs/by-name/no/notify-run/src/main.rs
+++ b/pkgs/by-name/no/notify-run/src/main.rs
@@ -16,7 +16,7 @@ fn main() -> Result<()> {
     let args = args().skip(1).collect::<Vec<_>>();
 
     let mut cmd = Command::new(&args[0]);
-    cmd.args(&args[1..]);
+    cmd.args(args[1].split(" ").collect::<Vec<_>>().as_slice());
 
     eprintln!("Spawning {:?}", cmd);