94 lines
3 KiB
Nix
94 lines
3 KiB
Nix
{
|
|
pkgs,
|
|
lib,
|
|
self,
|
|
config,
|
|
...
|
|
}: let
|
|
cfg = config.pim.gnome;
|
|
in {
|
|
options.pim.gnome.enable = lib.mkEnableOption "gnome";
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
home.packages = [pkgs.gnome-tweaks];
|
|
|
|
dconf.settings = with lib.hm.gvariant; {
|
|
"org/gnome/desktop/sound".allow-volume-above-100-percent = true;
|
|
"org/gnome/desktop/wm/preferences".num-workspaces = 4;
|
|
"org/gnome/mutter".edge-tiling = true;
|
|
|
|
"org/gnome/shell" = {
|
|
disable-extension-version-validation = true;
|
|
|
|
enabled-extensions = [
|
|
"workspaces-by-open-apps@favo02.github.com"
|
|
"pop-shell@system76.com"
|
|
"windowIsReady_Remover@nunofarruca@gmail.com"
|
|
"randomwallpaper@iflow.space"
|
|
"Vitals@CoreCoding.com"
|
|
"tailscale-status@maxgallup.github.com"
|
|
];
|
|
};
|
|
|
|
"org/gnome/desktop/input-sources" = {
|
|
sources = [(mkTuple ["xkb" "us"])];
|
|
xkb-options = ["terminate:ctrl_alt_bksp" "caps:escape"];
|
|
};
|
|
|
|
"org/gnome/shell/extensions/pop-shell" = {
|
|
active-hint = true;
|
|
fullscreen-launcher = false;
|
|
mouse-cursor-focus-location = mkUint32 4;
|
|
mouse-cursor-follows-active-window = true;
|
|
show-skip-taskbar = false;
|
|
show-title = true;
|
|
smart-gaps = false;
|
|
snap-to-grid = false;
|
|
stacking-with-mouse = true;
|
|
tile-by-default = true;
|
|
};
|
|
|
|
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
|
|
binding = "<Super>t";
|
|
command = lib.getExe config.programs.alacritty.package;
|
|
name = "Terminal";
|
|
};
|
|
|
|
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1" = {
|
|
binding = "<Super>e";
|
|
command = "${lib.getExe config.programs.librewolf.package} --browser";
|
|
name = "Browser";
|
|
};
|
|
|
|
"org/gnome/desktop/wm/keybindings" = {
|
|
close = ["<Shift><Super>q"];
|
|
minimize = mkEmptyArray type.string;
|
|
move-to-workspace-1 = ["<Shift><Super>1"];
|
|
move-to-workspace-2 = ["<Shift><Super>2"];
|
|
move-to-workspace-3 = ["<Shift><Super>3"];
|
|
move-to-workspace-4 = ["<Shift><Super>4"];
|
|
switch-applications = mkEmptyArray type.string;
|
|
switch-applications-backward = mkEmptyArray type.string;
|
|
switch-to-workspace-1 = ["<Super>1"];
|
|
switch-to-workspace-2 = ["<Super>2"];
|
|
switch-to-workspace-3 = ["<Super>3"];
|
|
switch-to-workspace-4 = ["<Super>4"];
|
|
toggle-fullscreen = ["<Super>f"];
|
|
};
|
|
|
|
"org/gnome/shell/extensions/space-iflow-randomwallpaper" = {
|
|
auto-fetch = true;
|
|
change-type = 2;
|
|
hide-panel-icon = true;
|
|
history-length = 1;
|
|
hours = 0;
|
|
minutes = 30;
|
|
sources = ["42"];
|
|
fetch-on-startup = true;
|
|
};
|
|
|
|
"org/gnome/shell/extensions/space-iflow-randomwallpaper/sources/general/42".type = 4;
|
|
"org/gnome/shell/extensions/space-iflow-randomwallpaper/sources/localFolder/42".folder = "${self}/wallpapers";
|
|
};
|
|
};
|
|
}
|