{ config, pkgs, lib, ... }: let cfg = config.krop.de.gnome; in { options.krop.de.gnome = { enable = lib.mkOption { type = lib.types.bool; default = false; example = true; description = "Enable gnome"; }; }; config = lib.mkIf cfg.enable { services.xserver = { enable = true; displayManager.gdm.enable = true; desktopManager.gnome.enable = true; }; xdg.portal = { enable = true; extraPortals = with pkgs; [ xdg-desktop-portal-gtk xdg-desktop-portal-gnome ]; configPackages = with pkgs; [ xdg-desktop-portal-gtk xdg-desktop-portal-gnome ]; }; services.gnome.gnome-browser-connector.enable = true; environment.gnome.excludePackages = with pkgs; [ epiphany geary seahorse totem ]; environment.systemPackages = with pkgs; [ gnome-tweaks ]; }; }