nix-conf/system/modules/hyprland.nix
danny 6a71b601f5 update: system update & refactor
# Breaking Changes
- sops location movod to "system/dev/<dev-name>/sops/sops-conf.nix"
- flake devices declaration changes
- whole flake update
2025-10-14 16:49:03 +08:00

62 lines
1.1 KiB
Nix

{
pkgs,
config,
inputs,
lib,
...
}:
let
inherit (lib) mkIf;
hyprlandEnabled = config.programs.hyprland.enable;
in
{
programs.hyprland = {
enable = config.systemConf.hyprland.enable;
withUWSM = false;
package = inputs.hyprland.packages."${pkgs.system}".hyprland;
portalPackage = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland;
};
xdg.portal = mkIf hyprlandEnabled {
enable = true;
xdgOpenUsePortal = true;
extraPortals = [
pkgs.xdg-desktop-portal-gtk
];
};
environment.sessionVariables = mkIf hyprlandEnabled {
NIXOS_OZONE_WL = "1";
WLR_NO_HARDWARE_CURSORS = "1";
};
environment.systemPackages = mkIf hyprlandEnabled (
with pkgs;
[
pyprland
hyprsunset
hyprpicker
hyprshot
kitty
# qt5.qtwayland
# qt6.qtwayland
wlogout
wl-clipboard
# Util
grim
slurp
]
);
nix = mkIf hyprlandEnabled {
settings = {
substituters = [ "https://hyprland.cachix.org" ];
trusted-public-keys = [
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
];
};
};
}