diff --git a/suites/desktop/default.nix b/suites/desktop/default.nix index 3959661..e331224 100755 --- a/suites/desktop/default.nix +++ b/suites/desktop/default.nix @@ -158,6 +158,7 @@ with lib; { # Home manager settings. home-manager.users.fern = { + # Ghostty settings. programs.ghostty = { enable = true; settings = { @@ -165,5 +166,49 @@ with lib; { theme = "GruvboxDarkHard"; }; }; + + # Gnome settings. + dconf.settings = { + "org/gnome/desktop/interface".accent-color = "green"; # Main colour used throughout interface. + "org/gnome/desktop/interface".clock-show-seconds = true; # Show seconds on menubar clock. + "org/gnome/desktop/interface".clock-show-weekday = true; # Show weekday on menubar clock. + "org/gnome/desktop/interface".color-scheme = "prefer-dark"; # Dark mode. + "org/gnome/desktop/interface".enable-hot-corners = false; # Disable hot corner activation. + "org/gnome/desktop/interface".show-battery-percentage = true; # Display battery percentage in menubar. + "org/gnome/desktop/peripherals/touchpad".natural-scroll = false; # Disable natural scrolling on trackpad. + "org/gnome/desktop/session".idle-delay = 300; # Switch off display after 5 minutes of activity. + "org/gnome/desktop/wm/preferences".num-workspaces = 5; # Make 5 workspaces available. + "org/gnome/mutter".dynamic-workspaces = false; # Specify number of workspaces (see previous). + "org/gnome/settings-daemon/plugins/color".night-light-enabled = true; # Enable night light. + "org/gnome/settings-daemon/plugins/power".sleep-inactive-ac-type = "nothing"; # Don't automatically suspend when charging. + "org/gnome/settings-daemon/plugins/power".sleep-inactive-battery-timeout = 1800; # Automatically suspend after 30 minutes on battery. + + # Keybinds + "org/gnome/desktop/wm/keybindings".move-to-workspace-1 = ["1"]; # Move window to workspace 1. + "org/gnome/desktop/wm/keybindings".move-to-workspace-2 = ["2"]; # Move window to workspace 2. + "org/gnome/desktop/wm/keybindings".move-to-workspace-3 = ["3"]; # Move window to workspace 3. + "org/gnome/desktop/wm/keybindings".move-to-workspace-4 = ["4"]; # Move window to workspace 4. + "org/gnome/desktop/wm/keybindings".switch-to-workspace-1 = ["1"]; # Switch to workspace 1. + "org/gnome/desktop/wm/keybindings".switch-to-workspace-2 = ["2"]; # Switch to workspace 2. + "org/gnome/desktop/wm/keybindings".switch-to-workspace-3 = ["3"]; # Switch to workspace 3. + "org/gnome/desktop/wm/keybindings".switch-to-workspace-4 = ["4"]; # Switch to workspace 4. + + "org/gnome/settings-daemon/plugins/media-keys".custom-keybindings = [ + "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/" + "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/" + ]; + + "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = { + binding = "period"; + command = "smile"; + name = "Open Emoji Picker"; + }; + + "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1" = { + binding = "Return"; + command = "ghostty"; + name = "Open Terminal"; + }; + }; }; }