[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#486558: installation-reports: strange (null) in URL for tasksel for automatic install



Frans Pop wrote:
> Because we're running at critical priority, the country mirror list is 
> never actually displayed and thus mirror/http/mirror never gets a value; 
> it does have a default value: ftp.debian.org

Does the code not still ask the question despite it not being displayed?
Running at critical priority should be identical to running at low
priority and taking the default for everything.

> I wonder if we should set the first value of the country list as the 
> selected value here. In most cases this will be a better "default" than 
> the default at http/mirror, even if that's changed from ftp.d.o. 
> 
> We then get to validate_mirror(), which gets the "selected" mirror 
> (ftp.d.o) and next calls 'mirror_root(mirror)'. The return value of that 
> is set as directory. This must be the function that returns the "(null)" 
> value and causes the incorrect wget later.
> 
> The cause for the null value seems to be that the entry for ftp.d.o in the 
> mirror master list looks like this:
> Site: ftp.debian.org
> Alias: saens.debian.org
> Alias: debian-mirror.cs.umn.edu
> Type: Push-Primary
> Archive-architecture: amd64 i386
> X-Archive-http: /debian/
> X-Archive-ftp: /debian/
> 
> The last two lines should not have the "X-" prefix! Essentially ftp.d.o 
> does not have a "mirror_root" defined in the master list.

Joy changed this in 1.1156:
date: 2007-12-07 18:26:14 -0500;  author: joy;  state: Exp;  lines: +2 -2;
commented out Archive-* fields for ftp.debian.org, so that it doesn't even appear in lists, other than for sponsorship purposes

> I'd appreciate some input how to deal with this and also if the needed 
> changes could be made by someone with more C skills than I have.

Detecting the problem and failing at runtime can be done (and I've done
it), but displaying the mirror/bad error to the user when they just took
the default only highlights that the installer is broken, it doesn't really
fix the problem.

The best way to avoid the problem seems to be to check, at build time, that
the default is actually present in the C struct, and if not, abort the build.

Alternatively, remove the default entirely, and let debconf pick a default,
which should be the first mirror listed in the generated selection list, which
is ordered with push-primary mirrors first, so it will be a fairly good
mirror. (Modulo issues like ftp.us.debian.org being an often-inconsistent
set of multiple mirrors..)  However, if what you said in your first paragraph
is right, this doesn't happen at critical priority for some reason?

-- 
see shy jo

Attachment: signature.asc
Description: Digital signature


Reply to: