Here you a have a patch that fixes the error that osdetect.lua script
had uuid not being set.

Now the linux kernel does not complain about not finding root device.

The only problem that this patch has is that is made with grub shell in mind instead of lua.

I suppose that we can do the same thing but getting the uuid values from lua script itself. If I am able to do so I will also send a patch for it.

adrian15
--
Support free software. Donate to Super Grub Disk. Apoya el software
libre. Dona a Super Grub Disk. http://www.supergrubdisk.org/index.php?pid=10

diff -urN original/osdetect.lua uuid_fix/osdetect.lua
--- original/osdetect.lua       2009-08-22 17:42:43.000000000 +0200
+++ uuid_fix/osdetect.lua       2009-08-22 18:23:12.000000000 +0200
@@ -156,9 +156,11 @@
        local initrd
 
        title = "Linux " .. kernels[i]
+       uuid_setup = "search --set=sgd_linux_kernel -f /boot/" .. 
kernelnames[i] .. "\n"
+       uuid_set = "probe -u ($sgd_linux_kernel) --set=sgd_root_uuid" .. "\n"
        source = "set root=" .. device ..
          "\nlinux /boot/" .. kernelnames[i] ..
-         " root=UUID=" ..  " ro"
+         " root=UUID=" .. "$sgd_root_uuid" ..  " ro"
 
        if grub.file_exist (root .. "boot/initrd-" ..
                            kernels[i] .. ".img") then
@@ -171,7 +173,7 @@
          initrd = ""
        end
 
-       grub.add_menu (source .. initrd, title)
+       grub.add_menu (uuid_setup .. uuid_set .. source .. initrd, title)
        grub.add_menu (source .. " single" .. initrd,
                       title .. " (single-user mode)")
       end
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to