{ config, lib, pkgs, ... }: { options = { window_manager = { hyprland.enable = lib.mkEnableOption "enable hyprland"; }; }; config = lib.mkIf config.window_manager.hyprland.enable { xdg.portal = { enable = true; configPackages = [ pkgs.xdg-desktop-portal-hyprland ]; extraPortals = [ pkgs.xdg-desktop-portal-hyprland ]; }; programs = { hyprlock = { enable = true; }; }; wayland.windowManager.hyprland = { enable = true; settings = { exec-once = [ ]; "$mod" = "SUPER"; "$shiftmod" = "SUPER_SHIFT"; bind = [ "$mod, D, exec, walker" "$shiftmod, Q, killactive," "$mod, return, exec, kitty" ]; input = { kb_layout = "de"; }; }; }; home.sessionVariables.NIXOS_OZONE_WL = "1"; }; }