Networkless Ubuntu MID install hangs at "Scanning archive..."

Bug #288320 reported by Loïc Minier
4
Affects Status Importance Assigned to Milestone
Release Notes for Ubuntu
Fix Released
Undecided
Colin Watson
Ubuntu CD Images
Fix Released
Medium
Colin Watson
ubiquity (Ubuntu)
Won't Fix
Undecided
Unassigned
Intrepid
Won't Fix
Undecided
Unassigned

Bug Description

Hi,

If one tries to install Ubuntu MID networkless, one gets a popup near the end of the install when "scanning the archive"; I think this is mirror selection of some such.

The popup comes up in loop until network is available.

Next visible thing which happens is "installing langpacks"; this also requires network; see also bug #288319.

Bye

Revision history for this message
Emmet Hikory (persia) wrote :

There's a couple short-term workarounds available:

1) Use preseeding to disable language selection on install, and force en_US. This is bad because many users will have networking at install time.

2) Modify livecd-rootfs to install a bunch of common langpacks on the livefs, and remove the unused ones (rather than trying to add them later). This is what is done on the DVD.

Either of these only masks the problem for certain classes of user, and neither addresses the core issue.

Oliver Grawert (ogra)
Changed in ubiquity:
status: New → Confirmed
Revision history for this message
Emmet Hikory (persia) wrote :

This happens because apt-setup believes that the MID install is a netboot install, and so does not create a working /etc/apt/sources.list, instead relying on choose-mirror to build one based on the preseeded mirror information. As choose-mirror is unable to download the required information from the mirror without a network, it enters a loop.

The appropriate way to fix this for the MID image is to build the image in the same manner as other images are built.

The fix for ubiquity would be to somehow trap choose-mirror's INPUT critical mirror/bad and provide the user with a graceful means to exit (either to quit the installer, or to force different behaviour in apt-setup and continue).

Changed in ubiquity:
status: Confirmed → Triaged
Revision history for this message
Colin Watson (cjwatson) wrote :

Release notes text added:

== MID image requires a network for successful installation ==

When trying to install the Ubuntu MID (Mobile Internet Device) image without a network, the installer displays a pop-up dialog in a loop near the end of the installation while scanning the archive. The only way to break this loop is to connect to a network ([[https://launchpad.net/bugs/288320|bug 288320]]).

Changed in ubuntu-release-notes:
assignee: nobody → kamion
status: New → Fix Released
Revision history for this message
Loïc Minier (lool) wrote :

Wont fix in intrepid; however this is an issue even with network on jaunty; I suspect it's trying to use archive.u.c instead of ports, but I'm not sure why even with a working wifi connection it says it can't find a Release file.

Changed in ubiquity:
status: Triaged → Won't Fix
Revision history for this message
Colin Watson (cjwatson) wrote :

I don't suppose there's any hope of getting an installer syslog? For bonus points, start the installer with 'ubiquity --debug' and get /var/log/installer/debug too.

Revision history for this message
Colin Watson (cjwatson) wrote :

This problem is essentially occurring because we're preseeding mirror/http/hostname and mirror/http/directory for MID installations. Now that choose-mirror recognises lpia (as of 2.27ubuntu2) and does the right thing with it by default, there is no longer any need for this preseeding and I'm going to remove it.

The reason this broke is probably best explained by this block in choose-mirror.c:

                if (base_on_cd) {
                        /* We have the base system on the CD, so instead of
                         * trying to contact the mirror (which might take
                         * some time to time out if there's no network
                         * connection), let's just assume that the CD will
                         * be sufficient to get a basic system up, setting
                         * codename = suite. Note that this is an
                         * Ubuntu-specific change since (a) Debian netinst
                         * CDs etc. may not be able to install a complete
                         * system from the network and (b) codename != suite
                         * in Debian.
                         *
                         * We only do this for mirrors in our mirror list,
                         * since we assume that those have a good chance of
                         * not being typoed. For manually-entered mirrors,
                         * we still do full mirror validation.
                         */
                        di_log(DI_LOG_LEVEL_INFO, "base system installable from CD; skipping mirror check");
                        debconf_get(debconf, DEBCONF_BASE "suite");
                        if (*debconf->value) {
                                di_log(DI_LOG_LEVEL_INFO, "falling back to codename %s", debconf->value);
                                debconf_set(debconf, DEBCONF_BASE "codename", debconf->value);
                                exit(0);
                        }
                }

Preseeding mirror/http/hostname and mirror/http/directory counts as manually entering a mirror.

I'm not keen on doing anything more about this in ubiquity. For one thing, it would probably essentially amount to having to implement mirror selection. For another, it would involve overriding preseeding which is always difficult. Finally, I don't think it's necessary - very few people will preseed this in ubiquity, and those that do will generally be using the results in more controlled local conditions.

Changed in ubuntu-cdimage:
assignee: nobody → cjwatson
importance: Undecided → Medium
status: New → Triaged
Changed in ubiquity (Ubuntu):
status: Triaged → Won't Fix
Revision history for this message
Colin Watson (cjwatson) wrote :

The reason that this broke even with a working connection, by the way, is probably essentially the same as bug 349097.

Revision history for this message
Colin Watson (cjwatson) wrote :

revno: 1386
committer: Colin Watson <email address hidden>
branch nick: debian-cd
timestamp: Thu 2009-03-26 23:38:55 +0000
message:
  remove mirror/http/hostname and mirror/http/directory preseeding, since it's no longer necessary as of choose-mirror 2.27ubuntu2 and it causes problems on networkless installations (LP: #288320)

Changed in ubuntu-cdimage:
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.