Move useless partials as modules
This commit is contained in:
@@ -0,0 +1,124 @@
|
||||
{ lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.home.shell.gnome;
|
||||
in
|
||||
{
|
||||
options.home.shell.gnome = {
|
||||
|
||||
extensions = {
|
||||
paperwm = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = "Enable the PaperWM extension.";
|
||||
};
|
||||
|
||||
app-hider = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = "Enable the App Hider extension.";
|
||||
};
|
||||
|
||||
dash-to-panel = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = "Enable the Dash to Panel extension.";
|
||||
};
|
||||
|
||||
};
|
||||
config = {
|
||||
dconf = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
||||
# We define the input sources to use the French layout with Mac keyboard variant.
|
||||
"org/gnome/desktop/input-sources" = {
|
||||
sources = [
|
||||
(mkTuple [
|
||||
"xkb"
|
||||
"fr+mac"
|
||||
])
|
||||
];
|
||||
};
|
||||
|
||||
# We define the interface settings to use a teal accent color and prefer dark color scheme.
|
||||
"org/gnome/desktop/interface" = {
|
||||
accent-color = "teal";
|
||||
color-scheme = "prefer-dark";
|
||||
};
|
||||
|
||||
"org/gnome/desktop/wm/preferences" = {
|
||||
button-layout = "appmenu:maximize,minimize,close";
|
||||
};
|
||||
|
||||
# We define the shell settings to enable user extensions
|
||||
# and enable the PaperWM, App Hider, and Dash to Panel extensions if they are enabled in the configuration.
|
||||
"org/gnome/shell" = {
|
||||
disable-user-extensions = false;
|
||||
enabled-extensions =
|
||||
with pkgs.gnomeExtensions;
|
||||
[ ]
|
||||
+ mk-if cfg.extensions.paperwm [ paperwm.extensionUuid ]
|
||||
+ mk-if cfg.extensions.app-hider [ app-hider.extensionUuid ]
|
||||
+ mk-if cfg.extensions.dash-to-panel [ dash-to-panel.extensionUuid ];
|
||||
};
|
||||
|
||||
}
|
||||
+ mkIf cfg.extensions.app-hider {
|
||||
"org/gnome/shell/extensions/app-hider" = {
|
||||
hidden-apps = [
|
||||
"nvim.desktop"
|
||||
"cups.desktop"
|
||||
"xterm.desktop"
|
||||
"nixos-manual.desktop"
|
||||
];
|
||||
};
|
||||
}
|
||||
+ mkIf cfg.extensions.dash-to-panel {
|
||||
"org/gnome/shell/extensions/dash-to-panel" = {
|
||||
prefs-opened = false;
|
||||
isolate-monitors = true;
|
||||
isolate-workspaces = true;
|
||||
appicon-margin = 2;
|
||||
appicon-padding = 12;
|
||||
trans-panel-opacity = 0.75;
|
||||
trans-use-border = true;
|
||||
trans-use-custom-opacity = true;
|
||||
dot-color-dominant = true;
|
||||
dot-color-override = false;
|
||||
dot-color-unfocused-different = false;
|
||||
dot-position = "BOTTOM";
|
||||
dot-style-focused = "METRO";
|
||||
dot-style-unfocused = "SQUARES";
|
||||
panel-top-bottom-margins = 0;
|
||||
panel-top-bottom-padding = 0;
|
||||
focus-highlight = false;
|
||||
focus-highlight-dominant = true;
|
||||
highlight-appicon-hover = true;
|
||||
hide-overview-on-startup = true;
|
||||
};
|
||||
}
|
||||
+ mkIf cfg.extensions.paperwm {
|
||||
"org/gnome/shell/extensions/paperwm" = {
|
||||
show-window-position-bar = false;
|
||||
show-workspace-indicator = false;
|
||||
};
|
||||
"org/gnome/shell/extensions/paperwm/workspaces" = {
|
||||
list = [
|
||||
"personal"
|
||||
"university"
|
||||
];
|
||||
};
|
||||
"org/gnome/shell/extensions/paperwm/workspaces/personal" = {
|
||||
name = "Personel";
|
||||
index = 0;
|
||||
};
|
||||
"org/gnome/shell/extensions/paperwm/workspaces/university" = {
|
||||
name = "Université";
|
||||
index = 1;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user