{pkgs, ... } @ moduleArgs:

{
  imports = [
    ../unstable-packages.nix
  ];
  config = {
    services.xserver.enable = true;
    services.xserver.desktopManager.gnome.enable = true;

    # environment.sessionVariables.NIXOS_OZONE_WL = "1";

    programs.dconf.profiles.user.databases = [{
      settings = import ../dconf-common.nix moduleArgs [
        "org/gnome/desktop/background"
        "org/gnome/desktop/interface"
        "org/gnome/desktop/media-handling"
        "org/gnome/desktop/peripherals/mouse"
        "org/gnome/desktop/sound"
        "org/gnome/desktop/wm/preferences"
        "org/gnome/mutter"
        "org/gnome/SessionManager"
        "org/gnome/settings-daemon/plugins/power"
        "org/gnome/shell"
        "org/gnome/shell/app-switcher"
        "org/gnome/shell/extensions/color-picker"
        "org/gnome/shell/extensions/pop-shell"
        "org/gnome/shell/extensions/top-bar-organizer"
        "org/gnome/shell/extensions/trayIconsReloaded"
        "org/gnome/shell/extensions/vitals"
        "org/gnome/shell/keybindings"
        "org/gnome/desktop/default-applications/terminal"
        "org/gnome/settings-daemon/plugins/media-keys"
        "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0"
      ];
    }];

    environment.gnome.excludePackages = with pkgs; with pkgs.gnome; [
      baobab
      cheese
      epiphany
      evince
      geary
      gedit
      gnome-characters
      gnome-connections
      gnome-console
      gnome-disk-utility
      gnome-font-viewer
      gnome-logs
      gnome-maps
      gnome-text-editor
      gnome-tour
      seahorse
      totem
      yelp
    ];

    environment.systemPackages = with pkgs; [
      gnomeExtensions.pop-shell
      gnomeExtensions.vitals
      gnomeExtensions.tray-icons-reloaded
      gnomeExtensions.color-picker
      gnomeExtensions.top-bar-organizer
      # unstablePkgs.gnomeExtensions.translate-indicator
      # translate-shell
      pavucontrol
      #FIXME: Apply the cursor theme also in GTK3 config
      google-cursor
    ];
  };
}