Skip to main content

Live Scan Grub Menu

Project description

Live Scan Grub Menu

Build an ESP File System including:

  • standalone EFI & BIOS GRUB images
  • boot time dynamic GRUB menu

Dependencies

  • grub-common

    • grub-mkimage
  • grub-efi-amd64-bin

    • x86_64-efi
  • grub-efi-amd64-signed

    • grubx64.efi.signed
  • grub-pc-bin

    • i386-pc
      • boot.img
      • grub-bios-setup
  • shim-signed

    • shimx64.efi.signed
  • grub-theme-breeze

    • themes/breeze
  • grub-theme-starfield

    • themes/starfield

Project

├── __init__.py
├── __main__.py
├── build.mod
├── build.sh
├── doc.py
├── esp.py
├── grub.cfg.sh
├── grubx64.efi.signed.sh
├── images
│  └── nightly.png
├── license.md
├── live
│  ├── menu
│  │  ├── cmd.sh
│  │  ├── env.sh
│  │  ├── gfx.sh
│  │  ├── main.sh
│  │  ├── pause.sh
│  │  ├── scan.sh
│  │  ├── set.sh
│  │  └── static.sh
│  └── source
│     ├── boot.sh
│     ├── env.sh
│     ├── menu.sh
│     ├── probe.sh
│     ├── scan.sh
│     ├── sys.sh
│     └── util.sh
├── readme
│  └── grub.md
├── readme.md
├── todo.gv
└── todo.svg

Usage

build

build.sh pgp_fingerprint /esp/mount/point [/data/mount/point]

example

/rwx/lsgm/build.sh 9C7613450C80C24F /media/ssd/esp /media/ssd/data

output

├── bios
│  ├── boot.img
│  ├── core.img
│  └── setup.sh
├── boot
│  ├── grub
│  │  ├── fonts
│  │  │  └── *.pf2
│  │  ├── grub.cfg
│  │  ├── grub.pgp
│  │  ├── grubenv
│  │  ├── i386-pc
│  │  │  ├── *.lst
│  │  │  └── *.mod
│  │  ├── locale
│  │  │  └── *.mo
│  │  ├── themes
│  │  │  ├── breeze
│  │  │  │  ├── theme.txt
│  │  │  │  ├── *.pf2
│  │  │  │  ├── *.pf2.license
│  │  │  │  ├── *.png
│  │  │  │  └── *.png.license
│  │  │  └── starfield
│  │  │     ├── README
│  │  │     ├── theme.txt
│  │  │     ├── *.pf2
│  │  │     ├── *.pf2.license
│  │  │     ├── *.png
│  │  │     └── *.png.license
│  │  └── x86_64-efi
│  │     ├── *.lst
│  │     └── *.mod
│  └── lsgm
│     ├── menu
│     │  ├── cmd.sh
│     │  ├── env.sh
│     │  ├── gfx.sh
│     │  ├── main.sh
│     │  ├── pause.sh
│     │  ├── scan.sh
│     │  ├── set.sh
│     │  └── static.sh
│     └── source
│        ├── boot.sh
│        ├── env.sh
│        ├── menu.sh
│        ├── probe.sh
│        ├── scan.sh
│        ├── sys.sh
│        └── util.sh
├── efi
│  └── boot
│     ├── bootx64.efi
│     ├── core.efi
│     └── grubx64.efi
└── grub.env

setup

setup.sh /dev/device
  • example:
bash /media/ssd/esp/bios/setup.sh /dev/sda

Roadmap

Graph

BASH

build

  • make custom

    • fonts
    • keyboard layouts
  • make images

    • mimic grubx64.efi.signed

    • targets

      • arm
      • i386-pc
      • x86_64-efi
      • x86_64-efi-signed
    • embed extra

      • fonts
      • keyboard layouts
      • locales
  • copy

    • fonts
    • locales
    • themes
  • sign files

  • setup bios

    • write for manual call

      • boot image
      • core image
      • setup script
    • auto

      • find esp device
      • write bios_grub partition

live

  • check signatures

  • options

    • check signatures for *.squashfs
    • boot to ram
    • locales
    • themes
  • target specific live-media

    • try -mount-opts
  • refactor grub list_{const,vars,xtra} & split

  • setparams probe_unset & smbios_unset

Python

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lsgm-0.0.1.tar.gz (191.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lsgm-0.0.1-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file lsgm-0.0.1.tar.gz.

File metadata

  • Download URL: lsgm-0.0.1.tar.gz
  • Upload date:
  • Size: 191.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for lsgm-0.0.1.tar.gz
Algorithm Hash digest
SHA256 2d58cbc9de06d82af07a56901b1591af648bd90287a8e2b448c697cf4dfc3473
MD5 8ca51c929a3833b105204b7c5dfb8e46
BLAKE2b-256 b7bef2afcc0b616fa22fbbab808c5232f7fac86fee5e606f9d2c95ae7e0294df

See more details on using hashes here.

File details

Details for the file lsgm-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: lsgm-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 15.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for lsgm-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8459f5946e54a3c53265322a8e5ffc6fb51efbd1d35ec4ce6ce88d7bdba1a9e4
MD5 6e1f941ba6554baf48ec0af679b7bca6
BLAKE2b-256 35492bca547f24b4f48ac6c8a1d59093c68c327bc4d7a14120e6391410e1112f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page