How to upgrade to the 3.16 LTS Utopic kernel and graphics for Ubuntu 14.04

Long-term Support for Ubuntu 14.04 also means that you can get the latest stable kernel and graphics as well.  Importantly, these remain supported by the kernel and graphics teams and you’ll receive a regular supply of updates for 9 months.

Remember – you’ll need to update just before 9 months to get the next LTS kernel and graphics before support is officially withdrawn.  If this sounds like too much hassle – best stick with the 3.13 kernel and graphics – they remain supported for 5 years!

The community wiki page describes how to install the latest kernel and graphics – but you need to be very careful.

For me the instructions meant that I could have destroyed my wine + pipelight installation but more importantly, bcmwl wireless could have been left in a broken state because the bcmwl package has not yet been backported.

The wiki page stated that to upgrade the kernel and graphics you use the following:

sudo apt-get install --install-recommends linux-generic-lts-utopic xserver-xorg-lts-utopic libgl1-mesa-glx-lts-utopic

Remember the magic “-s” parameter; with “-s” added you can simulate what would happen when you run an install command – for me, it revealed that amongst the packages it would have removed were vital wine & QT5 packages:

sudo apt-get -s install --install-recommends linux-generic-lts-utopic xserver-xorg-lts-utopic libgl1-mesa-glx-lts-utopic | more

N.B. press q to exit the paused display

Instead I preserved my wine & QT5 installation through this simulated command:

sudo apt-get -s install --install-recommends linux-generic-lts-utopic xserver-xorg-lts-utopic libqt5gui5 libgles1-mesa-lts-utopic libgles2-mesa-lts-utopic libgl1-mesa-glx-lts-utopic libgl1-mesa-glx-lts-utopic:i386 libglapi-mesa-lts-utopic:i386 libegl1-mesa-drivers-lts-utopic | more

Try the above and examine which packages would be removed. Once you are happy – go ahead and remove the “-s” after the apt-get.

What the above didn’t forsee thought was the following error:

Examining /etc/kernel/header_postinst.d.
run-parts: executing /etc/kernel/header_postinst.d/dkms 3.16.0-30-generic /boot/vmlinuz-3.16.0-30-generic
Error! Could not locate dkms.conf file.
File: does not exist.
Error! Bad return status for module build on kernel: 3.16.0-30-generic (x86_64)
Consult /var/lib/dkms/bcmwl/ for more information.

Until the ubuntu devs backport the utopic bcmwl package you can safely download this package yourself and install it (64bit Ubuntu):

sudo dpkg -i bcmwl-kernel-source_6.30.223.248+bdcom-0ubuntu1_amd64.deb

If you are still using 32bit Ubuntu (why??) then download the 32bit package

sudo dpkg -i