Thursday, September 11, 2014

Upgrading Shotwell to 0.18.1 in Ubuntu 12.04

Officially, Shotwell 0.18 is not supported on Ubuntu 12.04 and at first I was a little disappointed that the folks over at Yorba would drop support of an LTS that still has about three years of support to go before being end of life. But, looking at how the newer versions are built, I understand the reason: the newest version of Shotwell depends on packages that the Ubuntu team will not be making available for 12.04, meaning for those of us who aren't ready to jump into the next release (LTS or otherwise) are effectively "stuck" on older versions of many software packages.

With many applications, this is really not that big of a deal. In the case of Shotwell though, Flickr made a change that broke uploading with older versions of Shotwell. This was fixed in 0.18.1, meaning officially its either upgrade your 12.04 LTS release or deal with no Flickr uploading. Alternatively, you can install from source with my instructions below to get the current version of Shotwell running on Ubuntu 12.04 LTS.

For this to work, we will need four PPA's setup in order to install all the prerequisite packages that Shotwell will need when we compile it from source. All of the steps below (save downloading the source archive and uncompressing it) will be run from a terminal session (CTRL + ALT + T will bring up a terminal). First we will need to add the following four PPA's to your system:

sudo add-apt-repository ppa:ricotz/testing
sudo add-apt-repository ppa:gnome3-team/gnome3
sudo add-apt-repository ppa:vala-team/ppa
sudo add-apt-repository ppa:yorba/ppa

After the four PPAs have been added, run sudo apt-get update and then install the following packages:

sudo apt-get install valac gee-0.8 webkitgtk-3.0 desktop-file-utils libgconf2-dev libgexiv2-dev libglib2.0-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgudev-1.0-dev libexif-dev libgphoto2-2-dev libraw-dev librest-dev libsoup2.4-dev libxml2-dev libsqlite3-dev m4 libjson-glib-dev gnome-doc-utils

Many other packages will get upgraded at the same time from the PPAs we installed, let them update as well (we'll need them to compile Shotwell). The webkitgtk-3.0 package is quite large (close to 500MB) so this part will take a bit to download and install.

At his point, if you haven't done so already - download the source tarball and extract it. For me, I simply saved it in Downloads to make it easy. From our terminal change into the recently extracted folder: cd Downloads/shotwell-0.18.1

Next we will run the following commands in sequence, letting each previous command finish before entering the next one:
sudo ./configure
sudo make
sudo make install

Once this is done you will have Shotwell 0.18.1 on Ubuntu 12.04LTS. I have noticed this may cause some issues with the Ambiance Theme (it did for me), this was solved by upgrading the light-themes package. I used the Synaptic Package Manager to do the update (which showed that the light-themes package had an upgrade available) and after a reboot, things were back in place looking they way I would expect.


 Keep in mind, that this is an unsupported (by either the Shotwell developers or the Ubuntu developers) way to upgrade and may cause system instability.


Blessings,

Jesse