Installing Electric Sheep in RHEL 5/CentOS 5

Introduction:

A description of the “Electric Sheep” software, per it’s original author:

“First created in 1999 by Scott Draves, the Electric Sheep is a form of artificial life, which is to say it is software that recreates the biological phenomena of evolution and reproduction though mathematics. The system is made up of man and machine, a cyborg mind with 450,000 participant computers and people all over the Internet.
This is a distributed system, with all participating computers working together to form a supercomputer that renders animations, called “sheep”, that everyone sees. The human participants guide the survival of the fittest by voting for their favorite animations in the flock. You can join this project by downloading the Electric Sheep Screensaver.
Each participating computer follows mathematical instructions, Draves’ Flame algorithm, to render its own piece of the larger work, as seen in the table at left. The images are sent back to a central server which compresses them into animations which are sent back out to the viewers. The electricsheep.org website shows the family tree for each sheep, including its parents and offspring, and viewers can track family resemblance. The artist’s Clade series shows a selection of family members in high resolution.”


Also, a Wikipedia entry for it can be viewed here:

http://en.wikipedia.org/wiki/Electric_Sheep

The inspiration of such a project is likely due to the following book originally published in 1968:

“Do Androids Dream of Electric Sheep?”, by Philip K. Dick

The same book also inspired the popular 1982 movie, “Blade Runner”.

Crossing over:

Just in case anyone else is brave (or crazy) enough to attempt to pull this off using Cent OS 5, or Red Hat Enterprise Linux 5 (tested on 5.6 x86_64)…

The instructions for the Linux build here, are specifically designed for Ubuntu more or less:

ElectricSheep.org Linux Client Instructions

Today, we’re going to make a cross over of these instructions, and apply them to RHEL5/CentOS5.

If you have trouble locating RPM’s, I highly recommend using advanced search on PBone’s site.

Package translations:

Ubuntu: Red Hat:
——- ——–
libgtk2.0-dev gtk-devel
libgl1-mesa-dev mesa-libGL-devel
libavcodec-dev ffmpeg-devel
libavformat-dev ffmpeg-devel
libswscale-dev ffmpeg-devel
liblua5.1-0-dev lua-devel
libcurl4-openssl-dev curl-devel
libjpeg8-dev libjpeg-devel v6b
libtinyxml-dev tinyxml-devel
freeglut3-dev freeglut-devel
libboost-dev *
libboost-filesystem-dev *
libboost-thread-dev *
glee-dev **

* – Boost devel package installation:

Just do:

# yum install --nogpgcheck boost*.rpm


…or:

# rpm -Uvh boost*.rpm


…after downloading them all:

boost-date-time-1.39.0-9.el5.x86_64.rpm
boost-debuginfo-1.39.0-9.el5.x86_64.rpm
boost-doc-1.39.0-9.el5.x86_64.rpm
boost-filesystem-1.39.0-9.el5.x86_64.rpm
boost-graph-1.39.0-9.el5.x86_64.rpm
boost-iostreams-1.39.0-9.el5.x86_64.rpm
boost-math-1.39.0-9.el5.x86_64.rpm
boost-program-options-1.39.0-9.el5.x86_64.rpm
boost-python-1.39.0-9.el5.x86_64.rpm
boost-regex-1.39.0-9.el5.x86_64.rpm
boost-serialization-1.39.0-9.el5.x86_64.rpm
boost-signals-1.39.0-9.el5.x86_64.rpm
boost-static-1.39.0-9.el5.x86_64.rpm
boost-system-1.39.0-9.el5.x86_64.rpm
boost-test-1.39.0-9.el5.x86_64.rpm
boost-thread-1.39.0-9.el5.x86_64.rpm
boost-wave-1.39.0-9.el5.x86_64.rpm
boost-1.39.0-9.el5.x86_64.rpm
boost-devel-1.39.0-9.el5.x86_64.rpm

** – GLee devel package installation:

Install package gcc-c++, then configure/make source for linux here:

http://www.opengl.org/sdk/libs/GLee/

It will break on make, with:

g++ ./GLee.c -shared -I. -I/usr/local/include -lGL  \
-g -O2 -Wall -DHAVE_CONFIG_H -o ./libGLee.so
/usr/bin/ld: /tmp/ccK6kL3N.o: relocation R_X86_64_32S against `__GLeeLink_GL_VERSION_1_2()' can not be used when making a shared object; recompile with -fPIC
/tmp/ccK6kL3N.o: could not read symbols: Bad value


So, do what it says, and manually run the following command:

# g++ -fPIC ./GLee.c -shared -I. -I/usr/local/include -lGL \
-g -O2 -Wall -DHAVE_CONFIG_H -o ./libGLee.so


Then, provided all packages installed successfully (better scroll back and check now…), continue with the electricsheep.org instructions and do wxWidgets 2.9.x (2.9.3 was in my case)

# cd /usr/src/wxWidgetdir
# ./autoconf.sh; ./configure; make; make install


Continue with their instructions, and install Flam3:

Note: Install libxml2 and libxml2-devel packages first!

http://flam3.googlecode.com/files/flam3-3.0.1.tar.gz

On a highway to fail:

Now, I got this far and then performed svn checkout.

Then, in it’s client directory, running “./configure” throws:

configure: error: cannot find macro directory `m4'


So I say to myself…easy fix, just run “mkdir m4”, and rerun “./configure”, but then I get another problem:

checking for LUA...
configure: error: Package requirements (lua >= 5.1) were not met:
No package 'lua' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables LUA_CFLAGS
and LUA_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.


I then install lua…but it’s already there, so I upgrade instead to the following packages:

lua-5.1.4-4.el5.x86_64.rpm
lua-devel-5.1.4-4.el5.x86_64.rpm


This seems to have resolved the specified error for me.

Onto the next issue:

checking for main in -lboost_thread... no
configure: error: you must install libboost-thread to compile electricsheep.


But, it is installed [puzzled]

Ah, this configure is looking for an older module, so symlink it:

# ln -s /usr/lib64/libboost_thread-mt.so /usr/lib64/libboost_thread.so


Next make error:

In file included from ../ContentDecoder/ContentDecoder.h:49,
from Player.h:11,
from Player.cpp:37:
../Common/BlockingQueue.h:174:28: warning: no newline at end of file


So, edit “./Common/BlockingQueue.h” and add a new line at the end…another easy fix.

Next make error:

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


But it’s found at “./DisplayOutput/OpenGL/GLee.h” …

Alright, I’ll try to just symlink to it:

# ln -s ./DisplayOutput/OpenGL/GLee.h ./GLee.h


Next make error:

lua_playlist.h: In member function ‘void ContentDecoder::CLuaPlaylist::DeduceGraphnessFromFilenameAndQueue(const boost::filesystem::path&, const std::string&)’:
from Player.cpp:37:
lua_playlist.h:231: error: ‘struct std::basic_string<char, std::char_traits<char>, std::allocator<char> >’ has no member named ‘string’


File was located “./Client/lua_playlist.h”, but, this is basically where I gave up.

I’m not a C master quite yet (though fluent in Perl/Python/everything else for some reason), so I don’t feel like messing around with it’s headers.

The error amounted to something not being referenced, or wrong version – whatever it was…I decided building the source by myself was not happening this way.

Saved by mighty Fedora gods:

Rejoice, ye, for running this absolutely fantastic script Tait Clarridge has provided you folk will resolve thine troubles.

Note, please comment out the ‘yum repo checks’ and ‘yum install -y’ lines before running their script!

Specific packages were required prior to running the script. In one instance, the standard and up to date version of x264 causes screaming from abysmal wastelands.

To fix, you would remove existing package if installed, and use a specific RPM, for example:

x264-0.0.0-0.4.20101111.el5.rf.x86_64.rpm

The following package updates/installs had to be hunted down and installed first – I not only recommend them, but do so while waving a suggestive and dangerous object in your general direction:

Updated: libgcc-4.1.2-52.el5.x86_64
Updated: glibc-common-2.5-81.el5_8.1.x86_64
Updated: glibc-2.5-81.el5_8.1.x86_64
Updated: cpp-4.1.2-52.el5.x86_64
Installed: kernel-headers-2.6.18-308.1.1.el5.x86_64
Updated: nscd-2.5-81.el5_8.1.x86_64
Updated: glibc-2.5-81.el5_8.1.i686
Updated: libgcc-4.1.2-52.el5.i386
Installed: glibc-headers-2.5-81.el5_8.1.x86_64
Installed: glibc-devel-2.5-81.el5_8.1.x86_64
Installed: gcc-4.1.2-52.el5.x86_64
Installed: glib2-devel-2.12.3-4.el5_3.1.x86_64
Installed: apr-1.2.7-11.el5_6.5.x86_64
Installed: imake-1.0.2-3.x86_64
Installed: postgresql-libs-8.1.23-1.el5_7.3.x86_64
Installed: apr-1.2.7-11.el5_6.5.i386
Installed: apr-util-1.2.7-11.el5_5.2.x86_64
Installed: sqlite-3.3.6-5.i386
Installed: neon-0.25.5-10.el5_4.1.i386
Installed: postgresql-libs-8.1.23-1.el5_7.3.i386
Installed: autoconf-2.59-12.noarch
Installed: subversion-1.6.15-0.1.el5.rfx.x86_64
Installed: automake-1.9.6-2.3.el5.noarch
Installed: libtool-1.5.22-7.el5_4.x86_64
Installed: libgtop2-devel-2.14.4-8.el5_4.x86_64
Installed: libgtop2-devel-2.14.4-8.el5_4.i386
Installed: apr-util-1.2.7-11.el5_5.2.i386
Installed: subversion-1.6.11-7.el5_6.4.i386
Updated: libX11-1.0.3-11.el5_7.1.x86_64
Updated: freetype-2.2.1-31.el5_8.1.x86_64
Updated: pango-1.14.9-8.el5_7.3.x86_64
Updated: 2:libpng-1.2.10-16.el5_8.x86_64
Updated: libXcursor-1.1.7-1.2.x86_64
Updated: gtk2-2.10.4-21.el5_7.7.x86_64
Updated: mesa-libGL-6.5.1-7.10.el5.x86_64
Installed: zlib-devel-1.2.3-4.el5.x86_64
Installed: freetype-devel-2.2.1-31.el5_8.1.x86_64
Installed: fontconfig-devel-2.4.1-7.el5.x86_64
Installed: atk-devel-1.12.2-1.fc6.x86_64
Updated: libX11-1.0.3-11.el5_7.1.i386
Updated: libXcursor-1.1.7-1.2.i386
Updated: 2:libpng-1.2.10-16.el5_8.i386
Updated: freetype-2.2.1-31.el5_8.1.i386
Installed: 2:libpng-devel-1.2.10-16.el5_8.x86_64
Installed: libXau-devel-1.0.1-3.1.x86_64
Updated: pango-1.14.9-8.el5_7.3.i386
Updated: gtk2-2.10.4-21.el5_7.7.i386
Updated: mesa-libGL-6.5.1-7.10.el5.i386
Installed: xorg-x11-proto-devel-7.1-13.el5.x86_64
Installed: libX11-devel-1.0.3-11.el5_7.1.x86_64
Installed: libXext-devel-1.0.1-2.1.x86_64
Installed: libXrender-devel-0.9.1-3.1.x86_64
Installed: cairo-devel-1.2.4-5.el5.x86_64
Installed: libXrandr-devel-1.1.1-3.3.x86_64
Installed: libXfixes-devel-4.0.1-2.1.x86_64
Installed: libXcursor-devel-1.1.7-1.2.x86_64
Installed: libXinerama-devel-1.0.1-2.1.x86_64
Installed: libXi-devel-1.0.1-4.el5_4.x86_64
Installed: libXft-devel-2.1.10-1.1.x86_64
Installed: pango-devel-1.14.9-8.el5_7.3.x86_64
Installed: gtk2-devel-2.10.4-21.el5_7.7.i386
Installed: mesa-libGL-devel-6.5.1-7.10.el5.x86_64
Installed: libXdmcp-devel-1.0.1-2.1.x86_64
Installed: gtk2-devel-2.10.4-21.el5_7.7.x86_64
Installed: mesa-libGL-devel-6.5.1-7.10.el5.i386
Installed: opencore-amr-0.1.2-1.el5.rf.x86_64
Installed: lame-3.99.5-1.el5.rf.x86_64
Installed: x264-0.0.0-0.4.20101111.el5.rf.x86_64
Updated: mesa-libGLU-6.5.1-7.10.el5.x86_64
Installed: a52dec-0.7.4-8.el5.rf.x86_64
Installed: gsm-1.0.13-1.el5.rf.x86_64
Installed: SDL-1.2.10-9.el5.x86_64
Installed: faac-1.26-1.el5.rf.x86_64
Installed: opencore-amr-devel-0.1.2-1.el5.rf.x86_64
Installed: cppunit-1.12.0-3.el5.rf.x86_64
Installed: dirac-1.0.2-1.el5.rf.x86_64
Installed: libid3tag-0.15.1b-3.el5.rf.x86_64
Installed: imlib2-1.4.4-1.el5.rf.x86_64
Installed: faad2-2.7-1.el5.rf.x86_64
Installed: faad2-devel-2.7-1.el5.rf.x86_64
Installed: imlib2-devel-1.4.4-1.el5.rf.x86_64
Installed: dirac-devel-1.0.2-1.el5.rf.x86_64
Installed: faac-devel-1.26-1.el5.rf.x86_64
Installed: gsm-devel-1.0.13-1.el5.rf.x86_64
Installed: a52dec-devel-0.7.4-8.el5.rf.x86_64
Installed: mesa-libGLU-devel-6.5.1-7.10.el5.x86_64
Installed: x264-devel-0.0.0-0.4.20101111.el5.rf.x86_64
Installed: lame-devel-3.99.5-1.el5.rf.x86_64
Installed: libICE-devel-1.0.1-2.1.x86_64
Installed: libSM-devel-1.0.1-3.1.x86_64
Installed: libXt-devel-1.0.2-3.2.el5.x86_64
Installed: alsa-lib-devel-1.0.17-1.el5.x86_64
Updated: mesa-libGLU-6.5.1-7.10.el5.i386
Installed: SDL-devel-1.2.10-9.el5.x86_64
Installed: ffmpeg-0.6.5-1.el5.rf.x86_64
Installed: ffmpeg-devel-0.6.5-1.el5.rf.x86_64
Installed: ffmpeg-libpostproc-0.6.5-1.el5.rf.x86_64
Installed: lua-5.1.4-2.el5.rf.x86_64
Installed: lua-devel-5.1.4-2.el5.rf.x86_64
Updated: e2fsprogs-libs-1.39-33.el5.x86_64
Updated: krb5-libs-1.6.1-70.el5.x86_64
Updated: e2fsprogs-libs-1.39-33.el5.i386
Updated: openssl-0.9.8e-22.el5_8.1.x86_64
Updated: curl-7.15.5-15.el5.x86_64
Installed: libidn-devel-0.6.5-1.1.x86_64
Installed: e2fsprogs-devel-1.39-33.el5.x86_64
Installed: keyutils-libs-devel-1.2-1.el5.x86_64
Installed: libsepol-devel-1.15.2-3.el5.x86_64
Updated: krb5-workstation-1.6.1-70.el5.x86_64
Updated: e2fsprogs-1.39-33.el5.x86_64
Updated: krb5-libs-1.6.1-70.el5.i386
Updated: openssl-0.9.8e-22.el5_8.1.i686
Updated: curl-7.15.5-15.el5.i386
Installed: libselinux-devel-1.33.4-5.7.el5.x86_64
Installed: krb5-devel-1.6.1-70.el5.x86_64
Installed: openssl-devel-0.9.8e-22.el5_8.1.x86_64
Installed: curl-devel-7.15.5-15.el5.i386
Installed: curl-devel-7.15.5-15.el5.x86_64
Installed: libjpeg-devel-6b-37.x86_64
Installed: libjpeg-devel-6b-37.i386
Installed: libicu-3.6-5.16.1.x86_64
Installed: boost-1.33.1-15.el5.x86_64
Installed: libicu-3.6-5.16.1.i386
Installed: boost-devel-1.33.1-15.el5.x86_64
Installed: boost-1.33.1-15.el5.i386
Installed: boost-devel-1.33.1-15.el5.i386
Installed: boost-thread-1.39.0-9.el5.x86_64
Installed: boost-system-1.39.0-9.el5.x86_64
Installed: boost-filesystem-1.39.0-9.el5.x86_64
Installed: boost-date-time-1.39.0-9.el5.x86_64
Installed: boost-wave-1.39.0-9.el5.x86_64
Installed: boost-test-1.39.0-9.el5.x86_64
Installed: boost-program-options-1.39.0-9.el5.x86_64
Installed: boost-iostreams-1.39.0-9.el5.x86_64
Installed: boost-serialization-1.39.0-9.el5.x86_64
Installed: boost-python-1.39.0-9.el5.x86_64
Installed: boost-regex-1.39.0-9.el5.x86_64
Installed: boost-math-1.39.0-9.el5.x86_64
Installed: boost-graph-1.39.0-9.el5.x86_64
Installed: boost-signals-1.39.0-9.el5.x86_64
Installed: boost-debuginfo-1.39.0-9.el5.x86_64
Updated: boost-1.39.0-9.el5.x86_64
Updated: boost-devel-1.39.0-9.el5.x86_64
Installed: boost-static-1.39.0-9.el5.x86_64
Installed: boost-doc-1.39.0-9.el5.x86_64
Installed: tinyxml-2.6.1-2.el5.x86_64
Installed: tinyxml-devel-2.6.1-2.el5.x86_64
Installed: freeglut-devel-2.4.0-7.1.el5.x86_64
Installed: freeglut-devel-2.4.0-7.1.el5.i386
Updated: libstdc++-4.1.2-52.el5.x86_64
Updated: libstdc++-4.1.2-52.el5.i386
Installed: libstdc++-devel-4.1.2-52.el5.x86_64
Installed: gcc-c++-4.1.2-52.el5.x86_64
Updated: libxml2-2.6.26-2.1.15.el5_8.2.x86_64
Updated: libxml2-2.6.26-2.1.15.el5_8.2.i386
Installed: libxml2-devel-2.6.26-2.1.15.el5_8.2.i386
Installed: libxml2-devel-2.6.26-2.1.15.el5_8.2.x86_64
Updated: lua-5.1.4-4.el5.x86_64
Updated: lua-devel-5.1.4-4.el5.x86_64
Installed: epel-release-5-4.noarch
Installed: rpmfusion-free-release-5-0.1.noarch
Installed: rpmfusion-nonfree-release-5-0.1.noarch
Installed: libgdbus-0.2-2.fc9.x86_64
Installed: libgdbus-devel-0.2-2.fc9.x86_64
Installed: fribidi-0.19.2-2.el5.x86_64
Updated: 1:esound-0.2.36-4.x86_64
Installed: 1:glib-1.2.10-20.el5.x86_64
Updated: libgcrypt-1.4.4-5.el5_8.2.x86_64
Installed: enca-1.10-1.el5.rf.x86_64
Installed: libass-0.9.11-1.el5.rf.x86_64
Installed: 8:arts-1.5.4-1.x86_64
Installed: libdca-0.0.5-1.el5.rf.x86_64
Installed: indent-2.2.9-14.fc6.x86_64
Installed: libmad-0.15.1b-4.el5.rf.x86_64
Installed: libXvMC-1.0.2-2.1.x86_64
Installed: libvdpau-0.4.1-1.el5.rf.x86_64
Installed: libmpcdec-1.2.6-1.el5.rf.x86_64
Installed: libtool-ltdl-1.5.22-7.el5_4.x86_64
Installed: mpg123-1.13.8-1.el5.rf.x86_64
Installed: lzo-2.06-1.el5.rf.x86_64
Installed: live555-0-0.27.2012.02.04.el5.rf.x86_64
Installed: libcaca-0.99-0.1.beta17.el5.rf.x86_64
Installed: lirc-0.6.6-4.el5.rf.x86_64
Installed: svgalib-1.9.25-1.el5.rf.x86_64
Installed: xvidcore-1.2.2-1.el5.rf.x86_64
Installed: aalib-1.4.0-5.el5.rf.x86_64
Installed: libglade2-devel-2.6.0-2.x86_64
Installed: libart_lgpl-devel-2.3.17-4.x86_64
Installed: libgnomecanvas-devel-2.14.0-4.1.x86_64
Installed: 1:audiofile-devel-0.2.6-5.x86_64
Installed: 1:esound-devel-0.2.36-4.x86_64
Installed: mplayer-fonts-1.1-3.0.rf.noarch
Installed: libgpg-error-devel-1.4-2.x86_64
Installed: libgcrypt-devel-1.4.4-5.el5_8.2.x86_64
Installed: libxslt-devel-1.1.17-2.el5_2.2.x86_64
Installed: mplayer-common-1.0-0.47.svn20100703.el5.rf.x86_64
Installed: mplayer-1.0-0.47.svn20100703.el5.rf.x86_64
Installed: 1:glib-devel-1.2.10-20.el5.x86_64
Installed: expat-devel-1.95.8-8.3.el5_5.3.i386
Installed: libglade2-devel-2.6.0-2.i386
Installed: expat-devel-1.95.8-8.3.el5_5.3.x86_64
Installed: glib2-devel-2.12.3-4.el5_3.1.i386
Updated: libgcrypt-1.4.4-5.el5_8.2.i386
Updated: 1:esound-0.2.36-4.i386
Installed: 1:glib-1.2.10-20.el5.i386
Installed: gnome-keyring-devel-0.6.0-1.fc6.x86_64
Installed: libIDL-devel-0.8.7-1.fc6.x86_64
Installed: ORBit2-devel-2.14.3-5.el5.x86_64
Installed: GConf2-devel-2.14.0-9.el5.i386
Installed: libbonobo-devel-2.16.0-1.1.el5_5.1.x86_64
Installed: GConf2-devel-2.14.0-9.el5.x86_64
Installed: 1:glib-devel-1.2.10-20.el5.i386
Updated: dbus-libs-1.1.2-16.el5_7.x86_64
Updated: gnome-vfs2-2.16.2-8.el5.x86_64
Updated: dbus-1.1.2-16.el5_7.x86_64
Updated: dbus-x11-1.1.2-16.el5_7.x86_64
Updated: gnome-vfs2-smb-2.16.2-8.el5.x86_64
Installed: dbus-devel-1.1.2-16.el5_7.x86_64
Updated: dbus-libs-1.1.2-16.el5_7.i386
Installed: dbus-glib-devel-0.73-10.el5_5.x86_64
Installed: hal-devel-0.5.8.1-62.el5.x86_64
Installed: gnome-vfs2-devel-2.16.2-8.el5.x86_64
Installed: libgnome-devel-2.16.0-6.el5.i386
Installed: libbonoboui-devel-2.16.0-1.fc6.x86_64
Installed: libgnomeui-devel-2.16.0-5.el5.i386
Installed: libgnomeui-devel-2.16.0-5.el5.x86_64
Installed: libgnome-devel-2.16.0-6.el5.x86_64
Installed: dbus-devel-1.1.2-16.el5_7.i386
Installed: dbus-glib-devel-0.73-10.el5_5.i386
Updated: gnome-vfs2-2.16.2-8.el5.i386


After these packages were resolved, Tait’s script worked it’s magic.

The “electricsheep” and “electricsheep-prefs” binaries should be sitting in “/usr/bin/” now.

I got this running finally, albeit some tweaking was required.

Mainly, it involved some blank or black screen blargitty that was easily fixed with specifying GL / X11 display driver/something in “electricsheep-prefs”.

Also, for consideration, you might have to modify your “/etc/X11/xorg.conf” [Server Layout] to disable Xinerama:

Option      "Xinerama" "off"


As well as add the following section, if it’s not there already:

Section "Extensions"
Option "Composite" "0"
EndSection


Maybe you can get around these Xorg settings, but my test environment was all frownie brownies about it.

Also, I saved the following file as “/usr/share/applications/screensavers/electricsheep.desktop”:

[Desktop Entry]
Name=ElectricSheep
Comment=Electric Sheep is a distributed screen-saver that harnesses idle computers into a render farm with the purpose of animating and evolving artificial life-forms.
TryExec=electricsheep-saver
Exec=electricsheep-saver
StartupNotify=false
Terminal=false
Type=Application
Categories=Screensaver;
OnlyShowIn=GNOME;KDE;XFCE

That about does it!

Now, as your normal user account (whatever you’re signed into Gnome with), you should be able to run:

$ electricsheep


It should download some sheep, and show you a small screen running the screensaver after a minute.

If that worked, you can move on to running “electricsheep-prefs” and setting drivers/login details/etc.

To set/check settings for Gnome’s environment, simply run:

$ gnome-screensaver


To set/check settings for KDE’s environment, look here for more information:

ElectricSheep and KDE

To set/check settings for KDE4 (…I would):

Check the .desktop file here

Also, check some notes here

Enjoy your cyborgian accomplishment!

Leave a Reply

You must be logged in to post a comment.