anchor.diff:        "${key}=${value'}";
     };
   
  +  themeType = types.submodule {
  +    options = {
  +      package = mkOption {
  +        type = types.package;
  +        example = literalExample "pkgs.gnome3.adwaita-icon-theme";
  +        description = "Package providing the theme.";
  +      };
  +
  +      name = mkOption {
  +        type = types.str;
  +        example = "Adwaita";
  +        description = "The name of the theme within the package.";
  +      };
  +
  +      size = mkOption {
  +        type = types.str;
  +        default = "32x32";
  +        example = "16x16";
  +        description = "The desired icon size.";
  +      };
  +    };
  +  };
  +
  +  hicolorTheme = {
  +    package = pkgs.hicolor_icon_theme;
  +    name = "hicolor";
  +    size = "32x32";
  +  };
  +
   in
   
   {
  
positive.code:   options = {
      services.dunst = {
        enable = mkEnableOption "the dunst notification daemon";
  
        settings = mkOption {
          type = types.attrsOf types.attrs;
  
negative.code:         home.file.".local/share/dbus-1/services/org.knopwob.dunst.service".source =
            "${pkgs.dunst}/share/dbus-1/services/org.knopwob.dunst.service";
  
          services.dunst.settings.global.icon_folders =
            let
              useCustomTheme =
                cfg.iconTheme.package != hicolorTheme.package
                || cfg.iconTheme.name != hicolorTheme.name
                || cfg.iconTheme.size != hicolorTheme.size;
  
              basePaths = [
                "/run/current-system/sw"
                "${config.home.homeDirectory}/.nix-profile"
                cfg.iconTheme.package
              ] ++ optional useCustomTheme hicolorTheme.package;
  
              themes =
                [
                  cfg.iconTheme
                ] ++ optional useCustomTheme (
                  hicolorTheme // { size = cfg.iconTheme.size; }
                );
  
              categories = [
                "actions"
                "animations"
                "apps"
                "categories"
                "devices"
                "emblems"
                "emotes"
                "filesystem"
                "intl"
                "mimetypes"
                "places"
                "status"
                "stock"
              ];
            in
              concatStringsSep ":" (
                concatMap (theme:
                  concatMap (basePath:
                    map (category:
                      "${basePath}/share/icons/${theme.name}/${theme.size}/${category}"
                    ) categories
                  ) basePaths
                ) themes
              );
  
          systemd.user.services.dunst = {
            Unit = {
              Description = "Dunst notification daemon";
  