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

Bug#635053: Choose-mirror overrides mirror/suite and mirror/codename



Package: choose-mirror
Version: 2.37

Hello,

I am maintaining a repository that consists of Debian packages merged with a couple of our modifications using reprepro. I have two codenames in the repo, beta3 and beta4, but actually the system behind this is Debian Stable, so I expect that the installer would behave just as Debian Stable (squeeze).

For installs I am using the mini-iso generated from the source package and provide my own preseed file. According to the documentation:
http://d-i.alioth.debian.org/manual/en.i386/apbs04.html#preseed-mirror

I should be able to specify my own mirror server with:

d-i mirror/country string manual
d-i mirror/http/hostname string wro-linux.eu.tieto.com
d-i mirror/http/directory string /debian

# Suite to install.
d-i mirror/suite string beta4
# Suite to use for loading installer components (optional).
d-i mirror/udeb/suite string beta4

Unfortunately I noticed that choose-mirror in its choose-mirror.postinst script takes the values from /etc/lsb-release
and overrides the values provided in the preseed file:

if [ -f /etc/lsb-release ]; then
  . /etc/lsb-release
  if [ -n "$DISTRIB_CODENAME" ]; then
    db_set mirror/suite "$DISTRIB_CODENAME"
  fi
fi

Thus I am actually unable to specify the repository in any reasonable format
like I would use in sources.list:
deb http://wro-linux.eu.tieto.com/debian beta4 main

Next installation steps fail due to being unable to find the stable suite that was found in lsb-release.

I know I could use a link from beta4 to stable on the repository, but mini-iso which take preseed with beta3 suite would also end up
in 'stable' which is linked to beta4.

I also noticed that I would have to edit debootstrap as well, as it seems there is no other preseed value which actually specifies
the distribution but mirror/suite and mirror/codename, as when I changed the lsb-release package to beta3/beta4,
debootstrap fails to find the beta3/beta4 scripts in his package (while it should actually look for squeeze). But this is out of the scope.

Thus long story short:
I believe that choose-mirror should first check if the user has not specified the mirror/suite with preseed before setting his own default value.

Best regards,
Boleslaw Tokarski




Reply to: