linuxboot / linuxboot/book

concept for graphical environments

Open
#80 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
300
Forks
54
PR merge metrics
No merged PRs in 30d

Description

Current Linux desktop distros mostly expect a UEFI environment.

Generally, u-root can execute a PE32, all the code is there:
https://github.com/u-root/u-root/blob/main/pkg/boot/bzimage/header.go#L279

Problems arise when some service or an EFI framebuffer etc is expected.
Let's say we do our LinuxBoot with native Linux DRM for graphics. Then we execute a distro kernel with its initrd, and that tries to draw on the EFI framebuffer, which does not exist. So the screen goes blank.

One approach is adding edk2 as an intermediate payload again, creating a bunch of ping pong.

Some minimal tables for a basic UEFI would work.
Should we meet on that medium ground, similar to Arm style Base Boot Requirements?
We could add this to u-root or as a standalone tool.
It wouldn't be hard to write those few structs somewhere in memory, at least.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked u-root file pkg/boot/bzimage/header.go and review how PE32 execution relates to the missing EFI framebuffer and services described here. Compare the u-root and standalone-tool options, then define the minimal UEFI tables and expected graphics behavior before implementation; done means the scope and ownership are agreed.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux
Domain
operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.