inside the mind of a linux admin

ScreenCloud: Troubleshooting missing Python modules after updates

One of my favorite tools that I find myself using quite often is called “ScreenCloud“. It allows you to quickly select any area of your workspace, create an sized screen shot, and then upload it or export it off to their server, your Dropbox account or an SFTP server.

If you’ve recently performed upgrades, either to Ubuntu >16.x or Fedora >21 or the latest version of ScreenCloud, you may be experiencing the same pain that I just endured when launching the application.

In my case, this particular error relates to the SFTP plugin inside of ScreenCloud which automatically uses secure FTP to upload your screenshots to a remote server.

Traceback (most recent call last):
File "", line 1, in
ImportError: No module named 'Screencloud'

First, kill any running instances, remove any custom repositories you may have installed it from and then completely remove the screencloud application.

In Ubuntu/Mint:

sudo killall -9 screencloud
sudo rm -vf /etc/apt/sources.list.d/screencloud*
apt-get remove screencloud -y

In Fedora:

sudo killall -9 screencloud
sudo rm -vf /etc/yum.repos.d/screencloud*
yum remove screencloud -y

Now, remove its associated local plugins (sftp, dropbox, etc). These are easily attainable again via the application or GitHub.

rm -rf ~/.local/share/data/screencloud/ScreenCloud/plugins/

Next, we need to place the module in a directory that is actually included in the search paths for the application. This varies depending on systems and versions.

You can find a list of the paths within the ScreenCloud application, by opening “Preferences” and pressing CTRL+D (debug mode) and typing the following into the debug CLI:

py> import sys
py> print sys.path

In my case, ~/.local/share/data/screencloud/ScreenCloud/screencloud/modules was part of the path and the directory did not exist, so I simply created it and rsync’d the file over:

mkdir -p ~/.local/share/data/screencloud/ScreenCloud/screencloud/modules

cp -f /usr/share/screencloud/modules/ ~/.local/share/data/screencloud/ScreenCloud/screencloud/modules

Now, try to run the application again.

Did it work? Great!

No? If you received an error such as this:

from Crypto.PublicKey import DSA
ImportError: No module named Crypto.PublicKey

Make sure you have the latest Crypto and PyCrypto modules installed:

sudo pip install crypto pycrypto --upgrade

Copy over the Crypto module from your system’s distribution package into a path that screencloud is configured to look in.

You can find a list of the paths within the ScreenCloud application, by opening “Preferences” and pressing CTRL+D (debug mode) and typing the following into the debug CLI:

py> import sys
py> print sys.path

And again I simply rsync’d the entire Crypto/ module’s directory over to it one of the included paths. Note: Debian based systems like Ubuntu use different system paths for Python packages than RedHat based systems. Note the differences below and know your system’s layout before running commands.

In Ubuntu/Mint:

sudo rsync -avz /usr/lib/python2.7/dist-packages/Crypto ~/.local/share/screencloud/modules/

In Fedora:

sudo rsync -avz /usr/lib64/python2.7/site-packages/Crypto ~/.local/share/data/screencloud/ScreenCloud/screencloud/modules/

I hope this helps save someone else some time and frustration!

Related Posts

synergy: How to enable crypto (encryption) and generate SSL certificate

The newer Linux versions of the popular mouse/keyboard sharing application “synergy” now has built in encryption. Here’s how to configure it: Just simply passing the –enable-crypto flag on your synergy server without having a proper SSL certificate will result in the inability to connect to clients and generate an error message similar to this in […]

Read More

Change Number Pad Delete (dot) key from a comma in Ubuntu Linux

I recently purchased a new keyboard and updated to the latest Ubuntu, I’m also an avid user of the number pad for quick input when dealing with spreadsheets or accounting. I found that my num pad’s delete key (“.”) was outputting a comma (“,”) instead. Pretty annoying? I agree, but this can be very easily […]

Read More

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Twitter: kireguy

Tweeter button Facebook button Myspace button