KubuntuUbiquityMigrationAssistant

Revision 10 as of 2006-12-07 14:47:36

Clear message

Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.

Summary

Make the migration assistant available in Kubuntu.

Rationale

The migration assistant will be a highly visible new feature in Ubuntu Feisty; we want Kubuntu users to be able to move from Windows just as easily.

Use cases

Betty wants to install Kubuntu on her currently Windows-only computer. She uses the Ubiquity installer which lets her easily create a user account with many of the same settings as her current Windows account.

Scope

Integrating migration assistant into the KDE Ubiquity frontend and porting the migration assistant backend modules to export to KDE values.

Design

Copy the user interface specified at MigrationAssistance into the KDE frontend for Ubiquity. The "Migration-Assistant defaults seeding" stage is a simple case of implementing the required functions to fill the Qt widgets.

Methods which get and set form data:

  • set_ma_os_choices(self, os_choices):
  • get_ma_os_choices (self):
  • set_ma_user_choices(self, user_choices):
  • set_ma_user_label(self, label):
  • set_ma_user_choices (self):
  • set_ma_item_choices(self, item_choices, user):
  • get_ma_item_choices (self):
  • set_ma_item_users (self, users):
  • get_ma_item_user (self):
  • get_ma_fullname(self):
  • get_ma_username(self):
  • get_ma_password(self):
  • get_ma_verified_password(self):
  • get_ma_administrator(self):
  • set_ma_user (self):

checking methods:

  • ma_password_error(self, msg): - show an invalid password error
  • ma_info_loop() - check all the entries in the form are filled

The migration assistance modules need to be adapted to output to the KDE configuration files. They also need a flag which can be set by the installer to tell them which file format (Gnome or KDE) to output to.

Implementation

The "Migration-Assistant" stage will use a QListView with tickboxes enabled. Care must be taken to ensure that selecting an item or user from the QListView populates the user information input boxes below with the correct, up to date information. Removing focus from any of the input boxes should also seed the accompanying debconf question with the box's text. Typing in an existing user name into the QComboBox should cause the rest of the text boxes to be populated with the associated data.

Data

Files:

  • Documents and Pictures are the same as in MigrationAssistance

  • Music can be imported into ~/Music with ~/.kde/share/config/amarokrc set to include this directory in its collection
  • E-mail imported to ~/Mail with the files added to ~/.kde/share/config/kmailrc
  • Fonts should set the fonts in the ~/.kde/share/config/kdeglobals setting file.

Settings:

  • E-mail settings get go into ~/.kde/share/config/kmailrc
  • The instant messenging importer needs to output to the ~/.kde/share/config/kopeterc file
  • The wallpaper is set in the ~/.kde/share/config/kdesktoprc file.
  • The Bookmarks importer needs to output to ~/.kde/share/apps/konqueror/bookmarks.xml in the standard xbel format used by Konqueror.
  • User picture is desktop independent, use same code as for MigrationAssistance

  • Internet connection settings are desktop independent, use same code as for MigrationAssistance

  • Address book data goes into ~/.kde/share/apps/kabc/std.vcf in VCF format.

KDE config files are in a simple key=value format.


CategorySpec