{ config, lib, pkgs, ... }: with lib; let cfg = config.custom.desktops.gnome; in { options.custom.desktops.gnome = { enable = mkOption { default = false; }; gdm = mkOption { default = true; }; }; config = mkIf cfg.enable { # FIXME: xdg-desktop-portal-[gnome|gtk] not working through steam services = { xserver = { enable = true; desktopManager.gnome.enable = true; displayManager.gdm.enable = cfg.gdm; }; gnome.gnome-browser-connector.enable = true; # Install extensions from browser }; # Remove default packages # https://wiki.nixos.org/wiki/GNOME#Excluding_GNOME_Applications environment.gnome.excludePackages = [ pkgs.gnome-shell-extensions ]; }; }