{ config, unstable, ... }: { # Use "unstable" instead of "pkgs" to get the latest packages, defined in "flake.nix" services.xserver = { # https://nixos.org/manual/nixos/stable/index.html#chap-gnome # Enable the GNOME Desktop Environment. displayManager.gdm.enable = true; desktopManager.gnome.enable = true; }; # Set Gnome settings: services.gnome = { games.enable = false; core-utilities.enable = true; }; # https://nixos.wiki/wiki/GNOME # Remove unwanted packages environment.gnome.excludePackages = (with unstable.pkgs; [ gnome.cheese gnome.gnome-music gnome.epiphany gnome.geary gnome.totem gnome.gnome-characters gnome-tour gnome-photos gnome.yelp gnome.gnome-font-viewer gnome-connections gnome.gnome-contacts gnome.gnome-logs gnome.gnome-maps gnome.simple-scan ]); environment.systemPackages = with unstable.pkgs; [ # Gnome Extensions gnomeExtensions.tiling-assistant gnomeExtensions.dash-to-dock gnomeExtensions.blur-my-shell gnomeExtensions.vitals gnomeExtensions.user-themes gnomeExtensions.caffeine gnomeExtensions.hibernate-status-button gnomeExtensions.night-theme-switcher # Gnome relevant packages gnome3.gnome-tweaks papirus-icon-theme ]; imports = [ # Gnome Themes ./gnome/themes/gruvbox.nix ./gnome/themes/tokyo-night.nix ./gnome/themes/nordic.nix ./gnome/themes/vimix.nix ./gnome/themes/fluent.nix ]; # Idea... Move these to a separate file and tie it into dconf # sections that load the theme automatically when I want it. }