{ pkgs, ... }: let extensions = with pkgs.gnomeExtensions; [ dash-to-dock ]; in { services.displayManager.gdm.enable = true; services.desktopManager.gnome.enable = true; # To disable installing GNOME's suite of applications # and only be left with GNOME shell. services.gnome.core-apps.enable = false; services.gnome.core-developer-tools.enable = false; services.gnome.games.enable = false; environment.gnome.excludePackages = with pkgs; [ gnome-tour gnome-user-docs ]; environment.systemPackages = extensions ++ [ pkgs.refine pkgs.gnome-tweaks ]; programs.gnome-terminal = { enable = true; }; programs.dconf.profiles.user.databases = [ { settings = { "org/gnome/shell" = { enabled-extensions = map (builtins.getAttr "extensionUuid") extensions; }; "org/gnome/desktop/peripherals/mouse" = { accel-profile = "flat"; }; "org/gnome/desktop/peripherals/trackball" = { accel-profile = "flat"; }; }; } ]; qt = { enable = true; platformTheme = "gnome"; style = "adwaita"; }; }