Tuesday, November 6, 2012

How to change splash screen resolution after installing proprietary Nvidia drivers on Ubuntu

Since Maverick Meerkat or so, after you install the proprietary Nvidia driver on Ubuntu and its flavors and derivatives (Kubuntu, Xubuntu, Linux Mint, etc.), the splash screen resolution gets too small, and you stop seeing the nice splash screen that worked with open drivers, and see some broken text instead while the system is loading. This is not critical, of course, the system normally boots anyway, and after it's loaded, the resolution is the one that has to be. However, having an ugly splash screen is bad, and here is how to fix this.

1) Determine the resolution Grub can support. It's not necessarily the optimal one for you system (for example, my optimal resolution is 1440x900, but I found out Grub didn't support it). 

To do so, reboot, on reboot press "c" key on your keyboard to enter grub console.
In the grub console type:

vbeinfo

The command will list all the resolutions supported by Grub.
Note the closest (to your native one) supported resolution from the list (for my 1440x900 screen, the closest one was 1280x1024x32 - yes, it suggests it's longer but it's what I used and was happy with the result; x32 stays for color depth).

2) Next step is to edit the following file

/etc/default/grub

(Run kdesu kate /etc/default/grub or gksu gedit /etc/default/grub to edit the file with the necessary superuser permissions; change kate/gedit with the text editor you prefer, and kdesu/gksu are for KDE and Gnome/Unity/Xfce, respectively).

In the file, locate the string #GRUB_GFXMODE=640x480. Yes, it's commented (#). Leave it so. Put the following line after #GRUB_GFXMODE: 
GRUB_GFXPAYLOAD_LINUX=1280x1024x32 // << the resolution may differ! (see step 1)

Then run:

echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
sudo update-grub2
sudo update-initramfs -u

Reboot. Check the splash screen - it should be nice now.

No comments:

Post a Comment