Files
cnix/home/modules/wm/hyprland/cnst/default.nix
2024-10-13 18:09:15 +02:00

45 lines
1.1 KiB
Nix

{
inputs,
config,
lib,
pkgs,
umodPath,
...
}: let
inherit (lib) mkIf mkEnableOption mkDefault;
cfg = config.userModules.wm.hyprland.cnst;
in {
imports = [
"${umodPath}/wm/hyprland/cnst/appearance.nix"
"${umodPath}/wm/hyprland/cnst/inputs.nix"
"${umodPath}/wm/hyprland/cnst/keybinds.nix"
"${umodPath}/wm/hyprland/cnst/rules.nix"
"${umodPath}/wm/hyprland/cnst/startup.nix"
];
options = {
userModules.wm.hyprland.cnst.enable = mkEnableOption "Enable Hyprland";
};
config = mkIf cfg.enable {
userModules.wm.hyprland.cnst = {
appearance.enable = mkDefault cfg.enable;
inputs.enable = mkDefault cfg.enable;
keybinds.enable = mkDefault cfg.enable;
rules.enable = mkDefault cfg.enable;
startup.enable = mkDefault cfg.enable;
};
wayland.windowManager.hyprland = {
enable = true;
package = inputs.hyprland.packages.${pkgs.system}.default;
systemd = {
variables = ["--all"];
extraCommands = [
"systemctl --user stop graphical-session.target"
"systemctl --user start hyprland-session.target"
];
};
};
};
}