KubuntuPartitionManager

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

KDE lacks a good partition manager. Using Python, Pyparted and KDE3/KDE4 bindings, a decent partition manager could be created in a reasonable time frame.

Release Note

The end user should notice a new systemsettings module with a simple drag-based tool for partition management. It should be under Advanced so the tool won't disturb him at all if not necessary.

Rationale

KDE lacks an easy-to-use partition manager. QtParted is unmaintained and old. Although a partition manager is not aimed at the common user, the gap in Kubuntu (compared with Ubuntu) is noticed by many sysadmins and power users. A partition manager makes Kubuntu live CD rescuing easier.

Use Cases

  • Stanley wants to shrink his NTFS disk and grow his ext3 disk with Kubuntu. He loads up the Kubuntu Live CD and accomplishes his task with a few simple clicks.

Assumptions

Design

Most small open-source applications in the past have been designed only with the target task in mind, ignoring code reuse, documentation and the UI/backend logic separation. The Kubuntu partition manager has to fulfill the following conditions:

  • It should use an existing backend for partition editing.
  • The logic should be well separated so that a KDE3 version and a KDE4 version could be created concurrently.
  • It should be portable to all the other GNU/Linux distributions if need be.
  • It should be as easy to use as the current GParted is, if not easier.

Implementation

Python should be used in order to maximize the production speed. Libparted will be used as it is the partition editing library of choice in a GNU operating system. Red Hat developers already created a Parted bindings for Python, which are called Pyparted. They should be packaged for Ubuntu.

Both KDE3 and KDE4 frontends should be created concurrently. They should share as much code as possible.

  • KDE3 will be the DE of choice in Kubuntu Hardy Heron, and a systemsettings module can only be created using python-kde3
  • KDE4 will be released during the Hardy development and a python-kde4 bindings are already functional (albeit not stable).

As with other applications (restricted-manager, kde-guidance) there will be a standalone executable version and a systemsettings module.

The code should be abstract enough to make a GTK version a possibility.

UI Changes

Code Changes

Migration

Test/Demo Plan

Outstanding Issues

BoF agenda and discussion


CategorySpec

KubuntuPartitionManager (last edited 2008-08-06 16:31:23 by localhost)