Laptop vendor logo displayed twice on boot overriding custom splash animation

I have an ASUS laptop in which I recently installed Manjaro. I am trying to get a custom boot splash to display, but instead I get the following sequence:

ASUS logo > splash animation (brief) > ASUS logo > login screen.

Is there a way to only show my custom splash animation on boot?
Otherwise, is there a way to at least hide the second appearance of the ASUS logo, in favour of my splash animation?

The following is my current setup:

# GRUB boot loader configuration

GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet splash resume=UUID=a03889c2-ed53-4e97-b5ff-1420c3fc0a06 udev.log_priority=3 vt.global_cursor_default=1"

# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"

# Uncomment to enable booting from LUKS encrypted devices

# Set to 'countdown' or 'menu' to change timeout behavior,
# press ESC key to display menu.

# Uncomment to use basic console

# Uncomment to disable graphical terminal

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command 'videoinfo'

# Uncomment to allow the kernel use the same resolution used by grub

# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"

# Uncomment to disable generation of recovery mode menu entries

# Uncomment and set to the desired menu colors.  Used by normal and wallpaper
# modes only.  Entries specified as foreground/background.

# Uncomment one of them for the gfx desired, a image background or a gfxtheme

# Uncomment to get a beep at GRUB start
#GRUB_INIT_TUNE="480 440 1"

# Uncomment to make GRUB remember the last selection. This requires
# setting 'GRUB_DEFAULT=saved' above.

# Uncomment to disable submenus in boot menu

# Uncomment this option to enable os-prober execution in the grub-mkconfig command

# Uncomment to ensure that the root filesystem is mounted read-only so that
# systemd-fsck can run the check automatically. We use 'fsck' by default, which
# needs 'rw' as boot parameter, to avoid delay in boot-time. 'fsck' needs to be
# removed from 'mkinitcpio.conf' to make 'systemd-fsck' work.
# See also Arch-Wiki:
# vim:set ft=sh
# 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=(usbhid xhci_hcd)

# 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

# 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.

# 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 modconf block filesystems fsck)
##   This setup will generate a 'full' image which supports most systems.
##   No autodetection is done.
#    HOOKS=(base udev modconf block filesystems fsck)
##   This setup assembles a mdadm array with an encrypted root file system.
##   Note: See 'mkinitcpio -H mdadm_udev' for more information on RAID devices.
#    HOOKS=(base udev modconf keyboard keymap consolefont block mdadm_udev encrypt filesystems fsck)
##   This setup loads an lvm2 volume group.
#    HOOKS=(base udev modconf block lvm2 filesystems fsck)
##   NOTE: If you have /usr on a separate partition, you MUST include the
#    usr and fsck hooks.
HOOKS="base udev plymouth autodetect modconf block keyboard keymap consolefont resume filesystems fsck"

# Use this to compress the initramfs image. By default, gzip compression
# is used. Use 'cat' to create an uncompressed image.

# Additional options for the compressor

# Decompress kernel modules during initramfs creation.
# Enable to speedup boot process, disable to save RAM
# during early userspace. Switch (yes/no).

Also, you may see some bad practices in the configuration files above because I tried to solve this by blindly following online tutorials. If that is the case, please, let me know.


The suggestion above got rid of the second ASUS logo appearance, but the splash animation remains incomplete and a black screen is displayed instead.

1 Like

ASUS: it depends on BIOS setup - afaik (ASUS TUF Gaming B550)

You could try adding the kernel parameter bgrt_disable.

You could try adding the kernel parameter bgrt_disable.

Pardon the ignorance; Where should I include that?

Is there a setting I should look into in particular?

It would go to the file /etc/defaut/grub and add it to the entry GRUB_CMDLINE_LINUX_DEFAULT.

Afterwards, update grub with update-grub.

1 Like

Ok, so I added it to the end of GRUB_CMDLINE_LINUX_DEFAULT, and now I get the following sequence:
ASUS logo > black screen > splash animation (brief) > black screen (brief) > login screen

This is definitely progress. I’m just not sure whether the black screen is caused by the animation itself or if it’s the plymouth configuration.
Please choose the manual for your laptop…

Here it is:

very good, however I really am
responsible for assisted thinking?
Enter BIOS and select “Advanced Mode”
search for something like “logo” (F9)???ß

1 Like

Not at all, my friend. I thought you were providing me with a solution but I now see you were suggesting to have a look at the BIOS settings and see if there was something I could do from there.
I can confirm that the first thing I did before even opening this thread was checking my BIOS. However, no such setting exists. I found that there was once an ASUS-distributed software for Windows to personalise the boot logo, but I cannot find it anywhere at the moment; plus, I don’t have Windows.

Anyway, the first boot logo is not much of a problem. What bothers me is that the ASUS logo is now followed by a black screen for 5-6 seconds (after implementing @mithrial’s suggestion), 1 second of incomplete splash animation, and another couple of seconds of black screen before the login screen is shown.

At this point I’m starting to think that this is a Manjaro/plymouth problem because the same happens when switching to a different animation. On the other hand, when I was using Ubuntu, I would get the ASUS logo with the Ubuntu loading splash animation under it. This does not happen at all with Manjaro.

It’s a bummer because I really like this distro. I might just revert to having no splash animation at all and call it a day as 3 days of troubleshooting have led me nowhere - as you would expect from the average Linux experience :laughing:.

1 Like

I am The Joker… :innocent:.
May be time to get rid of “plymouth” – how to is already shown in some forum postings.
No plymouth – only logo I hope .

Wonder if that helps:
add nomodeset in GRUB command line starting: quiet splash

1 Like

I’m just writing this for anyone else which might encounter the same issue.

The problem had nothing to do with the plymouth package. I am still not sure if it was the plymouth configuration or the Manjaro configuration. However, I hopped to a different distro, also using plymouth (i.e. Fedora), and the animation there works like charm.

I will leave below my current configuration, but keep in mind that I am not running Manjaro anymore.

# Administrator customisations go in this file
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_CMDLINE_LINUX="rd.driver.blacklist=nouveau modprobe.blacklist=nouveau rhgb quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau"

EDIT: Just to be clear, the Fedora distribution I am currently running uses Gnome, differently from my previous Manjaro setup which relied on KDE.

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.