made common configuration place for gnome extensions

This commit is contained in:
Leyla Becker 2025-06-25 13:32:07 -05:00
parent 4ded22c2f5
commit 4825c5ec5e
4 changed files with 32 additions and 16 deletions

View file

@ -1,5 +1,11 @@
{pkgs, ...}: {
config = {
gnome = {
extensions = [
pkgs.gnomeExtensions.dash-to-dock
];
};
dconf = {
enable = true;
settings = {
@ -7,20 +13,6 @@
"org/gnome/desktop/wm/preferences".button-layout = ":minimize,maximize,close";
"org/gnome/shell" = {
disable-user-extensions = false; # enables user extensions
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.dash-to-dock.extensionUuid
# Alternatively, you can manually pass UUID as a string.
# "dash-to-dock@micxgx.gmail.com"
];
};
"org/gnome/shell/extensions/dash-to-dock" = {
"dock-position" = "LEFT";
"intellihide-mode" = "ALL_WINDOWS";

View file

@ -69,8 +69,6 @@ in {
(with pkgs; [
aileron
gnomeExtensions.dash-to-dock
proxmark3
])
++ (

View file

@ -7,6 +7,7 @@
./i18n.nix
./openssh.nix
./continue.nix
./gnome.nix
./programs
];
}

View file

@ -0,0 +1,25 @@
{
lib,
config,
...
}: {
options.gnome = {
extensions = lib.mkOption {
type = lib.types.listOf lib.types.package;
default = [];
description = "The set of extensions to install and enable in the user environment.";
};
};
config = {
home.packages = config.gnome.extensions;
dconf = {
settings = {
"org/gnome/shell" = {
disable-user-extensions = false; # enables user extensions
enabled-extensions = builtins.map (extension: extension.extensionUuid) config.gnome.extensions;
};
};
};
};
}