Files

89 lines
3.1 KiB
Nix

{ config, pkgs, lib, ... }:
{
# Enable the GNOME Desktop Environment.
services.displayManager.gdm = {
enable = true;
wayland = true;
};
services.desktopManager.gnome = {
enable = true;
};
programs.dconf.profiles.user.databases = [
{
lockAll = true; # prevents overriding
settings = {
# 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 3;
};
"org/gnome/desktop/wm/preferences" = {
num-workspaces = lib.gvariant.mkInt32 5;
};
"org/gnome/desktop/wm/keybindings" = {
switch-to-workspace-1 = ["<Control>1"];
switch-to-workspace-2 = ["<Control>2"];
switch-to-workspace-3 = ["<Control>3"];
switch-to-workspace-4 = ["<Control>4"];
switch-to-workspace-5 = ["<Control>5"];
};
"org/gnome/desktop/interface" = {
document-font-name = "Noto Sans CJK SC 12 @wght=400";
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
];
}