diff libpurple/core.h @ 16341:786edf5e2144

The core portion of the migration code. This is implemented as I described in my e-mail a while back. If we have ~/.gaim and not ~/.purple (or we have ~/.purple, but the "migrating" file exists, indicating an incomplete previous migration), we copy all the files from ~/.gaim to ~/.purple and move and symlink directories, except for plugins and icons. For icons, we move and symlink any subdirectories, as a special case for the Album plugin (written by me). For this to work, it needs to be called by the UIs. Also, the icon migration code is not included in this commit, so I highly recommend you not test this on your main .gaim directory if you want a clean migration.
author Richard Laager <rlaager@wiktel.com>
date Mon, 23 Apr 2007 16:57:12 +0000
parents 7517e6289bc9
children 516f14bef90e
line wrap: on
line diff
--- a/libpurple/core.h	Mon Apr 23 16:28:10 2007 +0000
+++ b/libpurple/core.h	Mon Apr 23 16:57:12 2007 +0000
@@ -106,6 +106,17 @@
  */
 PurpleCoreUiOps *purple_core_get_ui_ops(void);
 
+/**
+ * Migrates from .gaim to .purple.
+ *
+ * UIs MUST NOT call this if they have been told to use a custom
+ * user directory.
+ *
+ * @return A boolean indicating success or migration failure. On failure,
+ *         the application must display an error to the user and then exit.
+ */
+gboolean purple_core_migrate(void);
+
 #ifdef __cplusplus
 }
 #endif