diff -uNr a/libnautilus-private/nautilus-file-utilities.c b/libnautilus-private/nautilus-file-utilities.c
--- a/libnautilus-private/nautilus-file-utilities.c	2009-09-25 20:43:18.000000000 +0800
+++ b/libnautilus-private/nautilus-file-utilities.c	2009-11-11 11:47:04.525641660 +0800
@@ -42,7 +42,7 @@
 #include <unistd.h>
 #include <stdlib.h>
 
-#define NAUTILUS_USER_DIRECTORY_NAME ".nautilus"
+#define NAUTILUS_USER_DIRECTORY_NAME "nautilus"
 #define DEFAULT_NAUTILUS_DIRECTORY_MODE (0755)
 
 #define DESKTOP_DIRECTORY_NAME "Desktop"
@@ -93,7 +93,7 @@
 {
 	char *user_directory = NULL;
 
-	user_directory = g_build_filename (g_get_home_dir (),
+	user_directory = g_build_filename (g_get_user_config_dir (),
 					   NAUTILUS_USER_DIRECTORY_NAME,
 					   NULL);
 	
diff -uNr a/src/nautilus-application.c b/src/nautilus-application.c
--- a/src/nautilus-application.c	2009-10-20 19:04:43.000000000 +0800
+++ b/src/nautilus-application.c	2009-11-11 11:47:43.905635318 +0800
@@ -639,8 +639,8 @@
 		mark_desktop_files_trusted ();
 	}
 
-	metafile_dir = g_build_filename (g_get_home_dir (),
-					 ".nautilus/metafiles", NULL);
+	metafile_dir = g_build_filename (g_get_user_config_dir (),
+					 "nautilus/metafiles", NULL);
 	if (g_file_test (metafile_dir, G_FILE_TEST_IS_DIR)) {
 		updated = g_build_filename (metafile_dir, "migrated-to-gvfs", NULL);
 		if (!g_file_test (updated, G_FILE_TEST_EXISTS)) {
diff -uNr a/src/nautilus-convert-metadata.c b/src/nautilus-convert-metadata.c
--- a/src/nautilus-convert-metadata.c	2009-09-25 20:43:20.000000000 +0800
+++ b/src/nautilus-convert-metadata.c	2009-11-11 11:48:24.632296868 +0800
@@ -414,8 +414,8 @@
 
 		/* Convert all metafiles */
 
-		metafile_dir = g_build_filename (g_get_home_dir (),
-						 ".nautilus/metafiles", NULL);
+		metafile_dir = g_build_filename (g_get_user_config_dir (),
+						 "nautilus/metafiles", NULL);
 
 		dir = g_dir_open (metafile_dir, 0, NULL);
 		if (dir) {
