Linux Client Instructions

If you have Ubuntu 10.04 or Debian Sid, then you can just use the package manager or type "sudo apt-get install electricsheep", although that will get you an old version, it should work fine.

Otherwise, the preferred way to install it is from source.

  1. sudo apt-get install subversion autoconf libtool libgtk2.0-dev libgl1-mesa-dev libavcodec-dev libavformat-dev libswscale-dev liblua5.1-0-dev libcurl4-openssl-dev libxml2-dev libjpeg8-dev libgtop2-dev libboost-dev libboost-filesystem-dev libboost-thread-dev libtinyxml-dev freeglut3-dev glee-dev
  2. install wxWidgets 3.0
  3. install from source flam3 (./configure; make; sudo make install), and then:
  4. Checkout client source and then ./; ./configure; make; sudo make install

It should configure itself to be your screensaver, but you can also run it from the command line just by typing "electricsheep". You can also use "electricsheep-preferences" to configure it.


this has since been fixed,

this has since been fixed, thanks.

Make Error in Ubuntu 11.10 and wxWidgets 2.9.x

I have the following make errors in wxWidgets 2.9.x (I tried all of them):


In file included from ./include/wx/chkconf.h:1146:0,
from ./include/wx/platform.h:711,
from ./include/wx/defs.h:26,
from ./include/wx/wxprec.h:13:
./include/wx/unix/chkconf.h:27:13: error: #error "wxFileSystemWatcher requires either inotify() or kqueue()"
In file included from ./include/wx/wxprec.h:13:0:
./include/wx/defs.h:945:7: warning: "SIZEOF_LONG" is not defined [-Wundef]
./include/wx/defs.h:1136:7: warning: "SIZEOF_LONG" is not defined [-Wundef]
In file included from ./include/wx/string.h:53:0,
from ./include/wx/memory.h:16,
from ./include/wx/object.h:20,
from ./include/wx/wx.h:16,
from ./include/wx/wxprec.h:68:
./include/wx/strvararg.h:164:19: warning: "SIZEOF_LONG" is not defined [-Wundef]
In file included from ./include/wx/memory.h:16:0,
from ./include/wx/object.h:20,
from ./include/wx/wx.h:16,
from ./include/wx/wxprec.h:68:
./include/wx/string.h:200:4: error: #error "Please define string case-insensitive compare for your OS/compiler"
In file included from ./include/wx/any.h:564:0,
from ./include/wx/event.h:30,
from ./include/wx/wx.h:25,
from ./include/wx/wxprec.h:68:
./include/wx/datetime.h:63:2: warning: #warning using pseudo thread-safe wrapper for localtime to emulate localtime_r [-Wcpp]
./include/wx/datetime.h:73:2: warning: #warning using pseudo thread-safe wrapper for gmtime to emulate gmtime_r [-Wcpp]
In file included from ./include/wx/wxprec.h:13:0:
./include/wx/defs.h:902:9: error: zero width for bit-field ‘wxAssert_902::SizeTMustBeExactly4Bytes’
./include/wx/defs.h:903:9: error: zero width for bit-field ‘wxAssert_903::PtrMustBeExactly4Bytes’
./include/wx/defs.h:920:13: error: zero width for bit-field ‘wxAssert_921::Wchar_tMustBeExactly2Bytes’
In file included from ./include/wx/string.h:41:0,
from ./include/wx/memory.h:16,
from ./include/wx/object.h:20,
from ./include/wx/wx.h:16,
from ./include/wx/wxprec.h:68:
/usr/include/stdio.h:103:19: error: conflicting declaration ‘typedef __ssize_t ssize_t’
./include/wx/defs.h:1100:25: error: ‘ssize_t’ has a previous declaration as ‘typedef wxInt32 ssize_t’
In file included from ./include/wx/memory.h:16:0,
from ./include/wx/object.h:20,
from ./include/wx/wx.h:16,
from ./include/wx/wxprec.h:68:
./include/wx/string.h: In function ‘int Stricmp(const char*, const char*)’:
./include/wx/string.h:202:1: warning: no return statement in function returning non-void [-Wreturn-type]
./include/wx/string.h: At global scope:
./include/wx/string.h:149:12: warning: unused parameter ‘psz1’ [-Wunused-parameter]
./include/wx/string.h:149:12: warning: unused parameter ‘psz2’ [-Wunused-parameter]
make: *** [.pch/wxprec_basedll/wx/wxprec.h.gch] Error 1


Any suggestions?


Try the following:sudo

Try the following:
sudo apt-get install inotify-tools

Then start over with the following:; ./configure; make ; sudo make install

Still no make in wxWidgets 2.9.3

I did a clean installation of Ubuntu 11.10 and followed directions above including using freeglut3-dev and glee-dev.

Still had the same make errors in wxWidgets 2.9.3.  I'm too inexperienced in the world of Linux to identify the root cause of the problem.

I suggest you direct your

I suggest you direct your queries towards the wxwidgets mailing list. This forum is for electricsheep.


Make error on Linux Mint 11

I've followed all the steps but I can't figure out how to resolve this error when compiling on Mint 11 (similar to Ubuntu 11.04):

In file included from Player.h:12:0,
from Player.cpp:37:
lua_playlist.h: In member function ‘void ContentDecoder::CLuaPlaylist::DeduceGraphnessFromFilenameAndQueue(const boost::filesystem::path&, const std::string&)’:
lua_playlist.h:231:160: error: ‘struct boost::filesystem::basic_path<std::basic_string<char>, boost::filesystem::path_traits>::string_type’ has no member named ‘string’
make[1]: *** [Player.o] Error 1
make[1]: Leaving directory `/home/AWiser/Downloads/electricsheep-read-only/client_generic/Client'
make: *** [all-recursive] Error 1


Getting the same error here. Elementary OS 64 bit (similar to Ubuntu 10.10)

Boost version in these

Boost version in these systems might be older than required. Adding define BOOST_FILESYSTEM_VERSION with value 3 might help if boost version is not older than 1.44.


Looks like the only available package for Mint 11 in the repositories is for version 1.42. Guess I'll have to figure out how to get build for the latest version to work without giving me an error.

Fix for older libboost

I'm using Ubuntu 11.04, which also only has the older version of libboost. I've been getting this error too. I looked into it, and there's actually only minor changes to make the code compile with the older version.

The error always points to a place in the code where there's a something.filename().string() which can be fixed by just removing the .string() wherever the error occurs.

According to the Boost docs, the newer version of libboost has filename() returning a path type, requiring explicit conversion to string. In the older version, filename() itself returns the string, making the extra call to string() redundant (and an error).

Of course, this could also be fixed by installing a newer libboost from source, like someone else posted, which could possibly be easier since there's several places where the above error happens.


Managed to get it installed. Here's how to do it:


- Download Boost 1.49 from

- Extract the archive (doesn't really matter where)

- Navigate to the folder in terminal and run the following commands:

sudo ./

sudo ./b2 install

- (By default, it will create the files in /usr/local/lib and /usr/local/include)

- Run the steps for setting up Electric Sheep again (./, ./configure, make, sudo make install)

- After Electric Sheep is installed, copy all the files starting with "libboost" from /usr/local/lib to /usr/lib (I also copied the "wx" folder just in case).


Now I just need to see if it will get past the white square...


It also looks like electricsheep isn't recognizing any flags like --help. this is what I get in terminal after running and then exiting:


SetInstallation: /usr/local/share/electricsheep/Scripts
SetInstallation: /usr/local/share/electricsheep/Scripts
Trying to access shutdown singleton CReusableAlignedBuffers
Trying to access shutdown singleton Network manager
Trying to access shutdown singleton Network manager
Trying to access shutdown singleton Player
Segmentation fault


It also plays fullscreen instead of standalone like the 2.7b12 version did.

I'm also seeing that it's saving the .avi files correctly to the ~/.electricsheep directory, but I'm seeing some resource files in /usr/local/share/electricsheep as well. The only other bit of information is that running electricsheep with sudo results in the same messages as above, but without the segfault.

Ubuntu 11.10, wxWidgets 2.9.3, flam3 3.0.1, electricsheep-2.7b33

I downloaded wxWidgets 2.9.3, unzipped, then "./; ./configure; make; sudo make install". Success.

I downloaded flam3 3.0.1 using svn checkout, then "./configure; make; sudo make install".  Success.

I downloaded electricsheep 2.7b33 using svn checkout, then "./; ./configure; make; sudo make install".  Success.

Then I tried to run electricsheep-preferences.  GUI loads, but I cannot sign in.  I tried to make some changes on the various tabs, changes don't save and revert back to original settings on each load of the preferences GUI.  FAIL.

Next I tried to just run electricsheep.  Black screen with a white square in the center that does nothing.  FAIL.

After this fail, I uninstalled electricsheep.  I tried the apt-get method in Ubuntu 11.10.  Preferences save.  Screensaver loads and starts up.  WILL NOT STRETCH TO FILL WIDESCREEN.  I get letterboxes with yellow execution output on the left.


I used to love this screensaver, but lately, EPIC FAIL on Linux.  Anyone have any solutions?

Same situation here

Preferences save.  Screensaver loads and starts up.  WILL NOT STRETCH TO FILL WIDESCREEN.  I get letterboxes with yellow execution output on the left.

No idea, but it works

No idea, but it works perfectly well for me on ubuntu 11.4 and fedora 16.

Make sure you are using the latest code from google code.



i just tried it on 11.10 and

i just tried it on 11.10 and got the white square & prefs don't load.

Actually the white square

Actually the white square might be normal - it will show a NULL image if an icon is not found. If you wait a couple of minutes it may start downloading and showing video.


I let it go the entire

I let it go the entire weekend, came back on Monday, still white box and prefs are still static (won't save/load changes)...

svn checkout blows up

feb 12 2012 svn checkout still explodes on ubuntu 10.10

what do you mean it

what do you mean it explodes??  are you checking out from google code?

*** Updated code for Linux - 31 January 2012 ***

I have updated the client source so it should compile and run OK in Linux again. I have also made some glx improvements.


Please test and let us know the results.


[SOLVED] make failed on Ubuntu 10.10

After downloading the lastest version of the electricsheep cliente from the repository I got the following error while running make.

Player.cpp:16: fatal error: GLee.h: No such file or directory

The solution was obvious: sudo apt-get install libglee0d1 glee-dev

And then run "./; ./configure; make" again.

You should add these dependencies to the Linux Client Instructions.


Still the client isn't working here, please check: [Linux] Electrisheep only displays a white square

thanks, i'll be building on

thanks, i'll be building on some fresh machines soon, i'll look into this then.

make Fails

I'm given these errors while trying to use "make" on 10.04.


../../Common/Log.cpp: In member function ‘void Base::CLog::Log(const char*, const char*)’:
../../Common/Log.cpp:455: error: ‘strcmp’ was not declared in this scope
../../Common/Log.cpp:491: error: ‘memcpy’ was not declared in this scope
../../Common/Log.cpp:492: error: ‘strcpy’ was not declared in this scope
make[1]: *** [Log.o] Error 1
make[1]: Leaving directory `/home/dkmann1987/Documents/Source/electricsheep-read-only/client_generic/MSVC/SettingsGUI'
make: *** [all-recursive] Error 1

Debian sid - can't compile

Error on make:

/usr/lib/ could not read symbols: Invalid operation

Everything else ran OK. What next?
:Edit: also same error v1.48


Ubuntu 11.10

I got that error too.  I ran

CXXFLAGS="`wx-config --cxxflags`" LDFLAGS="`wx-config --libs all` -lboost_filesystem -lboost_thread -lboost_system -L/usr/lib/" ./configure

And then when I ran make that error dissapeared.  Now I get this error.

lua_playlist.h:227:24: error: ‘class boost::filesystem3::path’ has no member named ‘native_file_string’
lua_playlist.h:232:102: error: ‘class boost::filesystem3::path’ has no member named ‘native_directory_string’
In file included from Player.h:12:0,
from Player.cpp:37:
lua_playlist.h: In member function ‘void ContentDecoder::CLuaPlaylist::UpdateDirectory(const boost::filesystem3::path&, bool)’:
lua_playlist.h:271:40: error: ‘const class boost::filesystem3::path’ has no member named ‘native_directory_string’
lua_playlist.h:276:35: error: ‘const class boost::filesystem3::path’ has no member named ‘native_directory_string’
lua_playlist.h:279:35: error: ‘const class boost::filesystem3::path’ has no member named ‘native_directory_string’
lua_playlist.h: In constructor ‘ContentDecoder::CLuaPlaylist::CLuaPlaylist(const string&, const string&, int&)’:
lua_playlist.h:357:88: error: ‘class boost::filesystem3::path’ has no member named ‘native_directory_string’
Player.cpp: At global scope:
Player.cpp:68:26: error: ‘boost::filesystem::no_check’ has not been declared
Player.cpp: In member function ‘const bool CPlayer::Startup()’:
Player.cpp:342:64: error: ‘class boost::filesystem3::path’ has no member named ‘native_directory_string’
Player.cpp:343:25: error: ‘class boost::filesystem3::path’ has no member named ‘native_directory_string’
make[1]: *** [Player.o] Error 1
make[1]: Leaving directory `/home/warren/electricsheep-read-only/client_generic/Client'
make: *** [all-recursive] Error 1


Updates needed for Fedora 16

Fedora 16 was released earlier this week. Due to some library upgrades, the existing Fedora installation instructions will not work. I've made some modifications to the old script to allow it to work on Fedora 16 again.

Here's a post with some explanation:

Here's the modified script:

cool thanks!

cool thanks!

Electricsheep Debian installation

Electricsheep screensaver installation on Debian was very difficult for me a few months ago, but I got it installed. I accidently deleted my certficate and I lost my Electricsheep screensaver. I've been trying to re-install it, but I am having great difficulty. I don't want o go thru the rigamarow again! Any quick and easy installation instructions would be greatly appreciated. Please post. Thanks.

2.7b33 on Gentoo / missing types.h (curl >= 7.21.7)


I get stale mplayer processes on electricsheep 2.7_beta11 on Gentoo (which is the newest one on Gentoo). I tried compiling 2.7_beta33, but it fails, because newer curl (7.21.7 and onwards) don't have curl/types.h.

One could downgrade curl, but in my situation, currently installed LibreOffice depends on newer version, and I need libreoffice... I could simply downgrade LibreOffice, as that is the only ebuild depending on the newer curl, but that's a huge compile, and I just don't want to do that because of electricsheep. And, also eventually electricsheep needs to support the new curl (missing types.h).

I will look into this myself, when I have the time... but in the meantime, has anyone compiled electricsheep against a newer curl on any distribution?

Not about curl.... maybe boost?


This seems not to be a curl problem after all (reading some curl discussion, types.h has been empty since 2004, it's include could probably be just removed / a version check added in the sources).

I read the compile failing log too fast... it seems like a boost issue. On Gentoo, the latest stable is dev-libs/boost-1.46.1-r1.

This is the first error on the log:

electricsheepguiMyDialog2.cpp:190: error: no matching function for call to 'boost::filesystem3::path::path(wxCStrData)'

Here's the whole log:

the source distribution

the source distribution includes its own version of boost (

so it seems the C flags are out of whack.

have you had any luck

have you had any luck tracking down what cflags are broken? I can't get the 2.7b11 ebuild to work on my system, either (and I'm not sure where to find a live ebuild to add to the overlay)

It seems there's a working external ebuild now...


After a long while - Just FYI, in case you haven't noticed - the live ebuild in Gentoos Bugzilla has been updated:

Works for me! =D

Gentoo ebuild outdated...

Sratch that. The live ebuild in the bug report above uses the sourceforge SVN, which seems outdated (2.7b11 -ish).

But - I've just managed to build on Gentoo from Google Code SVN. I'll see if it also works, and maybe update the ebuild to the bug report, once I have the time!


thanks!  indeed we switched

thanks!  indeed we switched to a unified code base, and the linux version has needed some help since.  anything you can provide would be much appreciated.

Can't access script

I just tried to access the script and got informed that I don't have permission to access it on this server.

the script is on hiatus and

the script is on hiatus and will return shortly.  in the meantime just follow the directions.

How to install?

Linux newb here, trying to install 2.7b30 (which I found on in my karmic koala 9.10...   the old versions I've tried (from Ubuntu software center) haven't worked, and I couldn't get the script listed here to work.

Can anyone help me install from the downloaded archive? I'm very new to the shell and all, so please be very explicit and patient. Thanks!

OK, I can walk you through

OK, I can walk you through it. First, you should delete that tarball because we have fixed problems since then.  Get the latest code with the instructions at

then go into that folder and issue these commands: ./ ; ./configure ; make ; sudo make install



Thanks again for the help Scott. What I ended up doing after not finding any really clear ways to get the source code from the link you shared was realizing that all I needed was in the script. Even if I couldn't run it as a script (I believe because I'm in Karmic Koala, or just don't know what I'm doing) I could open the script as a text file, and then just copy and paste all the lines one by one into the terminal. This ended up working very well! Highly recommended if you can't get the script to run as per the directions. Now I just need to figure out where exactly to put my sheep megapack, and all will be well with the screen-world.

As an aside, this little project was a great way to learn my way around linux, something I've been meaning to do for a while. Thanks again for the great software.

For DPMS to work, download SVN mplayer

As of yesterday, the bug in mplayer that prevented monitors from DPMS-sleeping (e.g., turning *off* after so many minutes of inactivity) during electricsheep was fixed. So update your mplayer to at least SVN r34074 to get the fix. Electricsheep appears to call mplayer with the correct "nostop-xscreensaver" option, and so all should be well after you update your mplayer.

If you don't want to download the latest mplayer and build it yourself (and it takes a long while for your Linux distro to update), then you can try a hack like this:

which is documented a bit at:

Now your computer can go into "deep sleep" and turn the monitors off after enough dreaming. :)

Blank screen problem

I'm using Bohdi Linux v 1.1 and i've installed both from the script and sudo apt-get command. I get the blank screen from both of the installs. I have tried all of the values that needed to be passed to mplayer and X server is set to default, and I still get just a blank screen.


any suggestions?

i do not get electricsheep in gnome or x screensaver

i used the script to install but for life of me cannot get the screen saver working?

Same problem here


sheep freezes

I have about 2gb installed sheeps. The screensaver starts and after a while it freezes. I tried changing the video driver from the settings but still nothing...Any hints? v2.7b12

I installed ES via Synaptic a few days ago and it's great, except for the fact that I don't seem to be able to vote, even when running it windowed.

I read on the forums somewhere that the voting facility is disabled in v2.7b12, which is what I got from Synaptic, so I tried running the script, as suggested.

Everything appeared to work and I now have a folder in my home folder named electricsheep-2001-05-28 which contains the client and flam3, but it looks like it's v2.7b12 again!

I didn't uninstall the existing copy first, thinking (hoping!) that would upgrade it.

So now I have two(-ish) questions:

Do I need to keep the electricsheep-2001-05-28 folder or can I just delete it ?

What do I need to do to get a more up-to-date version (I think v2.7b28 is the latest) ?

I'm using Ubuntu 10.04 and I'm not terribly Linux-literate :)

Thanks, in anticipation.

Thanks, glad you like it.

Thanks, glad you like it. You can get the current source from: But as you can see below there are some tweeks required to compile it. We are looking for a Linux maintainer to install patches and fix linux-specific bugs, configuration etc.

That version has voting when you run it as an app, but not as a screensaver because that's just not supported by gnome.

you can delete the folder after it's been installed.

Thanks for the link

Thanks for the link. I think I'll leave it for the moment - like I say, not very Linux-literate - but I've bookmarked it for later.

I looked at this and at Apophysis a couple of years back when I was still using (gasp) Windows!

This time round I've even got as far adding a couple of sheep to the flock :)

Installing v2.7b28

I'm trying to build and install electricsheep v2.7b28.

I've downloaded and extracted the source files (in /usr/local/src), built and installed the latest version of wxWidgets, fixed the wxWidgets version bug in my copy of the configure file, installed libswscale-dev (I already had libswscale installed) installed lua5.1 and... configure is still complaining that I don't have lua5.1 installed!

I've tried installing it both through Synaptic Package Manager and using sudo apt-get install lua5.1 and the lua5.1 and luac5.1 programs are definitely present in /usr/bin.

There are a number of other packages listed in Synaptic when I search for lua5.1, including several liblua5.1-***-dev packages so I'm wondering whether I should be installing one of these as well.

Any suggestions ?

User login