Summary

UbuntuExpress component to copy the live filesystem to the hard disk.

Rationale

The copying component of UbuntuExpress is largely trivial, though it has been proposed that it would be useful to allow the user to choose whether to copy the pristine filesystem, or the version which has been modified during the session. If the modified filesystem is copied, some of the modifications made to it by casper must be reversed.

While initial reactions generally suggest that the modified filesystem should be copied so that changes made by the user in the live session can be preserved, BOF discussion suggested that there are both technical and usability issues arising from this:

Thus, the consensus is to copy the unmodified filesystem. That said, UbuntuExpress still has the ability to copy specific well-understood items of configuration from the modified filesystem to the installed system after doing so. These items will be discussed during the remainder of this specification.

Use cases

Scope

This specification considers only the filesystem-copying component of UbuntuExpress, and associated user interface issues.

Design

UbuntuExpress will copy the unmodified filesystem to the installed system, and then copy some specific additional items of configuration from the modified filesystem in memory. The user interface and the CD cover notes must indicate that documents and settings created while running the live CD will in general not be preserved on installation.

The following additional items (without limitation) will be transferred to the installed system:

We suggest that UbuntuExpress should make available a hook interface into which casper can drop scripts to propagate its changes from the live environment to the target system. For example, after performing X autoconfiguration, it should queue a script to handle the copying of xorg.conf.

The installation of extra packages during the live session must also be considered. At a minimum, the implementor should arrange to install any language packs selected in the language selector (see UbuntuExpress/LanguagePacks). We recommend that the implementor should also attempt to fetch a list of packages installed in the modified live filesystem and install any additional packages over those installed in the unmodified filesystem; removals are likely to be unsafe, and in any case failures at this stage must not be fatal.

In order to give the user a chance to copy over any documents they explicitly want to keep, we will not automatically reboot at the end of the installation, but instead tell the user that the installation is complete, that they should reboot when they're ready, and that they should copy any documents they want to keep to the installed system themselves (making the installed system available from the desktop to facilitate this). This may be improved in future in coordination with desktop maintainers, but such improvements are not necessary for a first release.

The actual copying of the filesystem is (as mentioned above) trivial, but must be done at file level rather than at filesystem level, to allow for installation onto filesystems that differ from that used on the live CD or that are not resizable. Some efficiency improvements by means of clever sorting or caching may be possible in future.

Suggestions for other items to be copied individually

Further thought required

Implementation status


CategorySpec

UbuntuExpress/CopyFileSystem (last edited 2008-08-06 16:35:01 by localhost)