Wednesday, March 13, 2013

Spotify Linux woes


I recently (okay, almost 2 months ago) updated Spotify on my Ubuntu Linux machine, and the new version is having lots of problems:
  • Dragging from search results into a playlist crashes spotify

  • Dragging items to the top or bottom of a playlist crashes Spotify

  • Artist radio isn't working (or it's taking so long to load that I gave up waiting)

  • Searching doesn't display instant search results like it used to
My solution: downgrade spotify. Here goes:
(Note: I'm running Ubuntu 12.04 64-bit. If you're using 32-bit Ubuntu replace "amd64" in steps 3 and 6 with "i386". If you're using a different version of Ubuntu or a different flavor of Linux, you're on your own.)

  1. First, completely quit spotify. Make sure you click on the icon and click Exit if it's in the system tray

  2. Run this command in a terminal to make sure you've got the problematic version of Spotify:
    dpkg -l spotify-client
    The output should include this line:
    ii spotify-client Spotify desktop client

  3. Download the previous version of spotify by running this command in a terminal:

  4. Uninstall the current version:
    sudo dpkg -r spotify-client

  5. Move the cache folder out of the way:
    sudo mv ~/.cache/spotify/ /tmp

    Note: if you don't do this, you might get this error when running spotify:
    Missing Dependencies
    Framework compatible with bridge-desktop (version 0.7.0) does not exist.

  6. Install the previous version:
    sudo dpkg -i spotify-client_0.8.4.103.g9cb177b.260-1_amd64.deb

    If you get this error:
    dpkg: error processing spotify-client (--install):
    dependency problems - leaving unconfigured

    run this command to fix it by installing any missing dependencies:
    sudo apt-get -f install

  7. To keep spotify from being upgraded again to the broken version, run this command:
    grep -r /etc/apt/sources.list* | egrep -v "\.(save|distUpgrade):deb" | cut -f 1 -d :

  8. The previous step should output one or more files. Edit them and put a pound sign (#) in front of any occurrences of this line:
    deb stable non-free

    Like so:
    #deb stable non-free
Now spotify should work, at least as well as it did before ;)