oldsys-preseed: Convert to confmodule instead of using a preseed file to allow overrides
Hey!
I was booting d-i over TFTP on a Thecus N2100 using the d-i netboot
images, but oldsys-preseed would detect bogus settings from the config
partition of the original firmware such as IP address, netmask etc. I
couldn't override this from the kernel cmdline and Colin helpfully
pointed out that because oldsys-preseed generated a preseed file, I
wouldn't be able to override debconf questions coming out of this file
and suggested that oldsys-preseed be converted to using confmodule.
This patch series does that; I've tested it by running the
oldsys-preseed testsuite and by booting the N2100 with a modified
oldsys-preseed. With these RedBoot commands:
load -r -v -b 0x00800000 -m tftp initrd.gz
load -r -v -b 0x00200000 -m tftp vmlinuz-2.6.32-5-iop32x
exec -c "console=ttyS0,115200 initrd=0xa0800000,42M"
it boots as before, wrong network settings, but if I add
netcfg/disable_dhcp=false to the kernel cmdline to revert the effects
of oldsys-pressed, it will now DHCP properly and I can happily SSH into
the DHCP-provided IP address.
Open questions:
- I'm not sure what the NONINTERACTIVE variable is for in
oldsys-preseed, but it might make sense to not set the debconf
frontend if we're in interactive mode? I opted to not set the seen
flag in interactive mode, albeit NONINTERACTIVE is currently
hardcoded to true
- the original bug remains that I don't really want to use the bogus
settings from the original firmware, but either the ones from the
previous Debian installation on the MD array, or the RedBoot
settings; I don't have a strong idea of the best design here, and am
happy with manually preseeding the network settings I care about, but
if others see a strong need for it, we could implement either config
sources
- similarly, it might make sense to add a way to skip oldsys-preseed
entirely; maybe there's a feature to do that in d-i that I don't know
about? otherwise, we could add some new debconf question just for
this
Cheers,
--
Loïc Minier
Reply to: