InstallerForWindows

Differences between revisions 34 and 35
Revision 34 as of 2007-07-05 23:38:07
Size: 5945
Editor: 72
Comment: this has been approved in launchpad; edit top to reflect that
Revision 35 as of 2007-08-23 15:36:09
Size: 6037
Editor: ool-44c0d208
Comment: added note about suspend being disabled
Deletions are marked like this. Additions are marked like this.
Line 15: Line 15:

Please note that suspend functionality is disabled when using this Ubuntu configuration.

This specification is marked as Approved in Launchpad. Please contact the Assignee or another knowledgeable person before making changes.

Summary

A loop-mounted Ubuntu install initiated in Windows. The installer asks fewer questions and does not partition or format drives.

Release Note

Installing Ubuntu is now even easier for Windows users! The small installer program will copy a fully-functional Ubuntu system into a directory on your Windows drive, which you can then boot in a "dual-boot" configuration. This is a great way to try out Ubuntu over a period of time, with no re-partitioning or formatting required. For long-term use, we recommend migrating to a native disk install.

Please note that suspend functionality is disabled when using this Ubuntu configuration.

Rationale

Windows users are often more comfortable downloading and running a small ubuntu-setup.exe file than downloading and burning an ISO. This also avoids the requirement of booting from the CD, which can be troublesome as some laptops do not have a CD drive and many systems are configured to boot from the hard disk first.

Advantages

  • No disk resizing or partitioning required
  • No CD burning required, works on laptops without CD drives
  • Easy to remove Ubuntu from the system, restoring the system to its previous state
  • The bootloader is not replaced, an additional boot option is addded to it
  • Ubuntu is installed/uninstalled as any other application, which is comfortable for the user
  • Runs at near-native speeds using all system resources (provided the loop mounting is efficient)
  • Uses all available hardware as a normal install would (in like a virtualbox install)

Use Cases

  • Sindre wants to give Linux a try but uses his only computer for work and does not want to repartition his drive, worried that something will break. The Live CD he received guides him through installing Ubuntu in a file on his widows system, which he then boots into.
  • Hellena writes tech reviews for on-line journals. She has tested various Linux distros in the past using VMware, but this does not quite yield a native experience. On the Ubuntu website she finds a small download that runs in Windows and produces a loop mounted install. After testing and reviewing she can delete it easily.

Assumptions

  • ntfs-3g doesn't break the world
  • ubiquity pre-seeding is implemented (else we fall back to alternate for gutsy)

Design

A small executable that can be included on the CD which does the following:

  • If an Ubuntu CD is not present in a CD drive, locates the ISO on your system or downloads it via [http://hampus.vox.nu/metadl/ metadl] (which can be taught to perform mirror selection)

  • Asks for a user name and password
  • Gathers information from Windows for the remaining install settings
  • Creates a 5GB image file in a user-defined location, C:\ubuntu by default

  • Creates a pre-seed file for the install
  • Adds Ubuntu entry to the Windows bootloader
  • Reboots to start an install process (non-interactive)
    • if a CD is present in a drive, uses that; otherwise loop-mounts an ISO image from the Windows drive
    • loop-mounts disk image from the Windows drive
  • Will use a pre-seed enabled version of ubiquity
  • Reboot again to start Ubuntu (or Windows)
  • Allows simple removal of Ubuntu if desired, via a Windows-based uninstaller in add/remove programs
  • Installer can be launched from the WinFOSS browser

Comments (ago)

  • What questions are asked by the windows interface and how many questions by ubiquity? Possibly password by ubiquity (for security reasons) and the rest by the windows front-end.
  • Showing 2 separate wizards may look awkward, the user should feel confortable.
  • The Windows front-end can detect processes from the live system: e.g. detect whether a screen reader is active. We should take advantage of that.
  • Is the full desktop loaded when Ubiquity is run in non-interactive mode or is some frontend run in full screen mode to display progress information?
  • I suggest to have a dropdown to select the size/target with the following entries: 4GB, 5GB, 6GB...(up to max feasible size), Use Available Free Space (if detected), Use Drive X: (one entry for each empty partition detected), Boot LiveCD (avoids bios problems and makes live cd available to people with no CD-Rom).

Optional features

  • Teach the ubiquity migration assistant to migrate from a loop-mounted file in Windows
  • Option to install to a real partition
  • Set the size of the image file (5GB is default)
  • Better post-install management features. A control panel running in windows that lets you resize discs, make backups, select between different installed systems.

Implementation

  • Windows installer is written in NSIS with various plug-ins (bittorrent, what else?)
  • Tighten the graphical design with a nice NSIS skin and suitable ubuntu graphics
  • Merge [http://launchpad.net/lupin lupin] patches in with d-i and intramfs to support loop-installation mode.

  • Add usplash to the initial install boot (perhaps we get this for free with the Live CD ISO?)
  • Refinement and testing of Vista support
  • Different versions for Ubuntu, Edubuntu, Kubuntu and Xubuntu, where only the artwork and ISO differ.
    • While there will be only a single installer, it will detect which distro is in use from metadata on the detected CD or ISO image, and select artwork and kernel boot parameters (preseed files, etc.) appropriately.

Website

  • Prominent download location on the website

Test/Demo Plan

  • Widespread community testing
  • Test the install procedure on a range of hardware and Windows versions

Outstanding Issues


CategorySpec

InstallerForWindows (last edited 2008-08-06 16:32:01 by localhost)