Giter VIP home page Giter VIP logo

plymouth-themes's Introduction

Plymouth Themes

A big collection of plymouth themes, ported from android bootanimation from here.

gif

What is plymouth?

Plymouth is a project from Fedora and now listed among the freedesktop.org's official resources providing a flicker-free graphical boot process. It relies on kernel mode setting (KMS) to set the native resolution of the display as early as possible, then provides an eye-candy splash screen leading all the way up to the login manager.

How to set it up?

follow this archwiki article to setup plymouth in archlinux or any other distro.

How to get these theme?

Download : you can download individual themes from releases.

Clone : or you can clone this repository if you want -

git clone https://github.com/adi1090x/plymouth-themes.git

AUR : If you're on archlinux, you can install these themes individually with an AUR helper like yay

yay -S plymouth-theme-NAME-git

Remember to replace the underscore(_) with an hyphen(-) in theme's NAME.

Important for Arch users

If you're using the AUR package plymouth or plymouth-git, you need to ensure that cantarell-fonts or ttf-dejavu is installed. Otherwise, the password prompt to unlock a dm-crypt device won't show up.

How to use these theme?

  • follow the step below (I'm using archlinux here)-
# packages needed - plymouth, plymouth-x11, plymouth-plugin-script(fedora)

# after downloading or cloning themes, copy the selected theme in plymouth theme dir
sudo cp -r angular /usr/share/plymouth/themes/

# check if theme exist in dir
sudo plymouth-set-default-theme -l

# now set the theme (angular, in this case) and rebuilt the initrd
sudo plymouth-set-default-theme -R angular

# optionally you can test theme by running the script given in repo (plymouth-x11 required)
sudo ./showplymouth.sh 20
  • For debian(Ubuntu, Kubuntu) based distros-
# make sure you have the packages for plymouth
sudo apt install plymouth

# after downloading or cloning themes, copy the selected theme in plymouth theme dir
sudo cp -r angular /usr/share/plymouth/themes/

# install the new theme (angular, in this case)
sudo update-alternatives --install /usr/share/plymouth/themes/default.plymouth default.plymouth /usr/share/plymouth/themes/angular/angular.plymouth 100

# select the theme to apply
sudo update-alternatives --config default.plymouth
#(select the number for installed theme, angular in this case)

# update initramfs
sudo update-initramfs -u

Previews

Pack 1
Colorful Loop Connect
gif gif

Open in new tab with fullscreen mode for better view

Pack 2
Deus Ex Hexagon Dots
gif gif

Open in new tab with fullscreen mode for better view

Pack 3
Lone Pixels
gif gif

Open in new tab with fullscreen mode for better view

Pack 4
Red Loader Splash
gif gif

Open in new tab with fullscreen mode for better view

Display distro logo

Copy the logo file to the theme folder (e.g. /usr/share/plymouth/themes/colorful_loop) and then add the following content to the theme's .script file (e.g. /usr/share/plymouth/themes/colorful_loop/colorful_loop.script):

# display ubuntu logo
ubuntu_image = Image("ubuntu-logo.png"); # change filename accordingly
ubuntu_sprite = Sprite();

ubuntu_sprite.SetImage(ubuntu_image);
ubuntu_sprite.SetX(Window.GetX() + (Window.GetWidth() / 2 - ubuntu_image.GetWidth() / 2)); # center the image horizontally
ubuntu_sprite.SetY(Window.GetHeight() - ubuntu_image.GetHeight() - 50); # display just above the bottom of the screen

You can display whatever image you want and even add more.

The given example looks like the following when applied (rog_2 theme used):

ubuntu-logo-preview

FYI

  • Created and tested on machine with 1366x768 resolution.
  • Yeah, that's how quarantine going on ๐Ÿ˜.
  • Stay Home - Stay Safe, Help Fighting CORONA.

plymouth-themes's People

Contributors

adi1090x avatar akss13 avatar axelrindle avatar dejor avatar h3ss avatar motorlatitude avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

plymouth-themes's Issues

/usr/lib64/plymouth/script.so Does not exist

โœ˜ ๎‚ฐ ~/D/p/pack_3 ๎‚ฐ ๎‚  master ยฑ ๎‚ฐ sudo plymouth-set-default-theme -l
apple-mac-plymouth
bgrt
darwin
details
fedoraspinning
pixels
spinner
text
tribar
 ~/D/p/pack_3 ๎‚ฐ ๎‚  master ยฑ ๎‚ฐ sudo plymouth-set-default-theme -R pixels
/usr/lib64/plymouth/script.so does not exist

You can see, there is pixels theme in directory. But, I can't set it.

I am using Fedora, Gnome on Wayland.

sd-encrypt password prompt not showing up

sd-encrypt password prompt doesn't show up. Have to press escape to get the regualar startup prompt. It does work with plymouth-encrypt.

As it does work with other themes, (tried manjaro), the issue must be in this theme set specifically

[Resource] Python Script to install all themes

NOTE: This is not an issue but a resource to install all the themes in the github repository. This is just for the people who want to install all the themes, feel free to close this "issue" if you want :)

However it would be nice to include a shell equivalent of this script or include this script in the repository :)

Requirements:

pip3
python3

Install dependencies

pip3 install colorama

Copy the script over to the base dir of the repo, (where the readme and license is) and run with

python3 install_themes.py
import os
from subprocess import run  
from colorama import Fore as fc, init
init(autoreset=True)

folders = ['pack_1', 'pack_2', 'pack_3', 'pack_4']

print('\n')

# To get sudo access
print(fc.CYAN + '? ' + fc.LIGHTWHITE_EX + 'Enter your password to get sudo access: ')
run('sudo ls .', capture_output=True, shell=True)

print('\n')

for pack in folders:
    
    for theme in os.listdir(f'./{pack}'):
        print(fc.BLUE + '-> ' + fc.RESET + f'Installing theme {theme}')
        theme_location = os.path.realpath(f'{pack}/{theme}')
        output = run(f'sudo cp -r {theme_location} /usr/share/plymouth/themes/', capture_output=True, shell=True)
        if output.returncode != 0:
            print(fc.RED + 'Failed installing theme\n')
            print(output.stderr.decode('utf-8'))
            exit(1)
        else:
            print(fc.GREEN + f'Successfully installed {theme}\n')
        pass
 
# Set the theme with sudo plymouth-set-default-theme -r <theme_name>

Multiscreen / Multiresolution Bug

When using multimonitors and/or multiresolutions, the following Bug is applicable and well documented. In short, images are no longer correctly centered based on improper calculation.

https://bugs.launchpad.net/ubuntu/+source/kubuntu-settings/+bug/1969984

There are some AMAZING themes in this repo, however for those of us with more varied setups we cannot use them.
A better method of calculation is shown in the above referenced bug. It would be awesome if you might consider incorporating that in to this collection.

It is likely that this issue is referencing this as well
#3

Better animations

Can the motions be split into throbbers and animations so that they do not end inbetween a complete cycle.

refer this

typo

Just a tiny error, in the description of the project it says a "hugh" collection. Not too sure if its intentional or not tho

How do I uninstall?

I installed the theme and it doesn't appear to work for me.
How do I uninstall it?
I would like to remove both plymouth and the theme from my Arch installation.

Provide theme source files

Would it be possible to provide the method/files on how you created the animations? I'd like to change the colors of one to better match my setup :)

guidance in creating custom theme

I want to create a custom theme for myself and don't know how to. can you please guide me how to create one or have a program/app/web which i can use to create one

License and Distribution usage

Why is this under GPLv3? this makes it overcomplicated on redistribution!

Me and a friend are at the begin of creating a linux distro and wanted to use one of this themes, could you please explain how to do this?

I mean, while this is GPLv3 and literally everything that we want to use (even the linux kernel) is licensed under GPLv2. And i read that this two licenses aren't compatible... So how should we use this? are we by your opinion even allowed to use this in a public distribution?

Please explain this!

No Systemd password hints are shown.

When using BGRT (the default Plymouth theme) the correct password prompts are shown.
For instance, it shows the message from Systemd specifying if I can use a LUKS2 password/passsphrase/TPM2 PIN/etc. It also shows the device it asks it for.

Most themes I have tested in the repo, there was only an "Enter password" prompt, so I do not know which method I should use and for which design.

Also, there is no keyboard layout and Caps Lock indicator shown.

It would be cool if these hints were carried over from Systemd, just like BGRT does for a better UX.

Random theme each boot?

Would it be possible to write up a script that would run on computer boot to change the theme to something random so that next time you boot up your computer it was a different random theme? Love this project though, super cool stuff!

Newbie ? about changing color

What programming language are these themes written in? I'm using colorful_sliced and want to change the colors of the text when entering my cryptlvm password. Currently it shows in white and I'd like to color both the line that prompts for password and the bullet.image characters that are echoed on screen when entering the password. I think I might just change:

bullet.image = Image.Text("$", 1, 1, 1);
prompt.image = Image.Text("fRAME.wORK cRYPT pASSW0RD>>>", 1, 1, 1);

As I believe the 1,1,1 might contain color values; but as you can tell I'm already over my head. I'd really love to have multiple colors in each, like a rainbow, but thats not needed. :P

PS, thanks for porting these over from the Android collection - super awesome!

please comment your code

hi I'm using your template for my own theme (thanks for the resource, by the way) but I had trouble with it not showing until I looked over it and realized I never put in number values in template.script

I think that needs commenting as well as substituting the value for "NUM"

thanks

/usr/lib64/plymouth/script.so does not exist

When calling plymouth-set-default-theme to set the plymouth theme In FC31 it gives an error If the package plymouth-plugin-script is not installed.

$ sudo plymouth-set-default-theme -R abstract_ring
/usr/lib64/plymouth/script.so does not exist

A note should be included in the installing section advising about that case.

How to fix it:
$ sudo dnf install plymouth-plugin-script -y

Recommending this Repo in My Repo

Hello,
I have created a repo called GifSaver.
It can be used to set any GIF file as a screensaver when the user is idle for some time.

Can I mention your Plymouth theme GIFs (Along with your name and link to this repo) in my repository?

Cannot get themed password prompt to show

Hi,

I just installed the colorful-loop theme from the aur. It works perfectly on shutdown but on login (with luks encryption) I get the default prompt providid with plymouth.

Would you know what I am doing wrong?

My plymouthd.conf:

[Daemon]
Theme=colorful_loop
ShowDelay=0
DeviceTimeout=5

mkinitcpio hooks:

HOOKS=(base systemd sd-plymouth autodetect keyboard sd-vconsole modconf block sd-encrypt filesystems)

Animation is not centered?

This package is great. Thank you for sharing your efforts! But I have a problem. Other Plymouth themes get nicely centered upon booting but the one I would like to use here (connect) does not. Any idea how to troubleshoot this?

Unable to install new plymouth theme in Ubuntu, apart from the default ones

I tried to follow the following steps:

#make sure you have the packages for plymouth
sudo apt install plymouth

#after downloading or cloning themes, copy the selected theme in plymouth theme dir
sudo cp -r angular /usr/share/plymouth/themes/

#install the new theme (angular, in this case)
sudo update-alternatives --install /usr/share/plymouth/themes/default.plymouth default.plymouth /usr/share/plymouth/themes/angular/angular.plymouth 100

#select the theme to apply
sudo update-alternatives --config default.plymouth
(choose the number to the installed theme, angular in this case)

#update initramfs
sudo update-initramfs -u

It works with the preinstalled themes, But when I select a newly installed one, I just get my Dell logo until the login screen

Plymouth works during the reboot or shutdown process, but not on boot?

Could this be similar to this: https://forum.garudalinux.org/t/correct-plymouth-boot-theme-not-showing-up-on-boot/

If so, please tell me what the Ubuntu-specific steps are?

Thank you in advance

Animation not centered on multiple monitors

I'm a Linux Mint 21.2 Cinnamon Edition user, and I've been using your Plymouth theme 'colorful_sliced'. I recently encountered an issue where the theme displays with an offset across both screens on my dual-screen setup.

After extensive research and experimentation, I managed to find a workaround by replacing "Window.GetX()" with "Window.GetX(0)" and "Window.GetY()" with "Window.GetY(0)"in the theme's script (lines 36 and 37), which centers the animation on both screens.

However, I'm keen to understand more about the values for functions like 'Window.GetX()' and 'Window.GetY()' used in Plymouth scripts. The official documentation lacks specific details, and online searches haven't provided clarity.

I'd appreciate your insights and if possible, testing this solution on your system.

Thank you for your contributions to the open-source community.

hiDPI support?

Awesome work!
Could you render these at larger resolutions (like 1080p and 2160p 4K)?
Otherwise, could you give us any instructions on how to do so?
Cheers.

[help] themes not appearing on nvidia

I have two monitors, one is plugged to a nvidia card and the other one is plugged to the motherboard integrated graphics, when i apply the new theme with sudo plymouth-set-default-theme theme -R it only shows up on the monitor with integrated graphics but the default theme shows up just fine on both monitor.

I'm on Fedora 33

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.