Page MenuHomeLubuntu Development

Theme GRUB
Closed, ResolvedPublic

Description

Ubuntu MATE and Ubuntu Studio both have GRUB themes. It wouldn't be too complicated to have our own as well.

They should be there for both EFI and BIOS, because those are in two separate subdirectories.

Revisions and Commits

Event Timeline

tsimonq2 created this task.

Looks like MATE no longer installs the theme by default because it's problematic with some hardware it seems. Curious.

Whoops! My bad I thought you had claimed this task @wxl Sorry for the message on telegram. I had recieved the email notif and I was in a hurry so didn't read properly. My bad. Really sorry. I will complete the task asap. Really sorry again!

In T30#1180, @wxl wrote:

Looks like MATE no longer installs the theme by default because it's problematic with some hardware it seems. Curious.

Soo, should we theme grub or not?

Hey! I have a first draft of the theme ready. Where should I upload it? So that you guys can also test it?

BTW here's some stuff from the previous version of this bug:

Original description:

So our ISOLINUX boot screen (what pops up for BIOS) looks nice. Plain old GRUB screen for EFI. It seems that no flavors are really doing anything with theming on their images and I don't know why. I'm especially irked as to why MATE isn't using it as they have [grub2-themes-ubuntu-mate](https://github.com/nadrimajstor/grub2-themes-ubuntu-mate).

tsimonq2:

This needs some further investigation but assuming there are no complications, we should JFDI.

me:

I booted the Cosmic ISO in EFI mode and didn't see it. Perhaps they only use it on the installed system, since it's GRUB that boots all the installs.

tsimonq2:

You know I think a lot of people are not aware of the fact that there are two different bootloaders being used depending on the firmware interface used. That may simply be an oversight.

tsimonq2:

I just clarified with Martin Wimpress that no such thing has been done for EFI yet. He also mentioned flickerless boot, maybe we can look into that too.

Niiiiiiice. So that's in VirtualBox. I'd like to see what it's like on real hardware, various different graphic cards, etc.

To install, download the zip and unzip it somewhere then:

$ sudo mkdir -p /boot/grub/themes
$ sudo mv /path/to/lubuntu-default-theme /boot/grub/themes/
$ sudo edit /etc/default/grub # add the line "GRUB_THEME=/boot/grub/themes/lubuntu-default-theme/theme.txt" and maybe change "GRUB_TIMEOUT=5" so you can see it at boot
$ sudo update-grub
$ sudo shutdown -r now

tested on machine (specs), arch, bios|eufi, host (lubuntu)

hp dx6120mt (mini-tower, pentium 4 dual core, 3gb, winfast clone of nvidia 7600gt), x86, bios, 19.04

dell [optiplex] 755 (c2d-e6850, 5gb, amd/ati radeon rv516/x1300/x1550), x86_64, bios, 18.04
dell [optiplex] 780 (c2q-q9400, 8gb, amd/ati cedar radeon hd 5000/6000/7350/8350), x86_64, bios, 19.10
dell [optiplex] 960 (c2q-q9400, 8gb, amd/ati cedar radeon hd 5000/6000/7350/8350), x86_64, bios, 19.10

sony vaio ultrabook (i5-9400u, 4gb, intel haswell-ULT), x86_64, uefi, 19.10

photo of how it appears on hp dx6120 (x86) can be seen via https://photos.google.com/share/AF1QipP_2D6xblesems47ZC6hvdebMuDGNi6bAApA5ZJAOPXeXrJqxrjaaZjFwIw2bAmtg?key=V3ZhUWN2dlJSQnctaTh4bEtOSVZZREk4ajdnU0Jn

Thanks @guiverc ! Can you share the information about resolution of the hp dx6120 screen?

From what I can see all are set gfxmode=auto (in /boot/grub/grub.cfg) with #GRUB_GFXMODE= lines all commented out in /etc/default/grub which I believe to be defaults.

The hp dx6120 (x86) & d780 have 3:4 screens, d960 (16:9), d755 (16:10) & vaio (16:9), but in all tested systems the screens looked about the same - all showing 5 options with differences being width [of screen] & the scroll-bar (not showing at all for vaio having only lubuntu 19.10 installed, large-scroll-bar-indicator for d755 as 5/7 (ie. 5 shown of 7 total) fit, dx6120 is 5/many so it's indicator was much smaller. The dx6120 has 3 hdd's each with multiple test installs (thus it's small scroll bar to right of photo). In each case the screen looked neat, operated & was very appropriate for use.

My photo doesn't show the whole screen, I concentrated on menu-text so apologies if you wanted whole screen for full dimensions. *I didn't test on thinkpad t43; it has something I need to fix first it turns out*

Noice. Timeout bar working fine in each case? I think on screens with 3:4 ratio, it might be overlapping the central list. It kinda just remained at the bottom edge for me in a vm. here's the image

Do you not see the hummingbird logo next to your selected option, @guiverc ? I don't see it in the pic.

@wxl he doesn't see it coz I have added icon only for lubuntu and not for ubuntu. His entry is named as "Ubuntu" not "Lubuntu" as compared to your and my case. Should I add an icon for ubuntu also?

I didn't notice the humming bird logo on any sorry; looking back on it's there for vaio (uefi), but not on bios d755, d780 or dx6120 (I didn't look on d960 as I'm using it!), but Yes I do have multiple installs of *nix on all except vaio (d755 has ubuntu & opensuse leap; others have multiple versions of Ubuntu).

@guiverc whenever you are free and have a single lubuntu Installed bios system, check for the logo, it should be there.

Also, @kc2bez we will be waiting for your test results. No hurry tho, do it whenever you have time.

I made it so d755 doesn't see opensuse during update-grub (easy; it only seems to see it if btrfs partition is mounted) & re-ran update-grub and rebooted. Options are Ubuntu, Advanced.., Memtest, Memtest.., wNT/2000/xp alas no bird-logo is there

Hmmm. 🤔 I don't know why grub is creating the entry named "Ubuntu" for you when you have lubuntu installed.

From where did you run 'grub-update' ? I mean from opensuse or from lubuntu?

Lubuntu 18.04 owns the MBR so it's run in lubuntu at term (sudo update-grub)..

I'm playing on my [thinkpad] sl510 currently (single *buntu 18.04 installed, however it has Xubuntu's XFCE, Mate & ubuntu's gnome desktop installed, not just lubuntu's LXDE). It ended up showing only 3 lines of options, but called it Ubuntu so no bird-logo :(

I'm adding this here as unlikely of value, but will record it (didn't have time earlier). On the d780 box I booted 19.10, mounted the other *buntu partitions & renamed [mv] their /boot to /blah. I then sudo update-grub. The messages that followed showed only memtest images & nothing more, so I rebooted. The grub as booted did not include the bird-logo, offering Ubuntu, Advanced.. & two memtest options. I booted 19.10 & ran update-grub again to re-try, but this time it showed a message for 18.10 so maybe this test-idea was flawed. I mounted partitions & there are hanging-links in / pointing to /boot/.. I aim to continue tomorrow.

Single Installations from 19.04 on wards definitely make entry as "lubuntu". Does 18.04 makes entry as "ubuntu" @wxl ?

Hmmm. 🤔 I don't know why grub is creating the entry named "Ubuntu" for you when you have lubuntu installed.

Because 18.10+ uses Calamares as installer, which is, in my opinion, configured wrongly.

With Calamares, the variable GRUB_DISTRIBUTOR is hardcoded. When you upgrade 18.10 to 19.04, your Grub menuentry will still be "Lubuntu 18.10".

18.04 sets the variable in /etc/default/grub to

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

whereas the variable in 18.10 and newer is coming from https://phab.lubuntu.me/source/calamares-settings-ubuntu/browse/master/lubuntu/branding/lubuntu/branding.desc => bootloaderEntryName.

@wxl @tsimonq2 I guess, a new task is needed for this?

Ah, indeed. I didn't even think that would be a problem, huh.

Please file a separate task.

I agree, it looks great!

Please do replace the logo next to the entry though, it should be our logo

I did not know grub could look that good.

Updated the theme, everyone who's testing please check.

Tested on vaio (uefi) & looks good. (for some reason it's grub is reporting 19.04; a qa-test 19.10 install pre-release and I don't know why, but it's my only uefi box and I hadn't noticed this before).

Tested on d960 & d780 (both bios; dell optiplex) & looks good. Neither had the logo on the selector line, but I'd been unable to get the logo to appear on d780 even with only a single OS [19.10] appearing in grub (the d960 has 18.04 & 19.10, d780 has 19.04 & 19.10)

Additional info added here:
https://photos.app.goo.gl/xJyt4qrKEk5H6nF17 (close up of d780)
https://photos.app.goo.gl/zzAAsX1PsDApPtbM7 (d780, both displays)

On the photos (d780) the first Ubuntu was installed Apr-17 (ie. probably 19.04 checklist install), however the second listed as Ubuntu Eoan Ermine was a Lubuntu QA-test of 19.10 installed July-6-2019 ie. only days ago according to details in /var/log/installer/).

Note: I would have expected it to be recognized as Lubuntu; but I'll have added packages (nfs-common, aptitude, every wallpaper deb) that maybe cause it to be recognized as Ubuntu rather than Lubuntu; but I suspect it's not your issue; I haven't worked out why. Maybe it's time for a new zsync & install & look before I add wallpapers for all flavors..

@guiverc The viao showing up 19.04 is mostly because you must have updated from 19.04 to 19.10. same is the case with me.

About d960 and d780 not showing logos, it's probably due to the fact that they have multiple OS Installed and entries are named as "ubuntu 18.04" and "ubuntu 19.10" ; "ubuntu 19.04" and "Ubuntu 19.10" in your d960 and d780 respectively.

Any entry with "Lubuntu" in it's name should make the icon show up.

Also, could you please take photos of the theme on one of the bios systems using your phone and upload them here, I would really like to see how theme looks in bios as I have only a uefi system.

In little 640x480 VirtualBox, the big logo looks scrunched and the Hummingbird is a bit pixelated.

Yup! I have been noticing it since day 1. That's why I wanted to see how it looks on actual hardware in bios. What's the default resolution on actual hardware in bios?
Idk why the icon is looking pixelated, I have used the one with maximum pixel size 512x512. If smaller are used, they do not look as much detailed in larger screens.
About top logo being scrunched, it is because, it's a part of the background. There is nothing like "Title-logo" which could point to the logo file. So I had to paste it over earlier background.

@guiverc Update /etc/default/grub

/etc/default/grub
#GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_DISTRIBUTOR='Lubuntu'

and sudo update-grub.

With changes made as requested by @apt-ghetto - fyi: d780 & I stopped timer to find my phone

@The_LoudSpeaker as requested via irc

^ d780 with modified /etc/default/grub as suggested by apt-ghetto (forcing Lubuntu) causing bird-logo to appear
^ another from d780 which has 4:3 displays (Lubuntu 19.10)
the d780 only has Lubuntu installed but 19.10 & 19.04
however I didn't see a change; at one point 5 lines appeared in menu where as now it's 4
^ a d755 (dell optiplex) where Lubuntu 18.04 LTS owns grub with 16:10 display; no changes were made to this box so it's recognized as Ubuntu only.
(I haven't rebooted my main d960 which has 16:9 displays; if you want to see it let me know)

@guiverc Thanks! The d755 with 16:10 display looks decent. But there isn't much change on d780 with 4:3 displays. But it's okay. Nothing much I can do.

@kc2bez can you check if it has improved on your system?

Also, anyone has a 4k screen? I don't have so can't test but I wanted to see how the background stretches on it. Would need a uefi system on it.

@The_LoudSpeaker

1280x800 (16:10) j3400 ; host 18.04 LTS but I didn't change GRUB_DISTRIBUTOR line so no logo

@guiverc Thanks!
@wxl Imo this is the best we have, in terms of resolution.
I can add fonts if you want me to.

Sounds like we're done. @tsimonq2 can you find the right place to put this, please?

https://launchpad.net/~theloudspeaker/+archive/ubuntu/lubuntu-grub-theme-devel

Test it ploxx.

P.S.: Only amd64 systems as of now. Will build for all in the afternoon.

On hp dx6120 using Lubuntu 19.04 x86

where grub only recognized the system as Ubuntu. Screen 3:4 1280x1024
(I don't have 19.10 on a x86)

On d780 (dell optiplex 780) Lubuntu 19.10 where the bird displayed as it was recognized as Lubuntu (two display 1280x1024 3:4)


Installed on my primary d960 (dell optiplex 960) 19.10 x86_64 where grub recognizes my system only as Ubuntu (two displays 1920x1080 16:9)

On all it was perfectly readable (which won't be evident with my phone-photo-skillset)
I added PPA but it didn't find package, sorry I opted to wget & dpkg -i rather than work out why right now
-rw-rw-r-- 1 guiverc guiverc 162K Aug 10 17:30 lubuntu-grub-theme_1.0-1_amd64.deb
-rw-rw-r-- 1 guiverc guiverc 162K Aug 10 17:30 lubuntu-grub-theme_1.0-1_i386.deb

Added to Lubuntu 18.04 LTS x86_64 (d755) using 1680x1050 16:10 display, this box again only detects system as Ubuntu (

@guiverc thanks for testing.
About not finding package, I am not sure I understand what happened. But I just upgraded a vm from 19.04 to 19.10 and Installed the ppa and was able to use sudo apt install lubuntu-grub-theme.
Maybe you tried adding the ppa to a 19.04 system.
In dch. I have set eoan.

In the /etc/default/grub,
GRUB_TIMEOUT_STYLE is set to 'hidden' by default for new installations if only lubuntu is installed and not dual booted.
This makes grub to not show up in single installation systems. Thus, not showing the theme. It should be changed to menu or be unset. I don't know which task this comes under. Maybe cala settings? @wxl @kc2bez @hmollercl any inputs?

The default, and therefore expected, behaviour is, that the Grub menu is only shown with several installed operating systems. It would make some users angry, if they would see the Grub menu and wait 3, 5, 10 seconds until it boots. Why should there be a Grub menu, if you only have one operating system?

Changing the file /etc/default/grub will lead to other problems, because this file is not under our control. The Ubuntu maintainers of Grub can and will make changes and the user can select to keep the current (changed) version or take the version provided by the package. We cannot expect from the user, that the user is able to handle this (correctly).

I would not change the configuration file.

In my opinion, it should be on our ISO, so that users see it, when they boot the live-system. But I am not sure, if this should be part of the official Lubuntu installation (less is more, keep it simple and stupid) or as an optional package, that users can install, if they like it.

Ideally, there is also a manual page for this.
And it should be also promoted in the release notes/social media/etc.

That seems fair. Okay. So we do not change the grub config file.
To include the theme in live usb where do we put it?

I have an idea, Currently, the postinst file of the package modifies the /etc/default/grub but I will modify it tonight so that it creates a new script under /etc/default/grub.d/ and then test it. If it works, there will be no need to make any changes to rARTWORK or rDEFAULTSETTINGS. Just install the package like any other package. (Even during installation of lubuntu) and all will be done.

Is this task resolved or is there still something to do?

@apt-ghetto The theme still doesn't get installed by default. So we are waiting for that. I guess it's not yet in the seed.
I will try to add now.

Installed Lubuntu 20.04 (2020-01-04 ISO), (d755-8, c2d, 8gb, radeon hd 2400, BIOS) for T119
Sorry grub appeared as text, no pretty picture, no blue logo :(
(update as requested on iIRC)

<lubot> <The_LoudSpeaker> @guiverc https://phab.lubuntu.me/T30 also needs to be tested. I will personally test this tommorow when I reach hyd. But it doesn't harm to test more. Just check if the theme gets installed and selected automatically in a fresh install of focal.

Installed today's daily (2020-01-15) on hp dc7700 (c2d-e6320, 5gb, nvidia quadro nvs 290) (BIOS, full disk, internet)
rebooted; logged in (forgot to look at grub; was focused on finishing qa-test install)
sudo apt update; sudo apt full-upgrade; reboot

no grub showed by default; when I hit the space bar I got black text 'grub grub 2.04' with options
"Ubuntu, Advanced options for Ubuntu, Memory test, Memory.."
no pretty background, or logo

(sorry if this is not where you asked for update; ISOs weren't then building & so delay, also I forgot things... etc)

second install on sony vaio ultrabook (i5-9400u, 4gb, intel haswell-ULT) ; (UEFI, full disk, encryption, no internet), another QA-install
no grub showed on first boot, I finished QA-test & fully-upgraded as before
reboot & key to unlock (encryption), but didn't get grub to show (tried a few times; the encryption is possibly getting in the way)

installed (again) on sony vaoi ultrabook using ISO 2020-01-17; (UEFI, full disk, NO-encryption, internet)
grub did not show; a couple of reboots & I couldn't get grub to show.

@The_LoudSpeaker could you evaluate where we're at with this and what next steps we need to take, if any?

We have it in place. Only that grub isn't detecting it by default. Need to dig up the grub manual. We might need to change some stuff in cala settings or in the artwork depending on how grub works.

or https://photos.app.goo.gl/eTCX7aq8VPkKxbge8
(on d755-8 or old dell BIOS box, 3:4 1280x1024)

Looks great, however there is no selection highlight telling you which option you have selected.

If you scroll up & down, it's easy to forget where you are. This was a QA-test install of Lubuntu groovy today; also installed was a 20.04.1 image (which appears if you scroll down in grub). It was noticed first on my primary d960 box too.

(Also noted only: the last QA-install on box (prior to install alongside of Lubuntu *groovy*) was Kubuntu 20.04.1 which was also given a Lubuntu/LXQt logo to the left, on some boxes the two can appear on the same screen; I don't think this is easily worked around if I recall correctly)

Same effect on UEFI install ; looks great, but no indication of which is the current selected item

or https://photos.app.goo.gl/Np6gA8PBH7FPW3Zw9
It was *full disk groovy* qa-install, followed by install-alongside *groovy*

Just ran a quick test on my Dell Latitude 7280 Box - dual booting in UEFI + secure boot and all went well.

I can confirm @guiverc comment that it looks well but lacks a cursor to select the boot option.

Tested on ISO 20200813 - Acer [Aspire] E3-111-P60S

The new GRUB menu looks good and the selection bar on the right hand side is an improvement but the selection process is still a bit vague for the user in my opinion - I will test this further on another machine and report back.

Another test on ISO 20200813 - Dell [Inspiron] 3521

Further to my last comments - I think what we need is that in addition to the vertical scroll bar on the the right hand side - we need a horizontal bar (or possibly the cursor) to indicate to the user exactly what he is selecting from the menu.

I just did a QA install on hp dc7700, *replace partition* so remains a dual boot system (prior installs were 18.04.5 QA so this wasn't an issue before *groovy* install). This is problem for dual boots so I felt a bug was necessary and thus filed for QA purposes; I cannot tell which option is selected, on a dual boot.

https://bugs.launchpad.net/bugs/1892303 (same issue since Sun, Aug 2, 16:37 comment)

This task is listed as *low* priority, but it is a problem in my opinion. I'm very tempted to replace the Lubuntu grub theme on my own systems, as I use dual-boot, and thus have multiple entries, and not knowing which is highlighted is a *royal* pain.

kc2bez raised the priority of this task from Low to Unbreak Now!.Sep 1 2020, 11:38 AM
In T30#3667, @guiverc wrote:

This task is listed as *low* priority, but it is a problem in my opinion. I'm very tempted to replace the Lubuntu grub theme on my own systems, as I use dual-boot, and thus have multiple entries, and not knowing which is highlighted is a *royal* pain.

I have bumped the priority. We should get this fixed before release.

In T30#3675, @kc2bez wrote:

I have bumped the priority. We should get this fixed before release.

I have changed the selected item color to #f9fb06 which is a gold/yellow color to distinguish it from the #eff0f1 white color the other text has. This is now present in the latest daily. Please test if you are able.

Tested on the latest daily ISO 20201005 looked good to me.

Will do further tests on other machines.

QA-test install (install alongside) on sony vaio svp112a1cw (i5-9400u, 4gb, intel haswell-ULT)

looks good. Easy to recognize the selected option

(I'll only comment here further if issues are discovered elsewhere; including my main box which I suspect will have it when I next reboot)

Since this is in Groovy and has been tested I am resolving this task. Thanks everyone for all their work on this.