diff -Naur booty-0.31.1/bootloaderInfo.py booty-0.31.1-patched/bootloaderInfo.py --- booty-0.31.1/bootloaderInfo.py 2003-08-16 02:20:35.000000000 +0530 +++ booty-0.31.1-patched/bootloaderInfo.py 2003-11-04 21:57:43.000000000 +0530 @@ -803,8 +803,15 @@ part = self.grubbyPartitionName(bootDev) prefix = "%s/%s" % (self.grubbyPartitionName(bootDev), grubPath) - cmd = "root %s\ninstall %s%s/stage1 d %s %s/stage2 p %s%s/grub.conf" % \ - (part, forcelba, grubPath, self.grubbyPartitionName(grubTarget), + bootfstype = fsset.getPartedFileSystemType(bootDev) + if (bootfstype == "ext2" or bootfstype == "ext3"): + imbcmd = "embed %s/e2fs_stage1_5 %s" % ( prefix, self.grubbyPartitionName(grubTarget) ) + elif (bootfstype == "xfs"): + imbcmd = "embed %s/xfs_stage1_5 %s" % ( prefix, self.grubbyPartitionName(grubTarget) ) + else: + imbcmd = "" + cmd = "root %s\n%s\ninstall %s%s/stage1 d %s %s/stage2 p %s%s/grub.conf" % \ + (part, imbcmd, forcelba, grubPath, self.grubbyPartitionName(grubTarget), grubPath, part, grubPath) if not justConfigFile: @@ -1009,8 +1016,15 @@ part = self.grubbyPartitionName(bootDev) prefix = "%s/%s" % (self.grubbyPartitionName(bootDev), grubPath) - cmd = "root %s\ninstall %s/stage1 d %s %s/stage2 p %s%s/grub.conf" % \ - (part, grubPath, self.grubbyPartitionName(theDev[5:]), + bootfstype = fsset.getPartedFileSystemType(bootDev) + if (bootfstype == "ext2" or bootfstype == "ext3"): + imbcmd = "embed %s/e2fs_stage1_5 %s" % ( prefix, self.grubbyPartitionName(grubTarget) ) + elif (bootfstype == "xfs"): + imbcmd = "embed %s/xfs_stage1_5 %s" % ( prefix, self.grubbyPartitionName(grubTarget) ) + else: + imbcmd = "" + cmd = "root %s\n%s\ninstall %s%s/stage1 d %s %s/stage2 p %s%s/grub.conf" % \ + (part, imbcmd, forcelba, grubPath, self.grubbyPartitionName(grubTarget), grubPath, part, grubPath) if not justConfigFile: