Announcement

Collapse
No announcement yet.

Gummiboot: A Simple UEFI Boot Manager

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Gummiboot: A Simple UEFI Boot Manager

    Phoronix: Gummiboot: A Simple UEFI Boot Manager

    For those looking to experiment with UEFI support on Linux, one of the alternatives to GRUB2 and efilinux is Gummiboot. The Gummiboot UEFI boot manager is an up and coming choice that's under active development for playing with EFI images...

    http://www.phoronix.com/vr.php?view=MTEzODY

  • #2
    When you look at the gummiboot site you see this as option to the kernel "root=PARTUUID=084917b7-8be2-4e86-838d-f771a9902e08" - that's NO normal uuid, that only works with GPT as this is the partition id there - not the filesystem uuid which you can see with blkid/udev. The only app i know how to get this is gdisk, where you can use the i option to show that value. I would like to know if there is a better or more direct way to get this value.

    In theory it is good to have got a tiny loader as some uefi have got problems with "double" entries for the same file with different options, so you could use that to select the right entry. Maybe i try it later...

    Comment


    • #3
      Doesn't?

      Doesn't UEFI come with its own bootloader already?
      So that the bootloader is stored on the motherboard ROM instead of on the disk?

      Comment


      • #4
        Thats absolutely correct. Basically you can do everything that you can do with that loader with efibootmgr directly. The problem is however when you find bad uefi implementations, like firmware 3402 for asus p8z68-v. there on bootup only the last added loader (-l option for efibootmgr) is kept even when there was already an entry with a different label (-L) was there and had other (kernel) options. I reported that to asus but just got this response (i selected Linux as os because my examples are with efibootmgr):
        Dear Valued Customer,

        Thank you for contacting ASUS Technical Service.

        Sorry, we don't offically support Linux on desktop motherboard.

        Sorry for the trouble. Wish you a good day.

        If you continue to experience issues in the future, please do not hesitate to contact us again.
        Best Regards,
        Cherry
        ASUS Global Technical Support Center
        Basically i see this as bad joke when you look at the price for the board - then you could expect complete uefi support and not only a partitial one.
        Last edited by Kano; 07-12-2012, 08:38 AM.

        Comment


        • #5
          I have my system set up with efibootmgr on an intel mobo and although it behaves a bit weird (ie if you change the boot order with efibootmgr for next boot it doesn't respect it) it gives me a boot menu in the boot screen with the entries created so i don't care that much.

          The only thing i am waiting is the kernel people to support passing kernel parameters with a file so that you don't have to do it with efibootmgr.

          Comment


          • #6
            I tried to compile it on fedora 17 but gave a "efi.h not found" error. Where the tech is that efi.h?

            Comment


            • #7
              Well now that GRUB2 has hit v2 it is time to re-invent the wheel after all.

              And with Lennart Poettering's involvement I'm sure there will be a lot of hype and a mad push by everyone to make this the new de facto standard.

              Comment


              • #8
                @Alex Sarmiento

                you need gnu-efi package. if somebody wants to compile it on debian get a new package here:

                http://sourceforge.net/projects/gnu-efi/files/

                Code:
                dch -v 3.0q-0 "New upstream release."
                debuild -b
                and then change the Makefile for gummiboot:
                Code:
                diff --git a/Makefile b/Makefile
                index b190341..2227528 100644
                --- a/Makefile
                +++ b/Makefile
                @@ -24,13 +24,13 @@ CFLAGS += \
                        -DEFI_FUNCTION_WRAPPER
                 endif
                
                -LDFLAGS = -T $(LIBDIR)/gnuefi/elf_$(ARCH)_efi.lds \
                +LDFLAGS = -T $(LIBDIR)/elf_$(ARCH)_efi.lds \
                        -shared \
                        -Bsymbolic \
                        -nostdlib \
                        -znocombreloc \
                        -L $(LIBDIR) \
                -       $(LIBDIR)/gnuefi/crt0-efi-$(ARCH).o \
                +       $(LIBDIR)/crt0-efi-$(ARCH).o \
                        $(shell $(CC) -print-libgcc-file-name)
                
                 %.o: %.c

                Comment


                • #9
                  Originally posted by johnc View Post
                  Well now that GRUB2 has hit v2 it is time to re-invent the wheel after all.

                  And with Lennart Poettering's involvement I'm sure there will be a lot of hype and a mad push by everyone to make this the new de facto standard.
                  In a mad push to be sarcastic, you miss the purpose behind it.

                  http://mjg59.dreamwidth.org/12368.html

                  Specifically, read the references to the simple first stage bootloader that will precede GRUB2.

                  Comment


                  • #10
                    Originally posted by RahulSundaram View Post
                    In a mad push to be sarcastic, you miss the purpose behind it.

                    http://mjg59.dreamwidth.org/12368.html

                    Specifically, read the references to the simple first stage bootloader that will precede GRUB2.
                    Can't wait!

                    Comment


                    • #11
                      Back to gummiboot, the bootloader look is very basic. It autodetects EFI/Microsoft/Boot/bootmgfw.efi and EFI/Boot/bootx64.efi - no need to add a config file for that. Maybe
                      shellx64.efi could be autodetected as well, as many uefi implmentations search that at this position when you use efi shell from setup. As the documention is only done by examples those should be done better. Some things i found out and which are not really clear:

                      1. You can not boot with initrd and root=ROOTUUID=... only with root=UUID=... - at least not with debian
                      2. / in front is always optional, never mentioned
                      3. linux/initrd combo is the same as efi with options initd=path\to\initrd - that means all it does it replacing / by \ and adding initrd=... as first option

                      I personally do not like that the position /loader is used for the config files. There should be at least a compile override to use a different one, i would prefer /EFI/gummiboot which i used to install the efi binary. A tiny bit themeing would not hurt as well, a title option for the main menu, maybe some color overrides, not everybody likes lightgray on black.

                      Here are my test files:

                      http://kanotix.com/files/fix/gummiboot/
                      Last edited by Kano; 07-12-2012, 12:44 PM.

                      Comment


                      • #12
                        Originally posted by Kano View Post
                        Thats absolutely correct. Basically you can do everything that you can do with that loader with efibootmgr directly. The problem is however when you find bad uefi implementations, like firmware 3402 for asus p8z68-v. there on bootup only the last added loader (-l option for efibootmgr) is kept even when there was already an entry with a different label (-L) was there and had other (kernel) options. I reported that to asus but just got this response (i selected Linux as os because my examples are with efibootmgr):

                        Basically i see this as bad joke when you look at the price for the board - then you could expect complete uefi support and not only a partitial one.
                        Kano, resend that support message but do not mention linux, instead use different UEFI MS os's. (eg: Vista, Win 7, Server). It was the only way I could get past the BS tier 1 support and get the case escalated to engineering for other UEFI issues that they have.

                        Comment


                        • #13
                          Just found a Kanotix user with Asus P8Z77-V LX. BIOS 0610 has got the same problem. But i found a little hack, you can use similar entries with just one differnet char (change upper/lowercase) because it is fat anyway. But thats not how it should work.
                          Last edited by Kano; 07-12-2012, 04:04 PM.

                          Comment


                          • #14
                            Finally some attention to looks on an open source effort. After years of envying the smooth look of an Apple computer booting and after the not well supported efforts by BURG, now a bootloader that takes desktop computing seriously is being launched, with professionally designed icons and graphics.

                            It was about time.

                            Comment


                            • #15
                              Originally posted by Aleve Sicofante View Post
                              Finally some attention to looks on an open source effort. After years of envying the smooth look of an Apple computer booting and after the not well supported efforts by BURG, now a bootloader that takes desktop computing seriously is being launched, with professionally designed icons and graphics.

                              It was about time.

                              Wow.

                              Somebody who out-sarcasmed me.

                              I'm humbled.

                              Comment

                              Working...
                              X