Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

stage-1: Remove dependency on ply-image + better error reporting #95

Merged
merged 10 commits into from Mar 10, 2020

Conversation

samueldr
Copy link
Member

This replaces our reliance on ply-image with a custom "applet" that uses LVGUI to show stuff on the framebuffer.

boot-splash

The boot-splash applet is expected to be used with an SVG file path. That SVG will be shown centered on a black background, just like ply-image did with PNGs.

This seems useless at first glance, but it's not.

It allows us to remove ply-image from the stage-1, shaving off kilobytes off our weight. Reminder that our minimum budget with splash is around 7.5MiB and we're a bit over it. Re-purposing the existing LVGUI/LVGL and mruby code is helpful here.

What's more useful, though, is this allows us to use an SVG image, rather than relying on a PNG file. This means that the splash scales better!

boot-error

Here's the fun improvement.

First of all, this side-steps an issue ply-image had with transparent backgrounds. It would render the transparent parts as black even if given a color to clear with.

Not too thrilling.

What's amazing here, though, is that we can now show text on errors! This means there is less guesswork when you enter in a failure

Closes #84

Logo

This fixes stage-1 side of #75. Stage-2 is still the NixOS logo.

Stage-2 will be handled in the future. The main issue is figuring out what to use to show the Stage-2 splash. Should it be a continuation of the Stage-1 bespoke splash? Should it rely on existing machinery like plymouth? (Will it work correctly on mobile devices? Probably.) For now this is the last bit relying on ply-image.

@samueldr samueldr added the 4. type: enhancement New feature or request label Mar 10, 2020
@samueldr samueldr merged commit afd03a0 into NixOS:master Mar 10, 2020
@samueldr samueldr deleted the feature/boot-gui/splash branch March 10, 2020 16:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4. type: enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Drop ply-image and use a lvgui "applet" for splash and errors
1 participant