ThorneLabs

Linux Compile skippy from Source

• Updated May 13, 2017


Outside of GNOME 3, Unity, and compiz, I do not know of any Linux software that provides the Expose-like functionality (now called Mission Control) found in OS X. However, skippy does provide some of this functionality.

skippy no longer appears to be in development, and has since been forked to skippy-xd to offer more advanced functionality, but it is still possible to compile and install skippy on modern Linux distributions.

Compile from Source

The following compile process has been successfully tested on Fedora 17.

Install the following repository packages:

yum install imlib2-devel libXft-devel libXmu-devel git

Clone the source code (the following GitHub repository contains the original skippy 0.5.0 source code along with one patch):

git clone https://github.com/jameswthorne/skippy

Change into the cloned directory:

cd ~/skippy/

Compile the binary:

make

The following is successful output from the make command:

gcc -I/usr/X11R6/include `imlib2-config --cflags` `pkg-config xft --cflags` \
-g -pedantic -Wall -DXINERAMA -o skippy skippy.c wm.c dlist.c mainwin.c \
clientwin.c layout.c focus.c config.c tooltip.c -L/usr/X11R6/lib -lX11 -lm \
`imlib2-config --libs` `pkg-config xft --libs` -lXext -lXinerama

Install the binary:

sudo make install

User Setup

A default skippy configuration file is included in the source code and needs to be copied to your user’s home directory with the following command:

cp ~/skippy/skippyrc-default ~/.skippyrc

Open ~./skippyrc and change the keysym variable to a different key combo. For example, Super_L, Scroll_Lock, or whatever key combo you know is not used by another application. skippy appears to claim ownership of whatever key combo is used, and the default key combo, F11, is widely used throughout many other applications. Not changing the key combo and trying to run skippy will probably result in the following error:

X Error of failed request:  BadAccess (attempt to access private resource denied)
    Major opcode of failed request:  33 (X_GrabKey)
    Serial number of failed request:  93
    Current serial number in output stream:  93

Using skippy

To use skippy simply run skippy from your user’s shell. It will run within that shell until it is killed by the user. It can also be run in the background.

Anytime skippy is run for the first time, such as after boot up, the process is very slow. It cycles through each open window to take screenshots and then shows the Expose-like view. Subsequent uses of the chosen key combo will be much quicker.

References