{ pkgs, lib, inputs, ... }: { programs.hyprland = { enable = true; package = inputs.hyprland.packages.${pkgs.system}.hyprland; portalPackage = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland; xwayland.enable = true; }; xdg.portal = { enable = true; xdgOpenUsePortal = true; extraPortals = with pkgs; [ xdg-desktop-portal-hyprland xdg-desktop-portal-gtk ]; config.hyprland = lib.mkForce { default = [ "hyprland" "gtk" ]; "org.freedesktop.impl.portal.Screenshot" = [ "hyprland" ]; "org.freedesktop.impl.portal.ScreenCast" = [ "hyprland" ]; "org.freedesktop.impl.portal.FileChooser" = [ "gtk" ]; }; }; services = { dbus.enable = true; pipewire = { enable = true; pulse.enable = true; wireplumber.enable = true; }; gnome = { gnome-keyring.enable = true; gnome-settings-daemon.enable = lib.mkDefault false; }; }; security.polkit.enable = true; environment.systemPackages = with pkgs; [ glib dconf dconf-editor xdg-utils xdg-user-dirs ]; }