Jeremy Katz wrote: > On Mon, 2007-07-30 at 19:40 -0500, Jerry Vonau wrote: >> Yes, there is a kernel installed, a stock f7, off-the-net live image was >> used. Think I found the issue, in kernelVersionList >> ts = rpm.TransactionSet() is looking at the running system and not at >> the newly installed image. Changing that line to >> ts = rpm.TransactionSet("/mnt/sysimage") results in a db version >> mismatch error when run from the "normal" installer but not when run >> from the livecd, but if I do a "rm -f /mnt/sysimage/var/lib/rpm/__db.*" >> before calling kernelVersionList, in the installer, I get a new initrd, >> grub.conf, it all works. :-) >> >> I'm just not sure why there is the db version mis-match between the >> livecd and the "normal" installer. I'll leave that for another time to >> figure out. > > Aha, that makes sense. We definitely should be checking in the chroot. > And due to rpm sillies, blowing the db environment away is likely > needed. Fixed up in anaconda CVS to do both >From CVS: def kernelVersionList(self, rootPath = "/"): versions = [] # FIXME: we should understand more types of kernel versions and not # be tied to rpm... import rpm ts = rpm.TransactionSet(rootPath) Would not defining rootPath to be "/" be the same as leaving TransactionSet() undefined, as the default is to use "/" anyway? This fails for me, the rootPath needs to be "/mnt/sysimage" as that is where the install target is mounted at that point in the install. Jerry