diff --git a/configurations/home-manager/leyla/default.nix b/configurations/home-manager/leyla/default.nix
index d7cecc4..49abfe1 100644
--- a/configurations/home-manager/leyla/default.nix
+++ b/configurations/home-manager/leyla/default.nix
@@ -1,4 +1,8 @@
-{osConfig, ...}: {
+{
+  config,
+  osConfig,
+  ...
+}: {
   imports = [
     ./packages
     ./i18n.nix
@@ -35,7 +39,7 @@
         #   org.gradle.console=verbose
         #   org.gradle.daemon.idletimeout=3600000
         # '';
-        ".config/user-dirs.dirs" = {
+        "${config.xdg.configHome}/user-dirs.dirs" = {
           force = true;
           text = ''
             # This file is written by xdg-user-dirs-update
diff --git a/configurations/home-manager/leyla/impermanence.nix b/configurations/home-manager/leyla/impermanence.nix
index 29936b5..ceab775 100644
--- a/configurations/home-manager/leyla/impermanence.nix
+++ b/configurations/home-manager/leyla/impermanence.nix
@@ -1,5 +1,6 @@
 {
   lib,
+  config,
   osConfig,
   ...
 }: {
@@ -10,13 +11,13 @@
         "downloads"
         "documents"
         {
-          directory = ".local/share/Steam";
+          directory = "${config.xdg.dataHome}/Steam";
           method = "symlink";
         }
       ];
       files = [
         ".bash_history" # keep shell history around
-        ".local/share/recently-used.xbel" # gnome recently viewed files
+        "${config.xdg.dataHome}/recently-used.xbel" # gnome recently viewed files
       ];
       allowOther = true;
     };
diff --git a/modules/home-manager-modules/programs/anki.nix b/modules/home-manager-modules/programs/anki.nix
index 0e3ebdf..083d205 100644
--- a/modules/home-manager-modules/programs/anki.nix
+++ b/modules/home-manager-modules/programs/anki.nix
@@ -19,7 +19,7 @@
       lib.mkIf osConfig.host.impermanence.enable {
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
-            ".local/share/Anki2"
+            "${config.xdg.dataHome}/Anki2/"
           ];
           allowOther = true;
         };
diff --git a/modules/home-manager-modules/programs/bitwarden.nix b/modules/home-manager-modules/programs/bitwarden.nix
index 117e302..b9b91c4 100644
--- a/modules/home-manager-modules/programs/bitwarden.nix
+++ b/modules/home-manager-modules/programs/bitwarden.nix
@@ -19,7 +19,7 @@
       lib.mkIf osConfig.host.impermanence.enable {
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
-            ".config/Bitwarden"
+            "${config.xdg.configHome}/Bitwarden"
           ];
           allowOther = true;
         };
diff --git a/modules/home-manager-modules/programs/bruno.nix b/modules/home-manager-modules/programs/bruno.nix
index 20b0ce6..00b248f 100644
--- a/modules/home-manager-modules/programs/bruno.nix
+++ b/modules/home-manager-modules/programs/bruno.nix
@@ -19,7 +19,7 @@
       lib.mkIf osConfig.host.impermanence.enable {
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
-            ".config/bruno/"
+            "${config.xdg.configHome}/bruno/"
           ];
           allowOther = true;
         };
diff --git a/modules/home-manager-modules/programs/calibre.nix b/modules/home-manager-modules/programs/calibre.nix
index 3d6e9db..9e5f34e 100644
--- a/modules/home-manager-modules/programs/calibre.nix
+++ b/modules/home-manager-modules/programs/calibre.nix
@@ -19,7 +19,7 @@
       lib.mkIf osConfig.host.impermanence.enable {
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
-            ".config/calibre"
+            "${config.xdg.configHome}/calibre"
           ];
           allowOther = true;
         };
diff --git a/modules/home-manager-modules/programs/dbeaver.nix b/modules/home-manager-modules/programs/dbeaver.nix
index 26dcc52..a962459 100644
--- a/modules/home-manager-modules/programs/dbeaver.nix
+++ b/modules/home-manager-modules/programs/dbeaver.nix
@@ -19,7 +19,7 @@
       lib.mkIf osConfig.host.impermanence.enable {
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
-            "~/.local/share/DBeaverData/"
+            "${config.xdg.dataHome}/DBeaverData/"
           ];
           allowOther = true;
         };
diff --git a/modules/home-manager-modules/programs/discord.nix b/modules/home-manager-modules/programs/discord.nix
index a7cbb5f..e8605a5 100644
--- a/modules/home-manager-modules/programs/discord.nix
+++ b/modules/home-manager-modules/programs/discord.nix
@@ -19,7 +19,7 @@
       lib.mkIf osConfig.host.impermanence.enable {
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
-            "~/.config/discord/"
+            "${config.xdg.configHome}/discord/"
           ];
           allowOther = true;
         };
diff --git a/modules/home-manager-modules/programs/idea.nix b/modules/home-manager-modules/programs/idea.nix
index 8f2768e..f0a928c 100644
--- a/modules/home-manager-modules/programs/idea.nix
+++ b/modules/home-manager-modules/programs/idea.nix
@@ -20,11 +20,11 @@
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
             # configuration
-            ".config/JetBrains/"
+            "${config.xdg.configHome}/JetBrains/"
             # plugins
-            ".local/share/JetBrains/"
+            "${config.xdg.dataHome}/JetBrains/"
             # System and Logs
-            ".cache/JetBrains/"
+            "${config.xdg.cacheHome}/JetBrains/"
           ];
         };
       }
diff --git a/modules/home-manager-modules/programs/obsidian.nix b/modules/home-manager-modules/programs/obsidian.nix
index d2d9c77..4d28b3e 100644
--- a/modules/home-manager-modules/programs/obsidian.nix
+++ b/modules/home-manager-modules/programs/obsidian.nix
@@ -9,7 +9,7 @@
       lib.mkIf osConfig.host.impermanence.enable {
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
-            ".config/obsidian"
+            "${config.xdg.configHome}/obsidian"
           ];
         };
       }
diff --git a/modules/home-manager-modules/programs/prostudiomasters.nix b/modules/home-manager-modules/programs/prostudiomasters.nix
index 372cfc6..9e6088f 100644
--- a/modules/home-manager-modules/programs/prostudiomasters.nix
+++ b/modules/home-manager-modules/programs/prostudiomasters.nix
@@ -19,7 +19,7 @@
       lib.mkIf osConfig.host.impermanence.enable {
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
-            ".config/ProStudioMasters"
+            "${config.xdg.configHome}/ProStudioMasters"
           ];
         };
       }
diff --git a/modules/home-manager-modules/programs/protonvpn.nix b/modules/home-manager-modules/programs/protonvpn.nix
index 9a0ee65..dd11aae 100644
--- a/modules/home-manager-modules/programs/protonvpn.nix
+++ b/modules/home-manager-modules/programs/protonvpn.nix
@@ -19,8 +19,8 @@
       lib.mkIf osConfig.host.impermanence.enable {
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
-            ".config/protonvpn"
-            ".config/Proton"
+            "${config.xdg.configHome}/protonvpn"
+            "${config.xdg.configHome}/Proton"
           ];
         };
       }
diff --git a/modules/home-manager-modules/programs/qbittorrent.nix b/modules/home-manager-modules/programs/qbittorrent.nix
index 5d22c89..02e23df 100644
--- a/modules/home-manager-modules/programs/qbittorrent.nix
+++ b/modules/home-manager-modules/programs/qbittorrent.nix
@@ -19,7 +19,7 @@
       lib.mkIf osConfig.host.impermanence.enable {
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
-            ".config/qBittorrent"
+            "${config.xdg.configHome}/qBittorrent"
           ];
         };
       }
diff --git a/modules/home-manager-modules/programs/signal.nix b/modules/home-manager-modules/programs/signal.nix
index d75b8a6..fdf0af9 100644
--- a/modules/home-manager-modules/programs/signal.nix
+++ b/modules/home-manager-modules/programs/signal.nix
@@ -19,7 +19,7 @@
       lib.mkIf osConfig.host.impermanence.enable {
         home.persistence."/persist${config.home.homeDirectory}" = {
           directories = [
-            ".config/Signal"
+            "${config.xdg.configHome}/Signal"
           ];
         };
       }