dotfiles

My PC Dotfiles & Website

modules/desktop/gnome/_settings/main.nix (6581B)


  1_: {
  2  config,
  3  lib,
  4  osConfig ? null,
  5  ...
  6}:
  7lib.mkIf (osConfig != null) (
  8  with lib.hm.gvariant; {
  9    ## Dconf Keys ##
 10    # Generated via nix-community/dconf2nix
 11    # Use 'dconf watch /' to record changes
 12    dconf.settings = {
 13      # Keyboard Shortcuts
 14      "org/gnome/desktop/wm/keybindings" = {
 15        always-on-top = ["<Super>p"];
 16        begin-move = [];
 17        begin-resize = [];
 18        close = [
 19          "<Super>q"
 20          "<Alt>F4"
 21        ];
 22        cycle-group = [];
 23        cycle-group-backward = [];
 24        maximize = ["<Super>Up"];
 25        minimize = ["<Super>Down"];
 26        move-to-center = ["<Super>c"];
 27        move-to-monitor-down = [];
 28        move-to-monitor-left = ["<Primary><Super>Left"];
 29        move-to-monitor-right = ["<Primary><Super>Right"];
 30        move-to-monitor-up = [];
 31        move-to-workspace-1 = [];
 32        move-to-workspace-down = [];
 33        move-to-workspace-last = [];
 34        move-to-workspace-left = ["<Shift><Super>Left"];
 35        move-to-workspace-right = ["<Shift><Super>Right"];
 36        move-to-workspace-up = [];
 37        panel-main-menu = [];
 38        panel-run-dialog = ["<Super>F2"];
 39        switch-applications = ["<Alt>Tab"];
 40        switch-applications-backward = ["<Shift><Alt>Tab"];
 41        switch-group = ["<Super>Tab"];
 42        switch-group-backward = ["<Shift><Super>Tab"];
 43        switch-to-workspace-down = [];
 44        switch-to-workspace-left = ["<Super>Left"];
 45        switch-to-workspace-right = ["<Super>Right"];
 46        switch-to-workspace-up = [];
 47        toggle-fullscreen = ["<Shift><Super>f"];
 48        toggle-maximized = ["<Super>m"];
 49        unmaximize = [];
 50      };
 51
 52      "org/gnome/mutter/keybindings" = {
 53        toggle-tiled-left = [];
 54        toggle-tiled-right = [];
 55      };
 56
 57      "org/gnome/shell/keybindings" = {
 58        focus-active-notification = [];
 59        open-application-menu = [];
 60        switch-to-application-1 = ["<Super>1"];
 61        switch-to-application-2 = ["<Super>2"];
 62        switch-to-application-3 = ["<Super>3"];
 63        switch-to-application-4 = ["<Super>4"];
 64        switch-to-application-5 = ["<Super>5"];
 65        switch-to-application-6 = ["<Super>6"];
 66        switch-to-application-7 = ["<Super>7"];
 67        switch-to-application-8 = ["<Super>8"];
 68        switch-to-application-9 = ["<Super>9"];
 69        toggle-application-view = [];
 70        toggle-message-tray = ["<Super><Shift>n"];
 71        toggle-overview = [];
 72        toggle-quick-settings = [];
 73      };
 74
 75      "org/gnome/settings-daemon/plugins/media-keys" = {
 76        area-screenshot = ["Print"];
 77        area-screenshot-clip = [];
 78        control-center = ["<Super><Shift>grave"];
 79        email = ["<Super>e"];
 80        home = ["<Super>f"];
 81        magnifier = ["<Super>x"];
 82        magnifier-zoom-in = ["<Super>equal"];
 83        magnifier-zoom-out = ["<Super>minus"];
 84        rotate-video-lock-static = [];
 85        screencast = ["<Alt>Print"];
 86        screenreader = [];
 87        screenshot = ["<Shift>Print"];
 88        screenshot-clip = [];
 89        screensaver = ["<Super>l"];
 90        terminal = [];
 91        volume-down = ["AudioLowerVolume"];
 92        volume-up = ["AudioRaiseVolume"];
 93        window-screenshot = ["<Primary>Print"];
 94        window-screenshot-clip = [];
 95        www = ["<Super>grave"];
 96        custom-keybindings = [
 97          "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/"
 98          "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/"
 99        ];
100      };
101
102      "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
103        binding = "<Super>Return";
104        command = "resources";
105        name = "Task Manager";
106      };
107
108      "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1" = {
109        binding = "<Super>t";
110        command = "ghostty";
111        name = "Terminal";
112      };
113
114      "org/gnome/desktop/wm/preferences" = {
115        button-layout = "appmenu:minimize,maximize,close";
116        focus-mode = "click";
117        titlebar-font = "${config.stylix.fonts.sansSerif.name} Bold 11";
118        visual-bell = false;
119      };
120
121      # Core Settings
122      "org/gnome/desktop/a11y".always-show-universal-access-status = true;
123      "org/gnome/desktop/a11y/applications".screen-magnifier-enabled = false;
124
125      "org/gnome/mutter" = {
126        attach-modal-dialogs = true;
127        center-new-windows = true;
128        dynamic-workspaces = true;
129        edge-tiling = false;
130        focus-change-on-pointer-rest = true;
131        overlay-key = "Super";
132        workspaces-only-on-primary = true;
133        experimental-features = [
134          "scale-monitor-framebuffer"
135          "xwayland-native-scaling"
136        ];
137      };
138
139      "org/gnome/desktop/interface" = {
140        accent-color = "blue";
141        clock-show-weekday = true;
142        enable-animations = true;
143        enable-hot-corners = true;
144        font-antialiasing = "grayscale";
145        font-hinting = "slight";
146        gtk-im-module = "gtk-im-context-simple";
147        locate-pointer = true;
148        show-battery-percentage = true;
149        toolkit-accessibility = false;
150      };
151
152      "org/gnome/desktop/peripherals/touchpad" = {
153        click-method = "areas";
154        tap-to-click = true;
155        two-finger-scrolling-enabled = true;
156      };
157
158      "org/gnome/settings-daemon/plugins/power" = {
159        power-button-action = "interactive";
160        sleep-inactive-ac-type = "nothing";
161        sleep-inactive-battery-timeout = 1800;
162      };
163
164      "org/gnome/settings-daemon/plugins/color" = {
165        night-light-enabled = true;
166        night-light-schedule-automatic = false;
167        night-light-schedule-from = 19.0;
168        night-light-schedule-to = 7.0;
169        night-light-temperature = mkUint32 3700;
170      };
171
172      "org/gnome/desktop/a11y/magnifier" = {
173        mouse-tracking = "proportional";
174        show-cross-hairs = false;
175      };
176
177      "org/gnome/desktop/privacy" = {
178        disable-microphone = false;
179        old-files-age = mkUint32 7;
180        remember-recent-files = false;
181        remove-old-temp-files = true;
182        remove-old-trash-files = true;
183      };
184
185      "org/gnome/desktop/sound" = {
186        allow-volume-above-100-percent = true;
187        event-sounds = true;
188        theme-name = "__custom";
189      };
190
191      "org/gnome/desktop/screensaver" = {
192        color-shading-type = "solid";
193        lock-delay = mkUint32 0;
194        lock-enabled = false;
195        picture-options = "zoom";
196        primary-color = "#000000000000";
197        secondary-color = "#000000000000";
198      };
199    };
200  }
201)