Page 2 of 4 FirstFirst 1234 LastLast
Results 11 to 20 of 39

Thread: Fancy menu for GRUB EFI

  1. #11
    Join Date
    Apr 2006
    Beans
    Hidden!
    Distro
    Ubuntu 9.04 Jaunty Jackalope

    Re: Fancy menu for GRUB EFI

    Text mode window size and resolution.

    On 1920x1200 display (24inch) EFI text mode default is a small window 80 column 25 row, compared with full size 240 row 63 col. The small window also has some problems with displaying the Tools menu.

    EFI shell can change this -
    Code:
    Shell> mode
     Available modes on standard output
      col 80 row 25 *
      col 80 row 50
      col 240 row 63
    Shell> mode 240 63
    This switches to full screen text mode, giving big improvement for terminal or edit. But it requires commandline booting from the rEFIt efi shell.

    Could this selection be made accessible from the grub.efi menu?

  2. #12
    Join Date
    May 2007
    Beans
    465

    Re: Fancy menu for GRUB EFI

    Quote Originally Posted by pxwpxw View Post
    Text mode window size and resolution.

    On 1920x1200 display (24inch) EFI text mode default is a small window 80 column 25 row, compared with full size 240 row 63 col. The small window also has some problems with displaying the Tools menu.

    EFI shell can change this -
    Code:
    Shell> mode
     Available modes on standard output
      col 80 row 25 *
      col 80 row 50
      col 240 row 63
    Shell> mode 240 63
    This switches to full screen text mode, giving big improvement for terminal or edit. But it requires commandline booting from the rEFIt efi shell.

    Could this selection be made accessible from the grub.efi menu?
    The grub terminal output doesn't have a function for mode switch, but I can select the maximum mode during startup. This function can be integrated in the next version.

  3. #13
    Join Date
    May 2007
    Beans
    465

    Re: Fancy menu for GRUB EFI

    Update:

    Support dialog template, the demo uses this to implement both the e and t hotkey:

    e = "menu_edit dialog_edit text=command"
    t = "menu_edit dialog_edit text=title\nmenu_refresh"

    e edits the command, while t edit the menu title.

    Add direction function menu_next_node, menu_prev_node, menu_next_anchor and menu_prev_anchor. This is quite useful when you need to bind them to hotkey. For example, the demo adds two terminal example to Tools menu. Inside terminal, normal navigation key up/down/left/right/tab are all used, so you need to define a hotkey to switch focus. The demo uses f6:

    f6 = menu_next_anchor

    Smart pop up control. If parent menu is at the bottom of screen, sub menu pops to the top, If parent menu is at the top of screen, sub menu pops to the bottom, etc. This ensures the pop up menu won't be clipped by screen border.

    Set maximum text mode in EFI.
    Attached Files Attached Files
    Last edited by bean123; October 20th, 2009 at 06:11 PM.

  4. #14
    Join Date
    Apr 2006
    Beans
    Hidden!
    Distro
    Ubuntu 9.04 Jaunty Jackalope

    Re: Fancy menu for GRUB EFI

    That looks very good, dual terminal, full screen text mode, good images.
    I will add a picture later.
    Attached Images Attached Images
    Last edited by pxwpxw; October 21st, 2009 at 07:56 AM.

  5. #15
    Join Date
    May 2007
    Beans
    465

    Re: Fancy menu for GRUB EFI

    The main repository is now moved from github to launchpad, the repository at github is removed to avoid confusion, last commit of git can be found at:

    http://repo.or.cz/w/grub2/bean.git

    The launchpad page for the new repository:

    https://launchpad.net/burg

    BTW, anyone knows how to use launchpad's ppa feature to build binary package ?
    Last edited by bean123; October 26th, 2009 at 08:54 AM.

  6. #16
    Join Date
    Apr 2006
    Beans
    Hidden!
    Distro
    Ubuntu 9.04 Jaunty Jackalope

    Re: Fancy menu for GRUB EFI

    Quote Originally Posted by bean123 View Post
    The main repository is now moved from github to launchpad, the repository at github is removed to avoid confusion, last commit of git can be found at:

    http://repo.or.cz/w/grub2/bean.git

    The launchpad page for the new repository:

    https://launchpad.net/burg

    BTW, anyone knows how to use launchpad's ppa feature to build binary package ?
    I am using the new repo now -
    revno 1769
    bzr branch https://code.launchpad.net/~bean123ch/burg/trunk
    Note it needs the latest launchpad bzr version (karmic).

    I have grub pc bios boot installing ok now and running menu on Apple Imac from bios boot. Not quite as good as the efi version yet, text is missing from the gfx display.

    I don't know about ppa, I suppose you loooked here -
    https://help.launchpad.net/Packaging
    https://launchpad.net/~mactel-support

  7. #17
    Join Date
    May 2007
    Beans
    465

    Re: Fancy menu for GRUB EFI

    Update for revno 1770:

    Support transparent icon.

    Support command history in term widget. UP/DOWN move through history, ctrl-p/ctrl-n go back to previous output lines. In EFI, ctrl-p/ctrl-n can't be input but you can use mapkey to map them to one of the function keys. By default, it remembers the last 20 commands, use history property to adjust the number.

    Support two menu style. Default style is to show sub menu alongside parent, but you can also shows sub menu full screen. To use the alternative style, edit menu/menu.cfg or menu/menu_efi.cfg, use menu_template1 in menu_create command:

    menu_create menu_template1 item_template

    Misc bug fixes, this version should display font properly in pc mode.
    Attached Images Attached Images
    Attached Files Attached Files
    Last edited by bean123; October 26th, 2009 at 07:42 PM.

  8. #18
    Join Date
    Apr 2006
    Beans
    Hidden!
    Distro
    Ubuntu 9.04 Jaunty Jackalope

    Re: Fancy menu for GRUB EFI

    Quote Originally Posted by bean123 View Post
    Update for revno 1770:

    Support transparent icon.

    Support command history in term widget. UP/DOWN move through history, ctrl-p/ctrl-n go back to previous output lines. In EFI, ctrl-p/ctrl-n can't be input but you can use mapkey to map them to one of the function keys. By default, it remembers the last 20 commands, use history property to adjust the number.

    Support two menu style. Default style is to show sub menu alongside parent, but you can also shows sub menu full screen. To use the alternative style, edit menu/menu.cfg or menu/menu_efi.cfg, use menu_template1 in menu_create command:

    menu_create menu_template1 item_template

    Misc bug fixes, this version should display font properly in pc mode.
    Tue 27 Oct 2009
    ----
    revno1770 On Apple imac81. 1920x1200 display.

    New feature command history in terminal is good. It all looks good.
    I still have to try all the other features.
    Capability to save information from terminal to a file would be useful.

    Display font in pc gfx mode is good now.

    -----------------------------------
    Some side issues -

    EFI textmode has reverted to a 640x480 window in the 1920x1200 display,
    EFI gfxmode now has to be set gfxmode="1920x1200" not "auto" which worked before.

    PC textmode is full screen but 80 column 23 line, big characters like default vga - (not sure it this was the case before the update). May be user controllable somewhere?

    PC gfxmode can only be set to 4x3 set of resolutions, 640x480...1600x1200.
    Good image but wrong aspect ratio when expanded to fill 1920x1200. A VESA limitation?

    ----------------------------------

    IMO the commandline edit would be better if it could insert a new line, like the grub1.97 commandline console. ( Although it can use ';'or '\n' for same effect and has other advantages).

    ----------------------------------

    Since the initial load to burg, I noticed some occasional dead keyboard in pc-bios boot on Apple. This has happened in the straight grub 1.97 boot menu and also in new menu, maybe once in 5 restarts and can be in menu selection or edit. Seen 2 times when toggle back from textmode to gfx.

    -----------------------------------

    The pc build seems to need the recent 'date' bugfix for efi.
    pxw@im:~/src/burg/pxw/buildpc$ ./grub-mkimage -d . `cat ../../../memodules3` -o grub.img --prefix='(hd0,6)/grub'
    grub-mkimage: error: unresolved symbol grub_set_datetime

    ------------------------------------

    I have been using preloaded modules for grub64.efi and for grub.img multiboot

    grub.efi modules -

    minicmd part_msdos part_gpt fat ext2 hfsplus ntfs reiserfs xfs iso9660 ls search loopback linux chain reboot halt appleldr help configfile hexdump loadbios fixvideo sh video efi_fb gfxterm font png jpeg coreui loadcfg menucmd test gfxmenu textmenu date

    grub.img modules -

    minicmd sh normal boot part_gpt ext2 fshelp biosdisk multiboot gzio search extcmd memdisk configfile part_msdos fat hfsplus ntfs iso9660 ls search linux16 chain reboot halt help hexdump video gfxterm font png coreui loadcfg menucmd test gfxmenu textmenu vbe

  9. #19
    Join Date
    May 2007
    Beans
    465

    Re: Fancy menu for GRUB EFI

    Quote Originally Posted by pxwpxw View Post
    Tue 27 Oct 2009
    ----
    revno1770 On Apple imac81. 1920x1200 display.

    New feature command history in terminal is good. It all looks good.
    I still have to try all the other features.
    Capability to save information from terminal to a file would be useful.

    Display font in pc gfx mode is good now.

    -----------------------------------
    Some side issues -

    EFI textmode has reverted to a 640x480 window in the 1920x1200 display,
    EFI gfxmode now has to be set gfxmode="1920x1200" not "auto" which worked before.
    Unlike GITHUB, The burg repository is based on official grub tree, not phcoder's branch, so some of phcoder's patch is not applied yet, but you can always use this notion:

    set gfxmode=0x0

    PC textmode is full screen but 80 column 23 line, big characters like default vga - (not sure it this was the case before the update). May be user controllable somewhere?
    The maximum line mode only works for EFI.

    PC gfxmode can only be set to 4x3 set of resolutions, 640x480...1600x1200.
    Good image but wrong aspect ratio when expanded to fill 1920x1200. A VESA limitation?
    You can use vbeinfo command to see what modes are supported by vbe.

    IMO the commandline edit would be better if it could insert a new line, like the grub1.97 commandline console. ( Although it can use ';'or '\n' for same effect and has other advantages).

    ----------------------------------

    Since the initial load to burg, I noticed some occasional dead keyboard in pc-bios boot on Apple. This has happened in the straight grub 1.97 boot menu and also in new menu, maybe once in 5 restarts and can be in menu selection or edit. Seen 2 times when toggle back from textmode to gfx.

    -----------------------------------

    The pc build seems to need the recent 'date' bugfix for efi.
    pxw@im:~/src/burg/pxw/buildpc$ ./grub-mkimage -d . `cat ../../../memodules3` -o grub.img --prefix='(hd0,6)/grub'
    grub-mkimage: error: unresolved symbol grub_set_datetime
    Thanks for the tip, I'd take a look at it soon.

  10. #20
    Join Date
    May 2007
    Beans
    465

    Re: Fancy menu for GRUB EFI

    Update:

    Support password dialog

    First, you need to set user and password in grub.cfg, for example:

    set superusers=admin
    password admin admin
    password user user

    This defines two users, admin is a super user.

    To set authorized users for a boot menu defined with menuentry:

    Code:
    menuentry "AA" --users user {
      true
    }
    To set authorized users for a boot item defined using menu section:

    Code:
    menu {  
      "AA"  {
        users = user
        command = true
      }
    }
    In onkey section, you can add * at the beginning of a command, this indicates the hotkey can only be used by super users, for example:

    Code:
    onkey {
      e = "*menu_edit dialog_edit text=command"
      c = "*menu_popup term_window"
    }
    BTW, this version should fix the previous bug of not enable maximum text mode in EFI and grub_set_datetime not resolved in pc mode.
    Attached Images Attached Images
    Attached Files Attached Files

Page 2 of 4 FirstFirst 1234 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •