diff --git a/modules/home/desktop/gnome.nix b/modules/home/desktop/gnome.nix new file mode 100644 index 0000000..b743fc2 --- /dev/null +++ b/modules/home/desktop/gnome.nix @@ -0,0 +1,77 @@ +{ + lib, + config, + pkgs, + ... +}: + +with lib; +let + cfg = config.modules.desktop.gnome; +in +{ + options.modules.desktop.gnome = { + enable = mkEnableOption "gnome"; + }; + + config = mkIf cfg.enable { + # TODO: Enable extensions with dconf + + home.pointerCursor = { + name = "capitaine-cursors"; + size = 24; + package = pkgs.capitaine-cursors; + gtk.enable = true; + x11.enable = true; + }; + + home.packages = + with pkgs; + [ + gnome-session + gnome-shell + gnome-tweaks + gnome-calculator + snapshot + gnome-characters + gnome-connections + blackbox-terminal + baobab + gnome-disk-utility + evince + nautilus + gnome-font-viewer + loupe + gnome-maps + gnome-music + gnome-control-center + gnome-text-editor + showtime + file-roller + + # For theming gtk3 + adw-gtk3 + ] + ++ (with pkgs.gnomeExtensions; [ + gsconnect + disable-workspace-animation + wallpaper-slideshow + ]); + + # Enable and set the gtk themes + gtk = { + enable = true; + gtk3.extraConfig = { + gtk-theme-name = "adw-gtk3"; + }; + gtk4.extraConfig = { + gtk-theme-name = "Adwaita"; + }; + }; + + # Set the theme with dconf + dconf.settings."org/gnome/desktop/interface" = { + gtk-theme = "adw-gtk3"; + }; + }; +} diff --git a/modules/home/desktop/gnome/default.nix b/modules/home/desktop/gnome/default.nix deleted file mode 100644 index c3f9387..0000000 --- a/modules/home/desktop/gnome/default.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.desktop.gnome; -in -{ - options.modules.desktop.gnome = { - enable = mkEnableOption "gnome"; - }; - - config = mkIf cfg.enable { - # TODO: Enable extensions with dconf - - home.packages = - with pkgs; - [ - gnome-control-center - gnome-tweaks - blackbox-terminal - ] - ++ (with pkgs.gnomeExtensions; [ - gsconnect - disable-workspace-animation - ]); - }; -} diff --git a/modules/home/desktop/tiling/default.nix b/modules/home/desktop/tiling/default.nix deleted file mode 100644 index 32ffec5..0000000 --- a/modules/home/desktop/tiling/default.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.desktop.tiling; -in -{ - options.modules.desktop.tiling = { - enable = mkEnableOption "tiling desktop"; - }; - - config = mkIf cfg.enable { - - }; -} diff --git a/modules/home/development/vscode.nix b/modules/home/development/vscode.nix index 2da5442..d2573f8 100644 --- a/modules/home/development/vscode.nix +++ b/modules/home/development/vscode.nix @@ -84,6 +84,9 @@ in # Disable update notifications "update.mode" = "none"; + # Set themes + "window.autoDetectColorScheme" = true; + # TODO: Move to direnv module # Ignore direnv folder "files.exclude" = { diff --git a/modules/nixos/gnome.nix b/modules/nixos/gnome.nix index 384fc95..2cc42df 100644 --- a/modules/nixos/gnome.nix +++ b/modules/nixos/gnome.nix @@ -40,22 +40,6 @@ in xdg-user-dirs-gtk ]; - # Set up desktop entries for possible desktop environments - services.displayManager.sessionPackages = [ - (pkgs.writeTextFile { - name = "river.desktop"; - text = '' - [Desktop Entry] - Name=River - Comment=A dynamic tiling Wayland compositor - Exec=river - Type=Application - ''; - destination = "/share/wayland-sessions/river.desktop"; - passthru.providedSessions = [ "river" ]; - }) - ]; - # Enable Gnome Remote Desktop services.gnome.gnome-remote-desktop.enable = true; systemd.services."gnome-remote-desktop".wantedBy = [ "graphical.target" ];