diff --git a/modules/programs/hyprland/default.nix b/modules/programs/hyprland/default.nix index dc58269..1d1ec62 100644 --- a/modules/programs/hyprland/default.nix +++ b/modules/programs/hyprland/default.nix @@ -58,7 +58,16 @@ in enable = true; # use package with hyprland support for switching workspaces - package = pkgs.waybar-hyprland; + package = pkgs.symlinkJoin { + name = "waybar-hyprland"; + paths = [ pkgs.waybar-hyprland ]; + nativeBuildInputs = [ pkgs.makeWrapper ]; + postBuild = '' + wrapProgram $out/bin/waybar \ + --prefix PATH ":" "${hyprland}/bin" + ''; + }; + # start using systemd service systemd = { diff --git a/overlays/wayland.nix b/overlays/wayland.nix index 0ad9931..dc0f140 100644 --- a/overlays/wayland.nix +++ b/overlays/wayland.nix @@ -22,12 +22,4 @@ final: prev: { --add-flags "--socket=wayland --enable-features=UseOzonePlatform --ozone-platform=wayland" ''; }; - - waybar-hyprland = prev.waybar.overrideAttrs (old: { - pname = "${old.pname}-hyprland"; - postPatch = old.postPatch or "" + '' - sed -i 's,zext_workspace_handle_v1_activate(workspace_handle_);,const std::string command = "${final.hyprland}/bin/hyprctl dispatch workspace " + name_;\n\tsystem(command.c_str());,g' src/modules/wlr/workspace_manager.cpp - ''; - mesonFlags = old.mesonFlags or [ ] ++ [ "-Dexperimental=true" ]; - }); }