From f0b5e7e8a75abdea32bbff09ddd7b6eeb4b9b445 Mon Sep 17 00:00:00 2001 From: Manuel Mendez <708570+mmlb@users.noreply.github.com> Date: Fri, 28 Feb 2025 21:36:56 -0500 Subject: [PATCH] xdg: add option 'xdg.cacheFile' (#6548) Allow declarative configuration of files in configured xdg cache home. --- modules/misc/xdg.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/modules/misc/xdg.nix b/modules/misc/xdg.nix index e68e16a8b..777ef4f85 100644 --- a/modules/misc/xdg.nix +++ b/modules/misc/xdg.nix @@ -24,6 +24,15 @@ in { options.xdg = { enable = mkEnableOption "management of XDG base directories"; + cacheFile = mkOption { + type = fileType "xdg.cacheFile" "{var}`xdg.cacheHome`" cfg.cacheHome; + default = { }; + description = '' + Attribute set of files to link into the user's XDG + cache home. + ''; + }; + cacheHome = mkOption { type = types.path; defaultText = "~/.cache"; @@ -136,6 +145,8 @@ in { { home.file = mkMerge [ + (mapAttrs' (name: file: nameValuePair "${cfg.cacheHome}/${name}" file) + cfg.cacheFile) (mapAttrs' (name: file: nameValuePair "${cfg.configHome}/${name}" file) cfg.configFile) (mapAttrs' (name: file: nameValuePair "${cfg.dataHome}/${name}" file)