Installation - felixfung/skippy-xd GitHub Wiki

Install from your distro/favourite package manager

Go to your distro to check for package availability, or go to https://github.com/felixfung/skippy-xd/releases/latest to find a package applicable to you. Better yet, share the good news of skippy-xd, and become the packager!

Compile from source

First of course clone the repo:

git clone https://github.com/felixfung/skippy-xd.git
cd skippy-xd

Build dependencies

Build tools:

pkg-config
meson
ninja

Required libraries:

libX11
libxft
libxrender
libxcomposite
libxdamage
libxfixes
libxext

Optional libraries:

xinput
libgif
libpng
libjpeg
libxinerama
libchipmunk

Optional dependencies

These optional dependencies can be enabled/disabled, by changing meson.options entries between enabled and disabled. While they can be disabled, there are no real, practical reasons (dependency, performance, footprint, aesthetic or other reasons) not to enable any of these optional dependencies. All options are strongly encouraged to be enabled for these functionalities:

Library Use Further reading
xinput for mouse pivoting https://github.com/felixfung/skippy-xd/wiki/Advanced-Uses-and-Special-Set-Ups#mouse-pivoting
libgif for gif support
libpng for png support
libjpeg for jpeg support
libxinerama for multimonitor support
libchipmunk for perfect cosmos algorithm https://github.com/felixfung/skippy-xd/wiki/Cosmos

Out of these, libchipmunk offer library vendoring, so that if the library is not found in the system, libchipmunk is cloned, built, and linked to skippy-xd. Overall, libchipmunk come with these possibilities:

  • disabled, do not link to libchipmunk.
  • auto, link if system library is found.
  • enabled, link if system library is found; otherwise clone, build, link with libchipmunk.

meson

Use meson to build relevant files.

meson setup build --prefix=/usr
meson compile -C build

Optionally run this command to install relevant files

meson install -C build

Check

Run this to verify compiled dependency

skippy-xd --help

Example relevant output:

Mouse pivot: Yes
  Compiled with xinputlib 2.4.

GIF support: Yes
  Compiled with giflib 6.1.3.

JPEG support: Yes
  Compiled with libjpeg-turbo 3.1.4.1.
  JPEG API compatibility level: 80.

PNG support: Yes
  Compiled with libpng 1.6.58.
  Compiled with zlib 1.3.2.

Multi-monitor support: Yes
  Compiled with xinerama.

Cosmos support: Yes
  Compiled with chipmunk2d 7.0.3.

Post-Installation: environment specific setup

After installation, see https://github.com/felixfung/skippy-xd/wiki/Adoption#compatible-desktop-environmentswindow-managers for configurations specific to your environment.