Bug with the boot logo for 18.04 to 21.04 Xubuntu or any Ubuntu Derivative.

Asked by Ajay Gumma

So i followed most of the stuff i read on the forums and finally had to post this.

I figured the Links were broken so we have to install a version of the kernel similar or the same as the one we are shown in cubic. which in my case was 5.4.0-91.

so here is how i proceeded :

1. loaded a .iso file. apt update.
2. apt install linux-headers-5.4.0-91 linux-headers-5.4.0-91-generic linux-image-5.4.0-91-generic

3.cd /usr/share/plymouth/theme
4. paste my plymouth theme in this folder which is just a plain image and it works since i did the change on a regular install of xubuntu i use now.

5.update-alternatives --install /usr/share/plymouth/themes/default.plymouth default.plymouth /usr/share/plymouth/themes/ambrosia-simple/simple-image.plymouth 200

#( i also tried 100, 150, 160)

update-alternatives --config default.plymouth

chose the plymouth theme i wanted.

6. update-initramfs -u -k all

i then went and chose the kernel which DID NOT SAY this will be used for bootstrapping. I chose the second one i installed.

after making the iso it gives me a bug everytime, it just goes to the Xubuntu Text logo.

so i did :

 apt remove plymouth-themes-xubuntu-logo

apt remove plymouth-themes-xubuntu-text

it then goes to the ubuntu text logo.

so i tried a apt remove plymouth-themes-ubuntu-text

and i also did apt autoremove. (PS i also tried without auto remove.)

Same error.
it would not load my plymouth theme.

and in the case i removed all themes except mine. it would flat out fail the install process itself. it would take me to a login screen.
it would display a bunch of errors instead of the plymouth theme. and finally dump me when i tried to install.

i'm kinda outta options so posting this as a last resort after exhausting all my options. Do try to help if possible. Thanks.

Question information

Language:
English Edit question
Status:
Solved
For:
Cubic Edit question
Assignee:
No assignee Edit question
Solved by:
Ajay Gumma
Solved:
Last query:
Last reply:
Revision history for this message
Cubic PPA (cubic-wizard) said :
#1

The issues are:
1) How to enable the graphical boot loader in the customized ISO?
2) How to customize Plymouth?

Revision history for this message
Cubic PPA (cubic-wizard) said :
#2

Ajay,

When you say "ubuntu text logo" what do you see?

Is this what you see?...

    * Try Xubuntu without installing
       Install Xubuntu
       OEM install (for manufacturers)
       Check disk for defects

Revision history for this message
Ajay Gumma (ag17india) said :
#3

What you are referring to is the Grub menu. That's not the issue here.

The issue is When we boot. We first get the laptop manufacturer logo. Then the grub menu then we get the logo for the OS itself which is the Plymouth logo.

When I say logo I mean the Boot logo for the OS.

Say Xubuntu or Ubuntu logo. Which is controlled by Plymouth.

Even when we don't edit the Plymouth themes the logo of the OS is not displayed. It switches to the Text based Xubuntu Logo instead of the spinner logo.

And if we add our own theme and set it as the default Plymouth theme. It will only display it after we install the custom distro. When we start the machine and try to install our custom distro it always shows the base distro's text logo.

It still displays the Base distro Boot logo in live mode.

Revision history for this message
Ajay Gumma (ag17india) said (last edit ):
#4

See let me make it simple to understand even further.

We have a xubuntu 18.04.5 iso. We have loaded it into cubic builder and made a new project.

Now we are on the chroot terminal. we installed the kernel. we then changed and copied the files we needed to change. say software we want to add or remove or ppas we want to remove or add or plymouth theme we want to add or remove.

now we are done and we click next. we are taken to the screen to remove pckgs.

Now we are on the screen to select kernel and we have the tabs for the kernel, preseed and grub menu there is a file tree on the side with the isolinux and other txt files.

we select the kernel we need. we select gzip or lz4 and we now have a .iso.

Now we create a usb with etcher or a VM with Virtual Box or Qemu.

We start the virtual machine or boot from USB.

Now we see the error :

"We shall see that the Xubuntu Logo-Text with the 4 dots or Main logo with a spinner circle appear instead of our plymouth theme logo and we are taken to the try or install screen. our logo is skipped or not applied."

We choose install and finish the regular install. we finish and restart.

We now see the logo we set as our boot logo for our distro. also the wifi is disabled in the installation and display is locked in 1024x768 resolution @ 76hz Refresh Rate. Some times we are sent to a vanilla build with all our changes disregarded.

This is the issue.

Revision history for this message
Cubic PPA (cubic-wizard) said (last edit ):
#5

------------------------------------------
(1) KERNEL
------------------------------------------

(1a)
The boot process for the live ISO uses the bootstrap kernel you selected on the Kernel tab in Cubic. This kernel may be different than the kernel you installed in Cubic's terminal page. Usually, this kernel doesn't matter much, but it is used while the live ISO is running. You might want to use a specific kernel, if you need certain drivers from that kernel while you are in the live environment.

(1b)
The boot process for the installed system always uses the kernel you installed (and configured as default) in Cubic's terminal page.

------------------------------------------
(2) ISO BOOT BRANDING
------------------------------------------

(2a)
If you have UEFI enabled, you will see the text options " Try Xubuntu without installing", etc.
The options shown are managed on Cubic's Boot tab.

(2b)
If you have legacy BIOS, you will see the original Xubuntu grub screen.
This branding/logo is managed on Cubic's Boot tab.
In Xubuntu, you see a keyboard icon and an accessibility icon at the bottom of the screen.

------------------------------------------
(3) PLYMOUTH
------------------------------------------

(3a)
On the live ISO, after the UEFI or BIOS screen, you should see the Plymouth screen.
You have to make sure Grub is configured to show the "splash".
Note that sometimes the boot process is so fast, you may not see the Plymouth screen.

(3b)
On an installed system, after the UEFI or BIOS screen, you should see the Plymouth screen.
You have to make sure Grub is configured to show the "splash".
Note that sometimes the boot process is so fast (especially on an installed system), you may not see the Plymouth screen.

===================================================================

------------------------------------------
PROBLEM
------------------------------------------
"We start the virtual machine or boot from USB. We shall see that the Xubuntu Logo-Text with the 4 dots or Main logo with a spinner circle appear instead of our plymouth theme logo and we are taken to the try or install screen. our logo is skipped or not applied."

------------------------------------------
SUGGESTION
------------------------------------------
If you are seeing the "4 dots" splash, you may be "falling back" to the text version of Plymouth.
This could mean there is an error in your Plymouth file.
You may have legacy BIOS turned on, instead of UEFI.

Also, take a look at comment #10 here: https://answers.launchpad.net/cubic/+question/692720
Also, take a look at comment #6 here: https://answers.launchpad.net/cubic/+question/691183
Tip: On Cubic's Boot tab, take a look at some of the branding files in the isolinux folder.

------------------------------------------
PROBLEM
------------------------------------------
"We choose install and finish the regular install. we finish and restart. We now see the logo we set as our boot logo for our distro. Also the wifi is disabled in the installation and display is locked in 1024x768 resolution @ 76hz Refresh Rate. Some times we are sent to a vanilla build with all our changes disregarded."

------------------------------------------
SUGGESTION
------------------------------------------
I don't know why you "sometimes" see a vanilla build. May be some of your configurations during customization are not correct.

Based on your description, it sounds like you have correctly already selected your Plymouth theme:

    # Make sure your plymouth theme <my_plymouth_theme> directory is copied to /usr/share/plymouth/themes

    $ cp -r <my_plymouth_theme_directory> /usr/share/plymouth/themes/

    # Add your theme to alternatives with the high priority:

    $ update-alternatives --install /usr/share/plymouth/themes/default.plymouth default.plymouth /usr/share/plymouth/themes <my_plymouth_theme_directory>/<my_plymouth_theme_file>.plymouth 200

    # Use the highest priority theme

    $ update-alternatives --auto default.plymouth

    # Remember to execute the following after setting the Plymouth theme:

    $ sudo update-initramfs -u

Also, note that Ubiquity overwrites your changes to the Grub configurations (/etc/default/grub) that you make in Cubic's Terminal page.
Take a look at this question for an explanation and workaround: https://answers.launchpad.net/cubic/+question/697019

See comment #8 here, on how this user set a different resolution: https://answers.launchpad.net/cubic/+question/692588

Revision history for this message
Ajay Gumma (ag17india) said (last edit ):
#6

Hi!,

The software is near flawless.

Just wanted to give you a update. it all worked out well in the end. THANKS A TON. LITERALLY A TON CUBIC PPA >>> YOU ROCK!

:)

i read all those articles that you had posted in the previous reply earlier. i Just needed to do a little bit more tinkering in the grub.cfg and other files to get it to work.

PS : i also remade the initrd file. and also the bootlogo cpio archive in isolinux. and now it works. all fine. :)

------------------------------------------

PROCESS : TO MODIFY A DISTRO USING CUBIC.

------------------------------------------

Hope this helps those who are trying hard to get things to work and facing issues. Dont give up. Keep at it.

RULE 1 : DO NOT USE SUDO IN THE CHROOT. You are already the root. its chroot - change root. i did it by force of habit a few times unintentionally. but just a heads up for anyone reading this.

also before you do anything at all : apt-get update or apt update. This is mandatory suffice to say.

------------------------------------------
Step 1 - PLYMOUTH
------------------------------------------

So a couple of pointers to anyone looking to make their own distro using cubic.

1. Make a plymouth theme or just replace the icons in /plymouth/themes/xubuntu-logo. either will work.
/// i suggest you make your own theme and do a apt-get remove plymouth-themes-xubuntu-logo to remove the folder all together. and set your own theme.

2.If you want to set your own plymouth theme like i did. There are themes you can customise available on the web.

place the theme in : usr/share/plymouth/themes/

and run :

update-alternatives --install /usr/share/plymouth/themes/default.plymouth default.plymouth /usr/share/plymouth/themes/ambrosia-simple/<name of file>.plymouth 200

This will set your theme as default as the xubuntu-logo theme has a priority of 150.

Now, run this :

update-alternatives --config default.plymouth

and press enter. It will show you that the theme you put in has been set as the default. Leave it as it is. That is what you want.

Now, Run :

update-initramfs -u

 /// only run this if you did not install any other kernels and just want to leave it on the default kernel which will used to bootstrap the new iso.

update-initramfs -u -k all

/// Run with -u -k all if you have other kernels installed.

NOTE :

/// i installed a new kernel using : apt install linux-headers-5.4.0-91-generic linux-image-5.4.0-91-generic, but for some reason everything went well but it would not install the wifi drivers and i would have to install them manually each time, so i stuck to the default bootstrap kernel. but it does work. You just have to use your mobile internet to download the wifi drivers and make them using the make command and it will work. But it isnt a must that you must install a new kernel or anything it will still work with the default one as it is. Ignore the broken symlinks for vmlinuz. Just ignore it.

anyways,

once you update-initramfs the ramdisk file will be updated to show the plymouth theme you wanted to show.
this will change the settings in the default.plymouth to reflect your theme.

Thats Step 1.

------------------------------------------
Step 2 - THEMES AND ICONS AND PIXMAPS
------------------------------------------

The path to the themes and icons are as follows :

Note : if you are using XFCE like me or a distro which uses it dont try to install incompatible themes. Make a VM and test out if a theme will work or not. Xubuntu, Mint-XFCE and others usually 18.04 or before support GTK 2 themes well and XFCE icon packs search for them. GTK-3/4 themes will work but there is a bug there where in the icon boxes and other such buttons get hidden.
The proper support for GTK 3/4 is from 21.04, i checked and they all work perfectly well in 21.04 or above.

If you want to install custom icons and themes for the look and feel : You can change that later in appearence or edit the gnome-schema files in chroot your call. i usually leave it in default and customise later but thats your choice.

/usr/share/icons

/usr/share/themes

/usr/share/pixmaps

//// Thats the icons that show up in the whisker panel. aka the start button or Super L key location we are used to with windows.

also remember to replace the distributor.ico files found in 16x16, 24x24, 48x48, 64x64, 96x96 and 128x128, 256x256 folders in :

/usr/share/themes/xfce-elementary/places : thats for Xubuntu. and for some other distros. those are trademarked.

Thats it. Step 2 done.

------------------------------------------
Step 3 - Applications.
------------------------------------------

you can use dpkg or install gdebi.

add a ppa and get started or download the .deb file and copy it to opt as prefer.

i prefer gdebi so install that first after doing apt update.

i.e

apt-get install gdebi

Now,

If you want to include optional software or just install it.

cd /opt

mkdir optionals

cd optionals

now

put the optional software in /opt/optionals/

or you can install the debs with gdebi and remove the packages with :

rm * inside the optionals folder.

you can also remove the optionals folder if you are done with the installs.

cd ..
rm optionals

Done.

Step 3. Done

------------------------------------------
Step 4 - Removing packages
------------------------------------------

Removing packages is simple :

apt-get remove <package name>
apt autoremove
/// this is the remove any residual content.

//useful to remove any documentation with trademarked logos and stuff such as xubuntu-docs etc.

------------------------------------------
Step 5- Removing The Xubuntu-splash screen on booting the iso. Basically the boot logo before the ubiquity installer.
------------------------------------------

There are 2 mechanisms of doing this :

1. Silencing : Just display the boot time commands and remove the splash all together.

On the config screen in cubic where you can select the kernel you have 3 tabs. Kernel ---- Preseed ----- Boot

select Boot :edit the grub and isolinux config files.

remove "quiet splash"

now if you remove splash it will revert to the text theme. Basically instead of the spinner theme it will show the words XUBUNTU xx.xx and the 4 dots.

if you remove the quiet then it will show the spinner or a blank black screen. (If you edited the isolinux and rebuilt the initrd like i did)

also do realise that in the chroot you can navigate to etc/defaults/

and edit grub.

you can set the boot time logo to be some other file there. remember to put the boot logo in /boot/grub for it to work.

https://www.youtube.com/watch?v=UDh0-lWBVdo&t=154s This might be helpful. Its a old video but it helps.

2. Rebuilding the Initrd and modifying Isolinux:

now the initrd file has the initial files which are temporarily loaded to ram and it has a preset plymouth folder which is having the stock themes which get loaded at boot time.

you can load the iso in cubic. Sudo thunar and copy the initrd file in Custom Boot / Casper /

i.e the Initrd.lz file

now lets say you made a folder on your desktop like i did called edit.

/home/<name of user>/Desktop/Edit/

this is where you copied initrd.lz

run this :

unmkinitramfs /home/<name of user>/Desktop/Edit/initrd.lz /home/<name of user>/Desktop/Edit/Extracts/

a new folder called Extracts will be made with the extracted content of the initrd file.

there will be 2 folders. EARLY and MAIN.

MAIN /usr/share/plymouth/themes/

has the default theme which keeps showing up. replace it with your modified plymouth theme. copy paste your plymouth to replace it.

now :

to rebuild the initrd file do the following :

taken from here : https://wiki.ubuntu.com/CustomizeLiveInitrd

make a new folder in Edit called NewRamdisk

find . | cpio --quiet --dereference -o -H newc | lzma -7 > /home/<name of user>/Desktop/Edit/Extracts/NewRamdisk/new-initrd.lz

run that command when you are inside the folder where you extracted your contents of the old initrd.

Now cd to NewRamdisk folder. you have a new initrd.lz file to replace the old one.

Now the isolinux mods :

we need to change back.jpg, splash.pcx and splash.png and bootlogo (CPIO archive)

now the other images are easy to replace. pcx files are editable in GIMP. they are 640x480 resolution you can also convert a jpg to a pcx via gimp if you want with the export option.

now to rebuilt the cpio archive :

first copy the bootlogo cpio archive to Edit2 : another folder.

mkdir Newbootlogo / this is where the new bootlogo archive will be.

Lets start :

run :

cpio -i < bootlogo

this will extract all the files inside bootlogo.

now, run :

cat bootlogo | cpio -t > /home/<name of user>/Desktop/Edit2 /list

modify the contents and then run :

cpio -o < /home/<name of user>/Desktop/Edit2/list> /home/<name of user>/Desktop/Edit2/Newbootlogo/bootlogo

I got the info on this step from :

https://askubuntu.com/questions/816296/how-to-change-isolinux-boot-splash

now we have the new boot logo cpio archive. replace either via cubic or Sudo thunar and copy paste and enjoy.

Thats it. Done.

If you follow this guide. and the CUBIC PPA posts properly i can assure you, you will have a custom distro within no time.

Cubic Emulator will also not work on other hardware. my bad. it ran sometime real sluggishly on my old intel chip but it flat out refused to run on my AMD A9-9420.

my laptop sucks no fault of Cubic.

Anyways please use lz format in cubic to make your isos it is really 1000x faster than gzip or other compression algos.

NO ONE HAS THE PATIENCE FOR THAT LONG WAIT TIME FOR COMPRESSION. GO WITH LZ. PERIOD. If you get errors Use gzip.

can happen sometimes that gzip will prevent the vanilla build error that i got where all your changes get reversed. but again its not cubics fault its just that my laptop sucks and it breaks down or has some weird interrupt when compiling due to the load on the nonsense processor i have.

Cubic is awesome.

i will be a active donor to this project if my ventures takes off. i wanted to make a custom distro for my internal use for my firm's data storage and processing and to use as my server default OS build.

Thanks a ton CUBIC.

BTW Pinguy and Bodhibuilder are also awesome projects that can be looked at along side cubic.

i prefer cubic. its chroot terminal is a lifesaver.

Thanks. Good day all, Hope this article helps someone.

Revision history for this message
Ajay Gumma (ag17india) said :
#7

also if you dont want the update version prompt when you are done with the install :

in cubic in the chroot :

apt-get remove update-notifier

apt autoremove

this will stop the annoying update prompts.

also set the version update and auto background updates to never if you hate the autoupdate stuff.

just saying i kinda hate autoupdates. so just leaving it there for anyone who feels the same.