Dispatchers don't work with NixOS + Home Manager
Closed this issue · 2 comments
I'm very new to the Nix ecosystem so I guess it's most likely I'm doing something wrong.
But since I can load the plugin successfully I figured the appropriate place to ask is here.
So the issue is, as I mentioned, the plugin is loaded, the dispatchers are recognized by Hyprland, but they simply have no effect, i.e. hyprctl dispatch hy3:killactive
and others do nothing. This is also the case when I'm invoking them via keybindings.
This happens on master builds as well as 0.34.0 builds.
Here is my setup:
flake.nix
{ description = "my nix flake";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/master";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
hyprland.url = "github:hyprwm/Hyprland";
hy3 = {
url = "github:outfoxxed/hy3";
inputs.hyprland.follows = "hyprland";
};
};
outputs =
inputs @ { self, nixpkgs, home-manager, hyprland, hy3, ... }:
let inherit (self) outputs; in
{ nixosConfigurations = {
primary = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs outputs; };
modules =
[ ./nixos/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = { inherit inputs outputs; };
home-manager.users.me = import ./home-manager/home.nix;
}
];
};
};
};
}
home-manager/home.nix
{ inputs, config, pkgs, lib, hy3, ... }:
{
programs.home-manager.enable = true;
home = {
username = "me";
homeDirectory = "/home/me";
stateVersion = "23.11";
};
home.packages = with pkgs; [];
wayland.windowManager.hyprland = {
enable = true;
systemd.enable = false;
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
plugins = [ inputs.hy3.packages.x86_64-linux.hy3 ];
};
}
It produces this flake.lock:
flake.lock
{
"nodes": {
"home-manager": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1704309533,
"narHash": "sha256-n/krnzgnmYWdVoMv0MJfEMTOYCkoY13rCwKhQ4RVd2U=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "992b38f29cd7e50d88a2ae069133750beda010a4",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"hy3": {
"inputs": {
"hyprland": [
"hyprland"
]
},
"locked": {
"lastModified": 1704173467,
"narHash": "sha256-VXR/Kfda8P2PSOGSQ20czrXDn4ELRwyIYtJ9MFaMRBA=",
"owner": "outfoxxed",
"repo": "hy3",
"rev": "9a1111efbab842a26477b651ae02deaa39fe1ef4",
"type": "github"
},
"original": {
"owner": "outfoxxed",
"repo": "hy3",
"type": "github"
}
},
"hyprland": {
"inputs": {
"hyprland-protocols": "hyprland-protocols",
"nixpkgs": "nixpkgs",
"systems": "systems",
"wlroots": "wlroots",
"xdph": "xdph"
},
"locked": {
"lastModified": 1704360017,
"narHash": "sha256-g0fqfWYlFYdyYcAusGguWObS0ylOJPiQQwaZo4KXQUM=",
"owner": "hyprwm",
"repo": "Hyprland",
"rev": "4d6d662c67786c86647cf41b5b20d9c0b418dbb3",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "Hyprland",
"type": "github"
}
},
"hyprland-protocols": {
"inputs": {
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1691753796,
"narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=",
"owner": "hyprwm",
"repo": "hyprland-protocols",
"rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprland-protocols",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1703438236,
"narHash": "sha256-aqVBq1u09yFhL7bj1/xyUeJjzr92fXVvQSSEx6AdB1M=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "5f64a12a728902226210bf01d25ec6cbb9d9265b",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1704326729,
"narHash": "sha256-I8CrqJRtPslVQBTpVTsAY3Als/HwRdoOTyupsK7YI2E=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "6ce10ae92e8b3453055c521a17349ee35606b714",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "master",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"home-manager": "home-manager",
"hy3": "hy3",
"hyprland": "hyprland",
"nixpkgs": "nixpkgs_2"
}
},
"systems": {
"locked": {
"lastModified": 1689347949,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
"owner": "nix-systems",
"repo": "default-linux",
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default-linux",
"type": "github"
}
},
"wlroots": {
"flake": false,
"locked": {
"host": "gitlab.freedesktop.org",
"lastModified": 1703963193,
"narHash": "sha256-ke8drv6PTrdQDruWbajrRJffP9A9PU6FRyjJGNZRTs4=",
"owner": "wlroots",
"repo": "wlroots",
"rev": "f81c3d93cd6f61b20ae784297679283438def8df",
"type": "gitlab"
},
"original": {
"host": "gitlab.freedesktop.org",
"owner": "wlroots",
"repo": "wlroots",
"rev": "f81c3d93cd6f61b20ae784297679283438def8df",
"type": "gitlab"
}
},
"xdph": {
"inputs": {
"hyprland-protocols": [
"hyprland",
"hyprland-protocols"
],
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1703514399,
"narHash": "sha256-VRr5Xc4S/VPr/gU3fiOD3vSIL2+GJ+LUrmFTWTwnTz4=",
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
"rev": "0a318a7a217a6402b0b705837cd5b50b0e94b31b",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
"type": "github"
}
}
},
"root": "root",
"version": 7
}
And the version currently reported by Hyprland is:
$ hyprctl version -j
{
"branch": "",
"commit": "4d6d662c67786c86647cf41b5b20d9c0b418dbb3",
"dirty": false,
"commit_message": "",
"commit_date": "2024-01-04",
"tag": "",
"flags": []
}
did you set layout to hy3?
did you set layout to hy3?
JFC, I've been using your plugin for several months now and it's the thing I forgot about! I guess I was distracted by figuring out the Nix things. Thank you, it all works now.