Ubuntu – How to upgrade from xserver-xorg-lts-saucy to xserver-xorg-lts-trusty

12.04aptupgradexorg

I'm running Ubuntu 12.04 (Precise Pangolin), and have upgraded xorg by installing xserver-xorg-lts-saucy. I'd like to upgrade now to xserver-xorg-lts-trusty, but when I try apt-get install xserver-xorg-lts-trusty I get a whole lot of unmet dependencies:

 % sudo apt-get install xserver-xorg-lts-trusty
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 xserver-xorg-lts-trusty : Depends: xserver-xorg-core-lts-trusty (>= 2:1.11) but it is not going to be installed
                           Depends: xserver-xorg-video-all-lts-trusty but it is not going to be installed or
                                    xorg-driver-video
                           Depends: xserver-xorg-input-all-lts-trusty but it is not going to be installed or
                                    xorg-driver-input
                           Depends: xserver-xorg-input-evdev-lts-trusty but it is not going to be installed
                           Recommends: libgl1-mesa-dri-lts-trusty but it is not going to be installed
                           Recommends: libgl1-mesa-glx-lts-trusty but it is not going to be installed
                           Recommends: xserver-xorg-input-all-lts-trusty but it is not going to be installed
                           Recommends: xserver-xorg-video-all-lts-trusty but it is not going to be installed
                           Recommends: x11-xserver-utils-lts-trusty but it is not going to be installed
                           Conflicts: libgl1-mesa-glx (>= 0~)
                           Conflicts: libgl1-mesa-glx:i386 (>= 0~)
                           Conflicts: libglapi-mesa (>= 0~)
                           Conflicts: libglapi-mesa:i386 (>= 0~)
E: Unable to correct problems, you have held broken packages.

I have used apt-mark showhold to see held packages, and there are none. Additionally I have tried to use aptitude to perform the upgrade instead of apt-get, but none of the suggested methods to resolve the conflicts looked sane to me.

What is the recommended way to upgrade from xserver-xorg-lts-saucy to xserver-xorg-lts-trusty?

Best Answer

Actually the correct way is to first fix the broken packages, so that you can remove it properly, before you install the new package.

sudo apt-get install -f

once it has installed all the missing dependencies, then run:

sudo apt-get dist-upgrade

when it finishes, at this point you have two choices, manually remove the package you are having trouble with, or doing the full release upgrade, which is the recommended method.

so you can either go:

sudo apt-get remove xserver-xorg-lts-saucy
sudo apt-get install xserver-xorg-lts-trusty

or you can do:

sudo do-release-upgrade

In the worst case scenario, if you already did upgrade to 14.04, but the xserver are still stuck on the old release for whatever reason, you can do this crazy move to remove all xserver files, so that you can re-install from the repositories.

sudo apt-get remove xserver*

doing that will also remove your Unity or Gnome, or whatever desktop environment you have installed, so you'll have to reinstall your choice of desktop environment, and that will automatically get you the missing xserver packages.

if you like the unity desktop do:

sudo apt-get install ubuntu-desktop

or if you prefer the gnome desktop do:

sudo apt-get install ubuntu-gnome-deskop