aboutsummaryrefslogtreecommitdiffhomepage
path: root/nix
diff options
context:
space:
mode:
authoroutfoxxed <[email protected]>2023-05-16 13:39:14 -0700
committerGitHub <[email protected]>2023-05-16 23:39:14 +0300
commit642030f959efe7bd2692bf6a4236d4c1b39ee51a (patch)
tree2df2fdf2b237e2fc7279d6bda76ea4b9b3cc97c1 /nix
parent78826c6d18ee587a28cf39479f9a015888d2e096 (diff)
downloadHyprland-642030f959efe7bd2692bf6a4236d4c1b39ee51a.tar.gz
Hyprland-642030f959efe7bd2692bf6a4236d4c1b39ee51a.zip
Fix not finding function symbols for hooking (#2292)
Fixes no useful feedback about failing subcommand. Fixes function hooks breaking when running under a path containing spaces. Replaced old usages with this function where possible. Complex shell usages now use `execAndGetShell` which is equal to the old function.
Diffstat (limited to 'nix')
-rw-r--r--nix/default.nix8
-rw-r--r--nix/overlays.nix1
2 files changed, 9 insertions, 0 deletions
diff --git a/nix/default.nix b/nix/default.nix
index 5b59e514..a3197712 100644
--- a/nix/default.nix
+++ b/nix/default.nix
@@ -2,8 +2,10 @@
lib,
stdenv,
pkg-config,
+ makeWrapper,
meson,
ninja,
+ binutils,
cairo,
git,
hyprland-protocols,
@@ -29,6 +31,7 @@
legacyRenderer ? false,
nvidiaPatches ? false,
withSystemd ? true,
+ wrapRuntimeDeps ? true,
version ? "git",
commit,
}: let
@@ -56,6 +59,7 @@ in
meson
ninja
pkg-config
+ makeWrapper
];
outputs = [
@@ -115,6 +119,10 @@ in
postInstall = ''
ln -s ${wlroots}/include/wlr $dev/include/hyprland/wlroots
+ ${lib.optionalString wrapRuntimeDeps ''
+ wrapProgram $out/bin/Hyprland \
+ --suffix PATH : ${lib.makeBinPath [ binutils pciutils ]}
+ ''}
'';
passthru.providedSessions = ["hyprland"];
diff --git a/nix/overlays.nix b/nix/overlays.nix
index 3b8e22b6..d783f33d 100644
--- a/nix/overlays.nix
+++ b/nix/overlays.nix
@@ -25,6 +25,7 @@ in {
inherit (final) udis86 hyprland-protocols;
};
+ hyprland-unwrapped = final.hyprland.override {wrapRuntimeDeps = false;};
hyprland-debug = final.hyprland.override {debug = true;};
hyprland-hidpi = final.hyprland.override {hidpiXWayland = true;};
hyprland-nvidia = final.hyprland.override {nvidiaPatches = true;};