{ inputs, config, system, lib, ... }: let inherit (lib) mkIf mkDefault; cfg = config.desktops; in { imports = [ ./binds.nix ./env.nix ./idle.nix ./plugins.nix ./settings.nix ./wallpaper.nix ]; config = mkIf cfg.hyprland { desktops.wayland = true; default.session = mkDefault "hyprland-session.target"; xdg.portal = { extraPortals = [ inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland ]; config = { hyprland.common = ["gtk" "hyprland"]; }; }; home-manager.users.${config.user} = { wayland.windowManager.hyprland = { enable = true; package = inputs.hyprland.packages.${system}.hyprland; xwayland.enable = true; systemd.enable = true; }; }; }; }