summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2009-08-18 16:27:45 +0200
committerAlexander Larsson <alexl@redhat.com>2009-08-18 16:27:45 +0200
commit72f65592a84cb8e9ad2ccaa6bbfd7fe4fbe7371b (patch)
treec172de30a6b3905e369f8381fd19f4a00a44437d
parent1d14824dc8ab6f1f8573b07c11ce437ae22dc77b (diff)
downloadnautilus-72f65592a84cb8e9ad2ccaa6bbfd7fe4fbe7371b.tar.gz
Migrate old nautilus metadata to gvfs on startup
If ~/.nautilus/metadata/migrated-to-gvfs doesn't exist, migrate and create it.
-rw-r--r--src/Makefile.am1
-rw-r--r--src/nautilus-application.c19
2 files changed, 19 insertions, 1 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 042caf6a7..edf9b5ba8 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -22,6 +22,7 @@ INCLUDES = \
$(EXEMPI_CFLAGS) \
-DDATADIR=\""$(datadir)"\" \
-DLIBDIR=\""$(libdir)"\" \
+ -DLIBEXECDIR=\""$(libexecdir)"\" \
-DNAUTILUS_DATADIR=\""$(datadir)/nautilus"\" \
-DUIDIR=\""$(datadir)/nautilus/ui"\" \
-DNAUTILUS_PIXMAPDIR=\""$(datadir)/pixmaps/nautilus"\" \
diff --git a/src/nautilus-application.c b/src/nautilus-application.c
index 7bd4892f1..6b5663d5e 100644
--- a/src/nautilus-application.c
+++ b/src/nautilus-application.c
@@ -631,11 +631,28 @@ static void
do_upgrades_once (NautilusApplication *application,
gboolean no_desktop)
{
+ char *metafile_dir, *updated;
+ int fd;
+
if (!no_desktop) {
mark_desktop_files_trusted ();
}
-}
+ metafile_dir = g_build_filename (g_get_home_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)) {
+ g_spawn_command_line_async (LIBEXECDIR"/nautilus-convert-metadata --quiet", NULL);
+ fd = g_creat (updated, 0600);
+ if (fd != -1) {
+ close (fd);
+ }
+ }
+ g_free (updated);
+ }
+ g_free (metafile_dir);
+}
static void
finish_startup (NautilusApplication *application,