aboutsummaryrefslogtreecommitdiff
path: root/home-manager/modules/misc/xdg-user-dirs.nix
diff options
context:
space:
mode:
Diffstat (limited to 'home-manager/modules/misc/xdg-user-dirs.nix')
-rw-r--r--home-manager/modules/misc/xdg-user-dirs.nix27
1 files changed, 17 insertions, 10 deletions
diff --git a/home-manager/modules/misc/xdg-user-dirs.nix b/home-manager/modules/misc/xdg-user-dirs.nix
index da9d3c43ad9..a1db6b115a1 100644
--- a/home-manager/modules/misc/xdg-user-dirs.nix
+++ b/home-manager/modules/misc/xdg-user-dirs.nix
@@ -89,15 +89,22 @@ in {
};
config = mkIf cfg.enable {
- xdg.configFile."user-dirs.dirs".text = generators.toKeyValue { } ({
- XDG_DESKTOP_DIR = cfg.desktop;
- XDG_DOCUMENTS_DIR = cfg.documents;
- XDG_DOWNLOAD_DIR = cfg.download;
- XDG_MUSIC_DIR = cfg.music;
- XDG_PICTURES_DIR = cfg.pictures;
- XDG_PUBLICSHARE_DIR = cfg.publicShare;
- XDG_TEMPLATES_DIR = cfg.templates;
- XDG_VIDEOS_DIR = cfg.videos;
- } // cfg.extraConfig);
+ xdg.configFile."user-dirs.dirs".text = let
+ options = {
+ XDG_DESKTOP_DIR = cfg.desktop;
+ XDG_DOCUMENTS_DIR = cfg.documents;
+ XDG_DOWNLOAD_DIR = cfg.download;
+ XDG_MUSIC_DIR = cfg.music;
+ XDG_PICTURES_DIR = cfg.pictures;
+ XDG_PUBLICSHARE_DIR = cfg.publicShare;
+ XDG_TEMPLATES_DIR = cfg.templates;
+ XDG_VIDEOS_DIR = cfg.videos;
+ } // cfg.extraConfig;
+
+ # For some reason, these need to be wrapped with quotes to be valid.
+ wrapped = mapAttrs (_: value: ''"${value}"'') options;
+ in generators.toKeyValue { } wrapped;
+
+ xdg.configFile."user-dirs.conf".text = "enabled=False";
};
}