Giter Club home page Giter Club logo

plymouth's Introduction

plymouth - graphical boot animation and logger

Plymouth is an application that runs very early in the boot process
(even before the root filesystem is mounted!) that provides a graphical
boot animation while the boot process happens in the background.

It is designed to work on systems with DRM modesetting drivers.  The
idea is that early on in the boot process the native mode for the
computer is set, plymouth uses that mode, and that mode stays throughout
the entire boot process up to and after X starts.  Ideally, the goal is
to get rid of all flicker during startup.

For systems that don't have DRM mode settings drivers, plymouth falls
back to text mode.

In either text or graphics mode, the boot messages are completely
occluded.  After the root file system is mounted read-write, the
messages are dumped to /var/log/boot.log.  Also, the user can see the
messages at any time during boot up by hitting the escape key.

Plymouth isn't really designed to be built from source by end users.
For it to work correctly, it needs integration with the distribution.
Because it starts so early, it needs to be packed into the
distribution's initial ram disk, and the distribution needs to poke
plymouth to tell it how boot is progressing.

plymouth ships with two binaries: /sbin/plymouthd and /bin/plymouth

The first one, plymouthd, does all the heavy lifting. It logs the
session and shows the splash screen. The second one, /bin/plymouth, is
the control interface to plymouthd.

It supports things like plymouth --show-splash, or plymouth
--ask-for-password, which trigger the associated action in plymouthd.

plymouth supports various "splash" plugins which are analagous to
screensavers, but happen at boot time.  Currently there are three
graphical splash plugins: solar, fade-in, and spinfinity.  There are
also three non-graphical plugins which are for text mode and the
detailed view.

The graphical plugins need a logo image and background color to
function.  Distributions are expected to set these up in their packages
at ./configure time, but there are some placeholder values set up if
./configure doesn't get those options.

Plymouth isn't done yet.  It's still under active development and isn't
ready for distros to use as-is.  That should change in the near future
though.

plymouth's People

Contributors

romainhuet avatar vorlonofportland avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.