GNOME Bugzilla – Bug 682440
What if account plugin is not installed when doing UOA migration
Last modified: 2012-08-28 07:38:48 UTC
If user had an IRC account in the default storage, first time empathy starts it will try to migrate it into UOA storage. But what if account-plugin-irc package is not installed? I still need to do real testing for that case, but reading the code here is what I expect to happen: 1) Empathy calls tp_account_request_create_account_async() with the IRC settings. 2) In MC UOA plugin: account_manager_uoa_create() is called, it calls ag_manager_create_account(manager, "irc"); which succeed (according to Mardy) but then it does ag_account_list_services_by_type(account, "IM"); which returns NULL. So the function returns raising an error. 3) Empathy's migration code gets an error in tp_account_request_create_account()'s callback, so it leaves the account disabled in legacy storage (does not remove it), and still bump EMPATHY_PREFS_SANITY_CLEANING_NUMBER so import code won't be run again later if user install account-plugin-irc. What should happen: In step 2, instead of failing, it should call ag_account_store() to make the account appear in UOA. Then gnome-c-c should display a message suggesting the user to install account-plugin-irc. Note that we would need to fix http://code.google.com/p/accounts-sso/issues/detail?id=106&thanks=106&ts=1345626834 to detect when the plugin is installed and really import it into MC. Another possible solution: In Empathy's import code, if one of the accounts failed to import, do not bump EMPATHY_PREFS_SANITY_CLEANING_NUMBER so it will retry next time user restart his session, in the hope he installed the plugin...
Another solution is to use packagekit to install needed plugins.
*** This bug has been marked as a duplicate of bug 682802 ***