Ubuntu Unity freezes after login when upgraded from Ubuntu 13.10 to 14.04

I just upgraded from Ubuntu 13.10 to Ubuntu 14.04. However, after I had entered the username and password the computer froze. Unity just appears to hang. I fixed this by reinstalling Unity.

Note – this problem might have be caused by the upgrade process. I’m not sure it was related to this error message:

(gtk-update-icon-cache:19911): GdkPixbuf-WARNING **: Cannot open pixbuf loader module file '/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders.cache': No such file or directory

This likely means that your installation is broken.
Try running the command
  gdk-pixbuf-query-loaders > /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders.cache to make things work again for the time being.

I tried running gdk-pixbuf-query-loaders > /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders.cache but this didn’t seem to fix the problem.

Step 1 – Get into the terminal
You enter the terminal by holding down ctrl-atl and pressing f2. You can actually press any of the f (function) key and you get a new terminal.

Step 2 – Reinstall Unity and the Ubuntu-Desktop

sudo apt-get update
sudo apt-get install --reinstall ubuntu-desktop
sudo apt-get install unity
sudo reboot

Several people had added additional steps that worked for them. So, please read the comments. I considered modifying the original post but there are several variations on the theme.

This post is getting quite a lot of views. Could you please add a comment if this solution worked or didn’t work for you? It would help me improve the post. Thanks.

How to make Teamviewer work on Ubuntu 13.10 – install lib32asound2?

I had a problem installing Teamviewer on Ubuntu 13.10. This is an awesome tool for helping to remote desktop into other Linux or Windows machines. I downloaded the .deb file but when installing it complained:

unresolvable dependency: lib32asound2

I did some research and some various solutions including installing the package which has been removed from Ubuntu:

The lib32asound2 package is deleted from saucy: https://launchpad.net/ubuntu/saucy/amd64/lib32asound2
You can download lib32asound2 from: https://launchpad.net/ubuntu/saucy/amd64/lib32asound2/1.0.25-4ubuntu4
Direct link for a .deb download for lib32asound2: http://launchpadlibrarian.net/139194357/lib32asound2_1.0.25-4ubuntu4_amd64.deb

So, I downloaded the .deb for this package but got even more dependency errors including:

dpkg: error processing lib32asound2_1.0.25-4ubuntu4_amd64.deb (–install):
cannot access archive: No such file or directory
Errors were encountered while processing:
lib32asound2_1.0.25-4ubuntu4_amd64.deb

The Solution:
The solution for me was to install a different Teamviewer installer:

http://download.teamviewer.com/download/teamviewer_linux.deb

God knows why this teamviewer.deb worked for me but it did.

How to install Postgres 9.3 with headers on Ubuntu 13.10

If you need to install Postgres 9.3 with development headers (i.e. so that you can compile extensions to Postgres) then hopefully this post can help you. Firstly – don’t use the official Postgres PPA because it only provides binaries and not sources.

So, use Chris-Les Postgress PPA found here:

https://launchpad.net/~chris-lea/+archive/postgresql-9.3

sudo add-apt-repository ppa:chris-lea/postgresql-9.3
sudo apt-get update
sudo apt-get install postgresql-server-dev-9.3

I hope this help someone.

Weird ssl_error_rx_record_too_long error after upgrading from Ubuntu 13.04 to Ubuntu 13.10

I upgrade one of our servers from Ubuntu 13.04 to Ubuntu 13.10 and immediately one of the apache sites went wrong. It is was an odd problem because the Apache configuration had not changed and there was nothing unusual about it. I was getting and SSL error like so:

ssl_error_rx_record_too_long error

It turns out that all I needed to do was rename the configuration file (adding .conf). I.e.

/etc/apache2/sites-available/old_name

to

/etc/apache2/sites-available/old_name.conf

How strange!

a2ensite ERROR: Site www.example.com does not exist! Ubuntu 13.10

On our Ubuntu 13.10 server, I had created an apache configuration file for a virtual host however, I could not enable it using a2ensite. The file was here:

/etc/apache2/sites-available/www.example.com

I tried to enable it:

a2ensite www.example.com

However, the command complained that ERROR: Site www.example.com does not exist! The files clearly exists. It turns out the this command only works if the file ends with .conf. So

mv www.example.com www.example.com.conf
a2ensite www.example.com.conf

Voila it now work. Why or why doesn’t the developer give useful error messages. For example they should have write. Error – the files doesn’t have a .conf on the end!

Package ‘ia32-libs-gtk’ has no installation candidate Ubuntu 13.10

The package ‘ia32-libs-gtk’ has been removed in Ubuntu 13.10 (I have no idea why). When you try and install it you get the error “Package ‘ia32-libs-gtk’ has no installation candidate”. It seems that most people need this ia32-libs-gtk for installing or running Adobe Air. I have found the solution is:

sudo apt-get install libgtk2.0-0:i386 libnss3-1d:i386 libnspr4-0d:i386 lib32nss-mdns libxml2:i386 libxslt1.1:i386

This got Adobe Air working on my computer but it would be good to get feedback from other people – so please leave a comment if it works for you.

How to install Balsamiq Mockups on Ubuntu 13.10

I have made a new set of instructions for Installing Balsamiq Mockups on Ubuntu 13.10 because it it is slightly different from installing it on Ubuntu 13.04.

Step 1 – Download Adobe Airhttp://airdownload.adobe.com/air/lin/download/latest/AdobeAIRInstaller.bin.

wget http://airdownload.adobe.com/air/lin/download/latest/AdobeAIRInstaller.bin

Step 2: Make the installer excutable.

chmod +x AdobeAIRInstaller.bin

Step 3: Try running the installer.

sudo ./AdobeAIRInstaller.bin

Step 4: If your computer is 64bit then you will get this error:

"error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory"  

So, you will need to install the 32bit libs:

sudo apt-get install libgtk2.0-0:i386 libnss3-1d:i386 libnspr4-0d:i386 lib32nss-mdns libxml2:i386 libxslt1.1:i386

Step 5: Try running the installer again

sudo ./AdobeAIRInstaller.bin

Step 6: You might get this error:

Sorry, an error has occurred. Adobe AIR could not be installed. Install either Gnome Keyring or KDE KWallet before installing Adobe AIR.

To fix this run the following command:

locate libgnome-keyring.so

I got (but you might get something different).

/usr/lib/x86_64-linux-gnu/libgnome-keyring.so.0
/usr/lib/x86_64-linux-gnu/libgnome-keyring.so.0.2.0

You will need to pass reference to these libs when running the installer.

sudo LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu ./AdobeAIRInstaller.bin

If this works for you then goto Step 7. If this doesn’t work then you could make symbolic links to the libs. For 64bit:

sudo ln -s /usr/lib/x86_64-linux-gnu/libgnome-keyring.so.0 /usr/lib/libgnome-keyring.so.0
sudo ln -s /usr/lib/x86_64-linux-gnu/libgnome-keyring.so.0.2.0 /usr/lib/libgnome-keyring.so.0.2.0

For 32 bit:

sudo ln -s /usr/lib/i386-linux-gnu/libgnome-keyring.so.0 /usr/lib/libgnome-keyring.so.0
sudo ln -s /usr/lib/i386-linux-gnu/libgnome-keyring.so.0.2.0 /usr/lib/libgnome-keyring.so.0.2.0

Finally – try running the installer again.

sudo ./AdobeAIRInstaller.bin

Then remove the symbolic links:

sudo rm /usr/lib/libgnome-keyring.so.0
sudo rm /usr/lib/libgnome-keyring.so.0.2.0

Step 7 – Download Balsamiq

wget http://builds.balsamiq.com/b/mockups-desktop/MockupsForDesktop64bit.deb

Step 8 – Install Balasmiq

sudo dpkg -i MockupsForDesktop64bit.deb

Step 9 – Make a cup of tea and some mockups