{ 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; }; }; }; }; }