Page 1 of 3 123 LastLast
Results 1 to 10 of 28

Thread: Discussions for Wubi inclusion in Gutsy

  1. #1
    Join Date
    Oct 2004
    Beans
    232

    Discussions for Wubi inclusion in Gutsy

    Hi,

    First, great project! I've been playing with it a bit the past few days.

    At UDS in Seville we will discuss various options for a Windows-based installer. Wubi looks nice at this point, though it is not clear that we would want to go with the loop-mounted approach. The lack of support for Vista is a bit of a show-stopper ATM, but is of course common to all the projects relying on the NT boot loader.

    I've posted my discussion spec here. Please note that it is currently technology-neutral.

    I thought you might appreciate the heads-up.

    Henrik
    Henrik Nilsen OmmaUbuntu QA Team Lead

  2. #2
    Join Date
    Mar 2006
    Location
    Palo Alto, CA
    Beans
    1,226
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: Discussions for Gutsy

    The lack of support for Vista is a bit of a show-stopper ATM, but is of course common to all the projects relying on the NT boot loader.
    About the lack of Vista support, the Windows-based Debian installer supports vista as an experimental feature http://lists.debian.org/debian-boot/.../msg01168.html which we're also trying to implement for Wubi as well. As a last-ditch resort, we could try to have it physically install GRUB to the MBR, though that would be rather invasive, error prone, and more difficult to remove, so we'd rather use something like GRLDR (which unfortunately doesn't support Vista yet).

    Wubi looks nice at this point, though it is not clear that we would want to go with the loop-mounted approach
    About the loopmounted vs actual partitioning, Wubi can actually install to a real partition, with a few modifications to the preseed.cfg file; the only reason we use a loopmounted file by default are the risks associated with ntfs resizing, but if that's no longer an issue, we could easily get Wubi to resize and install on the real partition.

    About the usage of a livecd, you may want to check out one of my older prototype builds, it's available at http://cutlersoftware.com/ubuntusetu...-livecd-v2.zip and the installation instructions are at http://cutlersoftware.com/ubuntusetup/index_old.html. It's not exactly an installer, but rather, it allows the user to boot the livecd from an iso file without an acutal cd, and then they can run the installer from there. It uses standard partitions and a standard ubuntu edgy livecd iso. It might have a few issues with booting up, since it's been unmaintained ever since we shifted the focus of development towards lupin, though we could probably merge back the lupin hardware detection changes if needed. It doesn't have a windows-based frontend, since I made it before Wubi was completed, though Wubi could easily be adapted to it.

    For actual installation from a livecd, that would likely be more difficult, because ubiquity doesn't support automated installations, so we'd likely need a few modifications to ubiquity to do that, like a command-line interface, unless of course, the method I mentioned above is used; just boot the livecd in live mode from an iso file using a modified initrd, then use ubiquity to install the usual way. It doesn't exactly address all the issues, but it certainly eliminates the issues with burning cds, using portable laptops with no CD drives, and adjusting the BIOS settings.

    As for the virtual machines, it's an interesting idea, and given the increasing performance and new features of virtual machines, it probably won't have too many performance issues, but I think it's simply more for hobbyists than for people who actually want to use ubuntu as a production environment; after all, booting 2 operating systems just to do some basic word processing is overkill, and a huge hassle. There's also the issue of direct hardware access, like using openGL applications in ubuntu like compiz or google earth, and stuff like using usb drives and cds as hardware under the virtual machine. Also, of course, using a virtual machine makes it harder to simply ditch Windows; you'll always have to boot Windows to boot Ubuntu, quite ironically, and you can't simply remove Windows and replace it with ubuntu. Of course, the second kind of applies to the current state of Wubi as well, but it's possible to simply remove the lupin-target package, and copy all the files over to the new partition, and install grub to it, and then delete the windows partition, ending up with a standard ubuntu install which can likely be automated with a nice little wizard, or if we decide to go with Wubi + real partition (just a few tweaks to preseed.cfg needed for that), it won't even be an issue at all.

    About the fixed disk image size, our source code branch already has the ability to adjust the size, so the next release will probably fix that issue. As for dynamic resizing, I don't think that's really possible with EXT3, because it can't dynamically expand itself while mounted, so it'll need to reboot to expand itself, and use something like Topologilinux's toporesize.exe utility, though if we used reiserfs, which has the ability to expand itself on-the-go, we could probably have dynamic, transparent resizing abilities as well.

    Anyhow, it's great to see that our project has been given some attention and consideration for official inclusion. By the way, is there some better place users could place these comments? I don't exactly see a comments page on the blueprint; you might want to add one...
    Last edited by tuxcantfly; April 28th, 2007 at 01:03 AM.

  3. #3
    Join Date
    Feb 2005
    Beans
    5,138

    Re: Discussions for Gutsy

    Quote Originally Posted by Henrik View Post
    Hi,

    First, great project! I've been playing with it a bit the past few days.

    At UDS in Seville we will discuss various options for a Windows-based installer. Wubi looks nice at this point, though it is not clear that we would want to go with the loop-mounted approach. The lack of support for Vista is a bit of a show-stopper ATM, but is of course common to all the projects relying on the NT boot loader.

    I've posted my discussion spec here. Please note that it is currently technology-neutral.

    I thought you might appreciate the heads-up.

    Henrik
    Thanks Henrik.

    First thing, let me tell you that we are honored of having been mentioned. We have always hoped to be incorporated as an "official" installation methods and we would be glad to cooperate to any future project. I have a few considerations:

    1) I have also launched this spec https://blueprints.launchpad.net/ubuntu/+spec/lupin with the idea of merging lupin code within the standard initrd + livecd initrd. Please take that into account in your discussions. Lupin has been designed so that it should not be too difficult to incorporate within the "official" initramfs building mechanism. Probably the toughest obstacle is ntfs-3g support out of the box.

    2) As for the Vista support, we simply do not have enough resources at the moment and most of us do not have a Vista machine to hack, but that does not mean that it cannot be achieved

    3) It is well possible to use loopmounted installation in parallel with dedicated installation. IMO the behaviour should be: if there is free space do a dedicated installation, otherwise do a loopmounted installation. Give the possibility to override in the advanced settings

    4) We are not yet ready for prime time, our "final" will be out in a few days, take that into account when you evaluate wubi.

    5) I am not sure I will be able to attend, even in a conference call, but I would be glad to discuss any issue beforehand or afterward. I am going to subscribe though.

  4. #4
    Join Date
    Feb 2005
    Beans
    5,138

    Re: Discussions for Gutsy

    Some further comments

    * Does not yet work with Vista:
    Yep but as mentioned that might be fixed

    * Uses alternate disc to install from
    It can use the Live ISO as well with some mods. Anyway with wubi the ISO which is actually used is completely irrelevant, since the only role of the ISO is to provide a source of packages and the process is hidden to the user. In fact the word "ISO" is banned within Wubi... There is no point in "live booting" to try it out, since installation takes 10-15 minutes and wubi makes it very easy to uninstall. So you try as you do with any other software: install it first and have a go, if you do not like it, uninstall.

    * Fixed size disc image (would be nice to have a dynamic image or manual resize option)
    New interface will allow to choose the disk size. Resizing the disk images after they are created is possible but tricky (can be done by copying the existing files onto a new image with a script within ubuntu), I did not investigate the possibility to use "flexible" files, but anything that can be mounted under Linux should work.

    * Needs a dash of usplash in a few places
    In the final version Usplash will be active on normal boot, but not on install.

    * Needs a graphical installer front-end to d-i
    This will be a lesser issue once gtk frontend is available in the alternate ISO (which I assume it will be the case in Gutsy), since then we can use graphical progressbars. It is well possible to use usplash as a frontend for d-i, but that requires a bit more work.

    * Better post-install management features. A control panel running in windows that lets you resize discs, make backups, select between different installed systems
    Ditto for resizing. Backups, if anything, are easier, since on top of all Ubuntu tools, you can simply copy the image files from within windows and the home folder is on a separate file by default. As for the latter, we encourage installing multiple desktops from within Ubuntu itself. The main issue at the moment is due to grldr limitations which require a double boot menu, multbooting straight from boot.ini is a bit tricky.

    * How efficient is the loop mounted drive?
    It has not been tested formally, but in my subjective experience you can hardly notice the difference (it becomes slow only if we miss a required module...)

    * How easy would it be to move such an install out from under windows to a separate partition (perhaps an improved version of the migration tool could be used?)
    It should not be too problematic. Once a partition is created you can quite literally dump in there the content of the virtual hard disk file, then setup grub and adjust fstab. Lupin will need some minor mods, but that's about it.


    Hope it helps
    Last edited by ago; April 28th, 2007 at 02:00 AM.

  5. #5
    Join Date
    Mar 2006
    Location
    Palo Alto, CA
    Beans
    1,226
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: Discussions for Gutsy

    I've just stickied this thread; official inclusion is one of our top priorities after all... Subscribing...

  6. #6
    Join Date
    Oct 2004
    Beans
    232

    Re: Discussions for Gutsy

    Hi All,

    First, thanks for playing along I appreciate your willingness to consider different options. I think we all agree on the basic goals of the project:
    1. Provide a way to install Ubuntu without a CD ROM
    2. Allow the installation process to be started from Windows using a simple setup.exe file, which is the most natural for many Windows users
    3. Facilitate both a way to get up and running quickly and painlessly with Ubuntu for that all-important first taste that draws people in, while at the same time making it more sticky so the system can be used over some weeks or months (or longer). The Live CD generally fails to be sticky ATM.
    Within these general goals there is scope for different implementations, with strengths and weaknesses. We should not rush into picking a solution now, but should evaluate different solution from the perspective of a range of use cases.

    On using the Live CD:
    I mention this because the Live CD is by far our most used medium and something like Wubi would fit in nicely with the WinFOSS section there (Install now could be made a prominent option)

    Some work has been done on automating ubiquity installs but it did not make it in time for Feisty (spec). If the win-install spec depended on it, it would likely be completed for Gutsy.

    That said, I'm not necessarily advocating booting completely to Gnome only to run a non-interactive ubiquity. One option would be to start only a bare X environment where it would run but I'd also like to look at copying the Live CD SquashFS directly to the partition or image file while running Windows. That way you could run the Wubi install from Windows, reboot (some post-install config would be done under usplash) and you would be done.


    On loopmount vs. partition vs. both:
    We need to figure out what is the best mix of options. One the one hand maximum flexibility would be great, but you also don't want to confuse the user with 20 choices.

    Things that would be cool:
    • Ability to choose install from a CD image or from the net
    • Ability to install either to an image file or to a partition
    • The ability to convert from one kind to another
    • Tools for cleaning up such as removing Grub (if used)
    • Tools to migrate data between systems
    • Burn the Live CD image from Wubi. This would make the Live CD self-replicating
    A typical scenario that we should keep in mind: Someone emails you a link to the 2mb setup.exe file. You run it and decide to install Ubuntu as an image just to see what it's like. After a month of using it you are convinced and decide to migrate from Windows completely. The Windows app helps you resize the NTFS partition and copies the content of the image file onto the freed space. You reboot and use gParted to remove Windows and resize (needless to say this all needs solid testing).


    Anyway, no need to sort out the technical details just yet, but rather just try to get an overview of the options.
    Henrik Nilsen OmmaUbuntu QA Team Lead

  7. #7
    Join Date
    Feb 2005
    Beans
    5,138

    Re: Discussions for Gutsy

    Using a Live CD as base for Wubi/Lupin:
    The main advantage is that people can use a CD as opposed to download the ISO, and LiveCDs are more likely to be around than alternate CDs. Moreover, as you suggested, you can burn the live CD (let's be honest, an alternate CD is not as fancy). The main disadvantage is that the d-i installer (alternate ISO) is widely used by other debian based distros, moreover the user does not really "see" the ISO when installing, he should not be even aware of the existence of an ISO, and since most users would simply download the frontend and let that download the required files as opposed to burn an ISO, the advantage of a LiveCD would be arguable. In either case it would be good to have wubi inside the CD so that it is autostarted when the CD is played in windows.

    Another possibility is to have wubi to boot the LiveISO without burning a CD. The problem with this approach is that the user has to go through 2 different wizards: one in windows which is required to modify the bootloader (and when there is no CD to download the ISO) + ubiquity. IMO 2 wizards is a no go. I think it is better to have just a windows frontend, which has a big advantage since it can autodetect most settings from a working OS, and use the live ISO only as a source of packages.

    What is more interesting is to move away from nsis in favor of some frontend which is easy to port to other platforms. In this respect python + gtk is a possibility (a bit heavy but it will do), and in that case it might even be feasible to port ubiquity to windows.

    As for using the live ISO in the backend, even after copying the squashfs there would be other d-i tasks to be accomplished.

    On loopmount vs. partition vs. both
    My view is simple: as soon as you mention the word "formatting" you loose 80% of the audience. The best option IMO is a loopmounted file with an easy way to migrate to a proper partition later on. The advantages of a "real" installation over a loopmounted one are also to be proven before people can justify the additional inconveniences due to repartitioning. Moreover, if you have support for a loomounted file, the installer becomes greatly simplified: no questions asked. Compare this to a partitioner GUI, it does not matter how you design the GUI, it is still going to be 2 or 3 extra clicks with some obscure and scary (for many) option, and you have to ask at least twice before touching the hard disk. Most people do not know what a partition is and there will never be an easy way to explain that, but if I go around and say that Wubi creates a folder with a few files in there, everybody is happy with the explanation. Finally, if you use a real installation, you cannot really uninstall and restore everything as it was before. The inability to uninstall cleanly is another show stopper. Uninstalling a loopmounted installation is fairly trivial: delete the fie/folder.

    Ability to choose install from a CD image or from the net
    If there is a CD it should be autodetected and used automatically. Same thing if there is an ISO laying around somewhere (we already do that). This is the main reason why it is convenient to base the installer on the live CD as opposed to the alternate CD. The option to pre-download the ISO vs downloading the files as required during installation from Linux is a no brainer since in the latter case you cannot guarantee that networking will be up, therefore it is strongly preferable to pre-download.

    Ability to install either to an image file or to a partition
    Wubi is based on d-i, so real installation is clearly possible, we have simply disabled the parted bits for now but it would not be to problematic to reactivate them... Netinstall is also a possibility (since that too uses d-i), but I do not think it is desirable.

    The ability to convert from one kind to another
    Agreed, but that is more likely a separate project. I think we should keep things simple to begin with.

    Tools for cleaning up such as removing Grub (if used)
    When wubi is uninstalled the system is restored to its previous state and everything is removed/restored, including grldr/menu.lst/boot.ini... Restoring the system to its original state after installing to a dedicated partition would be far more complicated.

    Tools to migrate data between systems
    New wubi version will include migration-assistant to import settings from windows.

    Burn the Live CD image from Wubi.
    We had this feature, it was removed since we were using the alternate ISO which is not as fancy once burned. There were also some licensing issues with the burner software.
    Last edited by ago; April 28th, 2007 at 03:24 PM.

  8. #8
    Join Date
    Feb 2005
    Beans
    5,138

    Re: Discussions for Gutsy

    Regarding vista support, there is some code in the debian installer using bcedit and grldr.mbr, we will see if that works out well in the coming days.

  9. #9
    Join Date
    Dec 2006
    Location
    Toronto
    Beans
    479

    Re: Discussions for Gutsy

    I think one of the most important issues is font rendering. We need linux to surpass MS and Apple or at least keep abreast of them, otherwise, few will go with Linux as their main.

  10. #10
    Join Date
    Mar 2006
    Location
    Palo Alto, CA
    Beans
    1,226
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: Discussions for Wubi inclusion in Gutsy

    I've renamed this thread to Discussions for Wubi inclusion in Gutsy since people appear to be mistaking it for one of those general gutsy idea brainstorms

    Transferring from a loopmounted partition to a real one

    Slap on a GUI onto this code, and we'll have that bit done and addressed... Note that this won't yet work with the current version of Wubi, only with the one in the minefield source tree that will soon be released...

    1. open gparted, shrink partitions and create a new ext3 one
    2. sudo mount /dev/sda1 /media/extra
    3. sudo cp -r / /media/extra
    4. sudo chroot /media/extra
    sudo dpkg --purge lupin-target
    6. grub-install (hd0,0)

    And that should do the trick... As for going back:

    1. dd if=/dev/zero of=disk.img bs=1000 count=0 seek=$[1000*1000*10]
    2. sudo mkfs.ext3 disk.img
    3. sudo mount -o loop disk.img /media/extra
    4. sudo cp -r / /media/extra
    5. sudo chroot /media/extra
    sudo dpkg -i lupin-target.deb

    Loopmounted partition vs real one


    If you ask me, the best long-term solution would be to simply to use NTFS as a root filesystem, and install straight onto the windows partition without formatting it; that way, we could have the entire installer run straight from windows, because windows can read/write ntfs, and when the user reboots, it boots straight into a fully installed ubuntu. The only problem is, of course, is that ntfs-3g doesn't yet have permissions support, and we don't know whether or not they'll be done within 6 months for Gutsy, if ever, so we're left with loopmounted vs real install.

    I still fail to see any major advantages of an installation on a real partition, though. The only major disadvantage we have had until now was the kernel/initrd upgrading, which we have recently fixed. As for the performance overhead, modern hard drives are fast enough so that it's not noticeable at all, and if the user wants to remove Windows, they can simply transfer to a real install using a nice wizard made of the steps mentioned above, and they'll be free to remove windows. I think ease-of-install and removal and safety should take priority to a slight performance boost, so while we should provide an option to install to a real partition, the default behavior should simply be a loopmounted install.
    Last edited by tuxcantfly; April 28th, 2007 at 09:51 PM.

Page 1 of 3 123 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •