nix-config/modules/wm/hyprland/default.nix
2025-04-25 14:02:28 +02:00

52 lines
1,003 B
Nix

{
inputs,
outputs,
lib,
config,
pkgs,
...
}: let
inherit (lib) mkEnableOption mkIf mkOption types;
cfg = config.horseman.wm.hyprland;
in {
options = {
horseman.wm.hyprland = {
enable = mkEnableOption "HyprLand";
};
};
config = mkIf cfg.enable {
programs.hyprland = {
enable = true;
xwayland.enable = true;
};
security.polkit.enable = true;
environment.systemPackages = with pkgs; [
brightnessctl
eww
fortune
hyprlock
hyprshot
jq
networkmanagerapplet
playerctl
pulsemixer
python312Packages.gpustat
swaybg
wofi
xdg-desktop-portal-hyprland
];
services.logind.extraConfig = ''
HandlePowerKey=ignore
'';
system.activationScripts.script.text = ''
cd /home/horseman;
rm -r .config/hypr .config/eww;
cp -r nix-config/modules/wm/hyprland/config/* .config;
chown -R horseman:users .config/hypr .config/eww
'';
};
}