diff --git a/desktop-environments/gnome.nix b/desktop-environments/gnome.nix index 2c7ad98..41fee32 100644 --- a/desktop-environments/gnome.nix +++ b/desktop-environments/gnome.nix @@ -9,11 +9,6 @@ services.desktopManager.gnome = { enable = true; - extraGSettingsOverridePackages = [ pkgs.mutter ]; - extraGSettingsOverrides = '' - [org.gnome.mutter] - experimental-features=['scale-monitor-framebuffer'] - ''; }; programs.dconf.profiles.user.databases = [ @@ -23,9 +18,16 @@ # re-login to activate "org/gnome/mutter" = { dynamic-workspaces = false; + experimental-features=[ + "scale-monitor-framebuffer" + "xwayland-native-scaling" + ]; + }; + "org/gnome/settings-daemon/plugins/media-keys" = { + volume-step = lib.gvariant.mkInt32 2; }; "org/gnome/desktop/wm/preferences" = { - num-workspaces = lib.gvariant.mkInt32 6; + num-workspaces = lib.gvariant.mkInt32 5; }; "org/gnome/desktop/wm/keybindings" = { switch-to-workspace-1 = ["1"]; @@ -39,7 +41,48 @@ font-name = "Noto Sans CJK SC 11 @wght=400"; monospace-font-name = "RecMonoLinear Nerd Font Mono 11"; }; + "org/gnome/shell" = { + # disable-user-extensions = true; # Optionally disable user extensions entirely + enabled-extensions = [ + # Put UUIDs of extensions that you want to enable here. + # If the extension you want to enable is packaged in nixpkgs, + # you can easily get its UUID by accessing its extensionUuid + # field (look at the following example). + pkgs.gnomeExtensions.blur-my-shell.extensionUuid + pkgs.gnomeExtensions.dash-to-dock.extensionUuid + pkgs.gnomeExtensions.brightness-control-using-ddcutil.extensionUuid + pkgs.gnomeExtensions.caffeine.extensionUuid + pkgs.gnomeExtensions.night-theme-switcher.extensionUuid + pkgs.gnomeExtensions.primary-input-on-lockscreen.extensionUuid + pkgs.gnomeExtensions.tray-icons-reloaded.extensionUuid + pkgs.gnomeExtensions.auto-move-windows.extensionUuid + + # Alternatively, you can manually pass UUID as a string. + # "blur-my-shell@aunetx" + # ... + ]; + }; + "org/gnome/shell/extensions/auto-move-windows" = { + application-list = [ + "Alacritty.desktop:1" + "firefox.desktop:2" + "thunderbird.desktop:3" + "org.telegram.desktop.desktop:4" + "steam.desktop:5" + ]; + }; }; } ]; + + environment.systemPackages = with pkgs; [ + gnomeExtensions.blur-my-shell + gnomeExtensions.dash-to-dock + gnomeExtensions.brightness-control-using-ddcutil + gnomeExtensions.caffeine + gnomeExtensions.night-theme-switcher + gnomeExtensions.primary-input-on-lockscreen + gnomeExtensions.tray-icons-reloaded + gnomeExtensions.auto-move-windows # pin apps to workspaces + ]; }