grub-devel
[Top][All Lists]
Advanced

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

os-detect lua uuid fix


From: adrian15
Subject: os-detect lua uuid fix
Date: Sat, 22 Aug 2009 18:32:20 +0200
User-agent: Mozilla-Thunderbird 2.0.0.19 (X11/20090103)

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

reply via email to

[Prev in Thread] Current Thread [Next in Thread]