You are not logged in.

#1 2021-02-24 08:51:58

Shashwat
Member
From: India
Registered: 2011-05-08
Posts: 101

[SOLVED] Plymouth with EFISTUB

I had recently installed EFISTUB and now I am planning to achieve flicker free boot using plymouth.

I followed every instruction from the wiki and installed plymouth.  https://wiki.archlinux.org/index.php/Plymouth

I had added plymouth in HOOKS and amdgpu in MODULES in /etc/mkinitcpio.conf

I have also installed gdm-plymouth since I am using gdm as my display manager.

I have also added quiet splash as parameter in linux params.

[tejonidhi@arch ~]$ efibootmgr -v
BootCurrent: 0001
Timeout: 1 seconds
BootOrder: 0001,0005
Boot0001* Arch	HD(1,MBR,0xdae44745,0x800,0xf9dcd)/File(\vmlinuz-linux)r.o.o.t.=.P.A.R.T.U.U.I.D.=.d.a.e.4.4.7.4.5.-.0.2. .r.w. .q.u.i.e.t. .s.p.l.a.s.h. .i.n.i.t.r.d.=.\.i.n.i.t.r.a.m.f.s.-.l.i.n.u.x...i.m.g.
Boot0005* GRUB	HD(1,MBR,0xdae44745,0x800,0xf9dcd)/File(\EFI\GRUB\grubx64.efi)

Here is the output of plymouthd.conf

  GNU nano 5.5                                            /etc/plymouth/plymouthd.conf                                                      
# Distribution defaults. Changes to this file will get overwritten during
# upgrades.
[Daemon]
Theme=monoarch
ShowDelay=10
DeviceTimeout=8

I have tried various themes and the output does work in TTY6 but it doesn't work during boot.

What shall I do to make it work?

Regards
TIA

Last edited by Shashwat (2021-02-25 06:51:16)

Offline

#2 2021-02-24 09:13:46

progandy
Member
Registered: 2012-05-17
Posts: 5,190

Re: [SOLVED] Plymouth with EFISTUB

Have you rebuilt the initramfs?


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#3 2021-02-24 09:42:01

Shashwat
Member
From: India
Registered: 2011-05-08
Posts: 101

Re: [SOLVED] Plymouth with EFISTUB

^^ Yes with mkinitcpio -P

Offline

#4 2021-02-24 10:41:50

d_fajardo
Member
Registered: 2017-07-28
Posts: 1,568

Re: [SOLVED] Plymouth with EFISTUB

Try plymouth-git. In my system the regular plymouth package doesn't work but the git version does.

Offline

#5 2021-02-24 10:50:39

Shashwat
Member
From: India
Registered: 2011-05-08
Posts: 101

Re: [SOLVED] Plymouth with EFISTUB

^^ Replaced plymouth with the git version and still no progress. Same issue.

Offline

#6 2021-02-24 11:07:30

Taijian
Member
Registered: 2016-04-10
Posts: 74

Re: [SOLVED] Plymouth with EFISTUB

Maintainer of the AUR plymouth{,-git} and gdm-plymouth{,-nox} packages here:

a) Could you give us the contents of both your mkinitcpio.conf and your relevant /etc/efistub/config.d/*.conf?

b) You mentioned amdgpu - is AMD your only GPU provider or is there also an Intel iGPU on your system?

Offline

#7 2021-02-24 11:24:00

Shashwat
Member
From: India
Registered: 2011-05-08
Posts: 101

Re: [SOLVED] Plymouth with EFISTUB

I am using AMD APU Ryzen 3 3200 with inbuilt GPU and no other dedicated card is there.

[tejonidhi@arch ~]$ inxi -C
CPU:       Topology: Quad Core model: AMD Ryzen 3 3200G with Radeon Vega Graphics bits: 64 type: MCP L2 cache: 2048 KiB 
           Speed: 1298 MHz min/max: 1400/3600 MHz Core speeds (MHz): 1: 1361 2: 2093 3: 1293 4: 1351 
[tejonidhi@arch ~]$ inxi -G
Graphics:  Device-1: Advanced Micro Devices [AMD/ATI] Picasso driver: amdgpu v: kernel 
           Display: x11 server: X.Org 1.20.10 driver: none resolution: 1920x1080~60Hz 
           Message: Unable to show advanced data. Required tool glxinfo missing. 

Here is the output of mkinitcpio and  there is no directory of /etc/efistub as you mentioned.

[tejonidhi@arch ~]$ cat /etc/mkinitcpio.conf 
# vim:set ft=sh
# MODULES
# The following modules are loaded before any boot hooks are
# run.  Advanced users may wish to specify all system modules
# in this array.  For instance:
#     MODULES=(piix ide_disk reiserfs)
MODULES=(amdgpu)

# BINARIES
# This setting includes any additional binaries a given user may
# wish into the CPIO image.  This is run last, so it may be used to
# override the actual binaries included by a given hook
# BINARIES are dependency parsed, so you may safely ignore libraries
BINARIES=()

# FILES
# This setting is similar to BINARIES above, however, files are added
# as-is and are not parsed in any way.  This is useful for config files.
FILES=()

# HOOKS
# This is the most important setting in this file.  The HOOKS control the
# modules and scripts added to the image, and what happens at boot time.
# Order is important, and it is recommended that you do not change the
# order in which HOOKS are added.  Run 'mkinitcpio -H <hook name>' for
# help on a given hook.
# 'base' is _required_ unless you know precisely what you are doing.
# 'udev' is _required_ in order to automatically load modules
# 'filesystems' is _required_ unless you specify your fs modules in MODULES
# Examples:
##   This setup specifies all modules in the MODULES setting above.
##   No raid, lvm2, or encrypted root is needed.
#    HOOKS=(base)
#
##   This setup will autodetect all modules for your system and should
##   work as a sane default
#    HOOKS=(base udev autodetect block filesystems)
#
##   This setup will generate a 'full' image which supports most systems.
##   No autodetection is done.
#    HOOKS=(base udev block filesystems)
#
##   This setup assembles a pata mdadm array with an encrypted root FS.
##   Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
#    HOOKS=(base udev block mdadm encrypt filesystems)
#
##   This setup loads an lvm2 volume group on a usb device.
#    HOOKS=(base udev block lvm2 filesystems)
#
##   NOTE: If you have /usr on a separate partition, you MUST include the
#    usr, fsck and shutdown hooks.
HOOKS=(base udev plymouth autodetect modconf block filesystems keyboard fsck)

# COMPRESSION
# Use this to compress the initramfs image. By default, zstd compression
# is used. Use 'cat' to create an uncompressed image.
#COMPRESSION="zstd"
#COMPRESSION="gzip"
#COMPRESSION="bzip2"
#COMPRESSION="lzma"
#COMPRESSION="xz"
#COMPRESSION="lzop"
#COMPRESSION="lz4"

# COMPRESSION_OPTIONS
# Additional options for the compressor
#COMPRESSION_OPTIONS=()
[tejonidhi@arch ~]$

Last edited by Shashwat (2021-02-24 11:26:21)

Offline

#8 2021-02-24 11:40:31

Taijian
Member
Registered: 2016-04-10
Posts: 74

Re: [SOLVED] Plymouth with EFISTUB

Shashwat wrote:

there is no directory of /etc/efistub as you mentioned.

OK, different question then: How exactly have you implemented efistub booting? There are several ways to do this, after all. And could you give us your kernel command line?

Offline

#9 2021-02-24 11:46:29

progandy
Member
Registered: 2012-05-17
Posts: 5,190

Re: [SOLVED] Plymouth with EFISTUB

Taijian wrote:

OK, different question then: How exactly have you implemented efistub booting? There are several ways to do this, after all. And could you give us your kernel command line?

The commandline is in the efibootmgr output.

Boot0001* Arch	HD(1,MBR,0xdae44745,0x800,0xf9dcd)/File(\vmlinuz-linux)r.o.o.t.=.P.A.R.T.U.U.I.D.=.d.a.e.4.4.7.4.5.-.0.2. .r.w. .q.u.i.e.t. .s.p.l.a.s.h. .i.n.i.t.r.d.=.\.i.n.i.t.r.a.m.f.s.-.l.i.n.u.x...i.m.g.

==>
root=PARTUUID=dae44745-02 rw quiet splash initrd=\initramfs-linux.img

Last edited by progandy (2021-02-24 11:46:51)


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#10 2021-02-24 11:52:59

Taijian
Member
Registered: 2016-04-10
Posts: 74

Re: [SOLVED] Plymouth with EFISTUB

Hm, your mkinitcpio.conf and the efistub seem OK, only thing I can think of at this point is here:

Shashwat wrote:

Here is the output of plymouthd.conf

  GNU nano 5.5                                            /etc/plymouth/plymouthd.conf                                                      
# Distribution defaults. Changes to this file will get overwritten during
# upgrades.
[Daemon]
Theme=monoarch
ShowDelay=10
DeviceTimeout=8

10 Seconds is kind of a long delay? Does your system take more than 10 seconds to boot? Because if it does not, then that is your issue right there.
Could you try a ShowDelay of 0 or 1? (and regenerate initramfs)

Offline

#11 2021-02-24 14:40:56

freedomd1v3
Member
Registered: 2020-12-01
Posts: 6

Re: [SOLVED] Plymouth with EFISTUB

There are several more kernel parameters you need to set after

quiet splash

:

rd.udev.log_priority=3 vt.global_cursor_default=0

Also on my system with EFISTUB (I've different implementation: I use .efi image, but it doesn't really mater) and "plymouth" package (not "plymouth-git", I haven't tested it though) everything works perfectly, except I have an Intel integrated GPU.

Offline

#12 2021-02-25 06:51:02

Shashwat
Member
From: India
Registered: 2011-05-08
Posts: 101

Re: [SOLVED] Plymouth with EFISTUB

Oops! Seems like an issue with the implementation of EFISTUB. The way I had implemented is by manually copying initramfs-linux.img and vmlinuz-linux to /efi.

Now the changes that I was doing was limited to /boot and not to /efi thus, the changes made were never reflected during boot. Now I have copied the updated files to /efi and it is working.

Is there a better way to implement EFISTUB so as changes made are automatically implemented?

Here is the command I used to created EFISTUB

  433  sudo efibootmgr --disk /dev/sda --part 1 --create --label "Arch" --loader /vmlinuz-linux --unicode 'root=PARTUUID=dae44745-02 rw quiet splash initrd=\initramfs-linux.img' --verbose

Last edited by Shashwat (2021-02-25 06:52:26)

Offline

#13 2021-02-25 07:36:52

progandy
Member
Registered: 2012-05-17
Posts: 5,190

Re: [SOLVED] Plymouth with EFISTUB

Is there a better way to implement EFISTUB so as changes made are automatically implemented?

You can change your setup and mount the ESP to /boot instead of /efi or automate the copy.

https://wiki.archlinux.org/index.php/EF … _partition

Last edited by progandy (2021-02-25 07:37:15)


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#14 2021-02-25 07:43:32

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,661

Re: [SOLVED] Plymouth with EFISTUB

I did try to warn you about this but you likely didn't check the thread anymore after considering it solved.

Online

#15 2021-02-25 16:05:16

Shashwat
Member
From: India
Registered: 2011-05-08
Posts: 101

Re: [SOLVED] Plymouth with EFISTUB

V1del wrote:

I did try to warn you about this but you likely didn't check the thread anymore after considering it solved.

Yep. Thanks for pointing twice, now I have changed my efi mount to /boot.

Offline

Board footer

Powered by FluxBB