Upgrading Ubuntu 10.04, Step 3: 14.04 to Mate desktop

Our upgrade process is almost complete - the time-consuming steps of running do-release-upgrade twice was performed in previous steps (Step 1 and Step 2.

For this final step, we install the Mate desktop to replace Unity.

First things first: this test is running in a virtual machine (VM) instead of on real hardware. And advantage is that we can take a snapshot of the state of the VM so that if things go wrong, we can revert.

# virsh snapshot-create-as UbuntuMate UbuntuMate14.04 "Ubuntu 14.04 prior to installing Mate repos"
Domain snapshot UbuntuMate14.04 created
# virsh list --all --with-snapshot
Id Name State
----------------------------------------------------
- UbuntuMate shut off
# virsh snapshot-list UbuntuMate
Name Creation Time State
------------------------------------------------------------
UbuntuMate14.04 2015-05-05 15:18:09 -0700 shutoff

Okay, snapshot / backup made, here's what we're starting with:

Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 3.13.0-51-generic i686)

* Documentation: https://help.ubuntu.com/
$ uname -a
Linux mom-desktop 3.13.0-51-generic #84-Ubuntu SMP Wed Apr 15 12:11:46 UTC 2015 i686 athlon i686 GNU/Linux

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.2 LTS"

$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 14G 11G 2.2G 84% /



Ready to start. The Mate Desktop Wiki is our guide - they probably explain things better than I do. And a giant thank-you to Martin Wimpress for his development work and his guest spots on the following podcasts: Linux Luddites, MintCast, LAS Unplugged.

Let's add the repositories (repos) with the following two commands:

sudo apt-add-repository ppa:ubuntu-mate-dev/ppa
Package repository for Ubuntu MATE.

Packages living here are either required to build the Ubuntu MATE .iso mages or provide the meta packages.
More info: https://launchpad.net/~ubuntu-mate-dev/+archive/ubuntu/ppa
Press [ENTER] to continue or ctrl-c to cancel adding it

gpg: keyring `/tmp/tmpqt8oerjp/secring.gpg' created
gpg: keyring `/tmp/tmpqt8oerjp/pubring.gpg' created
gpg: requesting key 162506E7 from hkp server keyserver.ubuntu.com
gpg: /tmp/tmpqt8oerjp/trustdb.gpg: trustdb created
gpg: key 162506E7: public key "Launchpad PPA for Ubuntu MATE Remix Developers" imported
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
OK

One done, one to go:

sudo apt-add-repository ppa:ubuntu-mate-dev/trusty-mate
These MATE 1.8.1 packages for *only* Ubuntu Trusty, they have been side ported from Debian.

In order to correctly install and configure MATE 1.8.1 on Ubuntu Trusty you will also need to add the following PPA:
  * ppa:ubuntu-mate-dev/ppa

We've already done that command recommended in the last line above!

Open a terminal complete the following steps to enable the appropriate PPAs and install MATE 1.8.1 on Ubuntu Trusty.
    sudo apt-add-repository ppa:ubuntu-mate-dev/ppa
    sudo apt-add-repository ppa:ubuntu-mate-dev/trusty-mate

Again, we've already run the first command, and we're running that second command right now. (Odd that the output of a command is to... run that command. Huh.)

To continue with the output of the last command:

    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get install --no-install-recommends ubuntu-mate-core ubuntu-mate-desktop
More info: https://launchpad.net/~ubuntu-mate-dev/+archive/ubuntu/trusty-mate
Press [ENTER] to continue or ctrl-c to cancel adding it

gpg: keyring `/tmp/tmpdh4otxcu/secring.gpg' created
gpg: keyring `/tmp/tmpdh4otxcu/pubring.gpg' created
gpg: requesting key 162506E7 from hkp server keyserver.ubuntu.com
gpg: /tmp/tmpdh4otxcu/trustdb.gpg: trustdb created
gpg: key 162506E7: public key "Launchpad PPA for Ubuntu MATE Remix Developers" imported

gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
OK


As per the advice above, an update of the repo cache and an upgrade of the software is recommended next; we'll do that momentarily with sudo apt-get update ; sudo apt-get upgrade.

Finally, do we want a vanilla Mate desktop, or an Ubuntu-branded one?

From the Mate Wiki again:

Ubuntu MATE is a more comprehensive option that offers a slightly tweaked layout, configuration, and themes to integrate into Ubuntu in a more seamless fashion. This will install the complete MATE Desktop Environment as well as LightDM and numerous other applications to provide a full and well rounded desktop.

The output from the last command above gives instruction to install the Ubuntu version via sudo apt-get install --no-install-recommends ubuntu-mate-core ubuntu-mate-desktop.

I think it best to choose the Ubuntu Mate version as recommended.

Once it's been screen-shot-captured, perhaps I'll roll-back the VM snapshot and install the Vanilla Version to screen shot it too, for comparison.

So, per last output pasted above, as always, running as root (saves us tying "sudo" a bunch of times, and providing passwords frequently) :

# apt-get update
# apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
deja-dup linux-generic linux-generic-pae linux-headers-generic
linux-headers-generic-pae linux-image-generic linux-image-generic-pae
The following packages will be upgraded:
compiz compiz-core compiz-gnome compiz-plugins compiz-plugins-default
compizconfig-backend-gconf deja-dup-backend-gvfs gtk2-engines-pixbuf
libcompizconfig0 libdecoration0 libgail-common libgail18 libgtk2.0-0
libgtk2.0-bin libgtk2.0-common libvte-common libvte9 linux-libc-dev ppp
python-vte
20 upgraded, 0 newly installed, 0 to remove and 7 not upgraded.
Need to get 14.5 MB of archives.
After this operation, 24.4 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

(gconftool-2:4963): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
Unable to autolaunch a dbus-daemon without a $DISPLAY for X11

Uh-oh, looks like running via SSH caused a minor problem, but I doubt it's a game-stopper.

# apt-get install --no-install-recommends ubuntu-mate-core ubuntu-mate-desktop
Need to get 114 MB of archives.
After this operation, 401 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

That took a rather long time, but at the end:

# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 14G 12G 1.6G 88% /

We can clean some stuff up:

# apt-get clean
root@mom-desktop:~# apt-get autoclean
Reading package lists... Done
Building dependency tree
Reading state information... Done
root@mom-desktop:~# apt-get autoremove
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 7 not upgraded.
root@mom-desktop:~# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 14G 12G 1.8G 87% /

Really, we want to clean out Unity to save a bunch of space.

$ sudo apt-get remove unity
[sudo] password for mom:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
gstreamer1.0-plugins-base-apps liboxideqt-qmlplugin liboxideqtcore0 liboxideqtquick0 libqt5webkit5-qmlwebkitplugin libreoffice-presentation-minimizer libufe-xidgetter0 libunity-webapps0 oxideqt-codecs qtdeclarative5-accounts-plugin qtdeclarative5-dialogs-plugin qtdeclarative5-privatewidgets-plugin qtdeclarative5-ubuntu-ui-extras-browser-plugin qtdeclarative5-ubuntu-ui-extras-browser-plugin-assets ubuntu-settings unity-webapps-common unity-webapps-qml unity-webapps-service webaccounts-extension-common webapp-container webbrowser-app xul-ext-unity xul-ext-webaccounts xul-ext-websites-integration
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
ubuntu-desktop unity unity-2d
0 upgraded, 0 newly installed, 3 to remove and 7 not upgraded.
After this operation, 6,667 kB disk space will be freed.
Do you want to continue? [Y/n]

After a restart:

# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 14G 12G 1.8G 87% /

But there's more Unity cruft sitting around, so try to get rid of all of it:

# apt-get remove unity-*
0 upgraded, 0 newly installed, 96 to remove and 6 not upgraded.
After this operation, 50.6 MB disk space will be freed.
Do you want to continue? [Y/n]

I cut the packaage list out from above (all 96 of them).

Rebooting brought up a warning about corrupted graphics:
Ubuntu-10.04-to-12.05-removed-Unity-twice-borked-graphics.png

I chose to run in reduced graphics mode and got the nice Mate login screen:
Ubuntu-10.04-to-12.05-Mate-fixed-login-screen.png

Below is our new, lovely Mate desktop on Ubuntu 14.04
Ubuntu-10.04-to-12.05-Mate-at-last.png