From 4363d3b42f71156c5de80c3cf9ff998ff0a5681a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nikodem=20Rabuli=C5=84ski?= Date: Thu, 1 Feb 2024 23:00:34 +0100 Subject: [PATCH] services/yabai: Remove IFD enableScriptingAddition no longer triggers IFD by using runCommand to generate sudoers.d/yabai, instead of builtins.hashFile and interpolating the string in nix. --- modules/services/yabai/default.nix | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/modules/services/yabai/default.nix b/modules/services/yabai/default.nix index 63fbfdba4..a26c7ca08 100644 --- a/modules/services/yabai/default.nix +++ b/modules/services/yabai/default.nix @@ -96,11 +96,13 @@ in serviceConfig.KeepAlive.SuccessfulExit = false; }; - environment.etc."sudoers.d/yabai".text = - let - sha = builtins.hashFile "sha256" "${cfg.package}/bin/yabai"; - in - "%admin ALL=(root) NOPASSWD: sha256:${sha} ${cfg.package}/bin/yabai --load-sa"; + environment.etc."sudoers.d/yabai".source = pkgs.runCommand "sudoers-yabai" {} '' + YABAI_BIN="${cfg.package}/bin/yabai" + SHASUM=$(sha256sum "$YABAI_BIN" | cut -d' ' -f1) + cat <"$out" + %admin ALL=(root) NOPASSWD: sha256:$SHASUM $YABAI_BIN --load-sa + EOF + ''; }) ]; }