--- a/meld/util/prefs.py	2010-10-05 22:08:12.697000001 +0800
+++ b/meld/util/prefs.py	2010-10-05 22:06:25.582000000 +0800
@@ -173,7 +173,10 @@
         if sys.platform == "win32":
             pref_dir = os.path.join(os.getenv("APPDATA"), "Meld")
         else:
-            pref_dir = os.path.join(os.path.expanduser("~"), ".meld")
+            if os.environ.get('XDG_CONFIG_HOME'):
+                pref_dir = os.path.join(os.environ.get('XDG_CONFIG_HOME'), "meld")
+            else:
+                pref_dir = os.path.join(os.path.expanduser('~'), '.config', "meld")
 
         if not os.path.exists(pref_dir):
             os.makedirs(pref_dir)
