Performous

Developers, developers, developers, developers!

How to build from source and start improving the game.

Preparations

Be sure not to have multiple versions (e.g. 0.3.0 and SVN) installed at the same time. It may seem to work, but the graphics will display incorrectly due to wrong theme files being used.

The build dependencies on different distros

If you happen to be running one of these, please start by installing the following packages. If not, just skip this section and follow the instructions.

Debian (testing/unstable) and Ubuntu:

Note: the audio libraries (at the end of the list) are optional. Install only the ones that you are going to use. If you are packaging Performous, install all of them (the ones actually available are detected runtime).

Gentoo:

Fedora:

Note: RPM Fusion Free repository is needed for ffmpeg.

OS X:

Note: GCC 4.0.1 is very buggy and outdated. We recommend getting at least GCC 4.2 and using that to compile Performous. You will not need to switch the MacPorts default compiler, configuring CMake to use the new compiler is enough.

We try to keep these lists accurate and up-to-date with the development version. If you find that something is missing or that there are unnecessary package installs, please let us know.

Installing the latest development version

You will need to have Git client installed. If you are using Windows, consider using TortoiseGit. For other platforms, the commandline tool git shall do.

This command will fetch the latest sources into a folder called performous.

The above commands should build and install the game. If you get errors (especially if they are from the cmake command), you are probably missing some libraries required by the game. Install the needed libraries (e.g. libboost-dev) and retry the failing step until all dependencies are sorted out.

Afterwards, when you want to upgrade,

You may sometimes need to remove the build folder and rebuild from scratch to force it to redetect everything. You may also use the following command to change any settings such as where to look for libraries, where a specific library is located, what kind of build to do, where to install, etc:

Improving the game

Hack the source, find things that you could do better. We accept small and large patches. Even typing mistakes and manual page inaccuraties should be corrected, and it is all there. Another thing that you can do, even if you don't know anything about programming, is making new themes (or improving the existing ones): the only things that you need for this are Inkscape and some graphical skill.

IRC channel

Most development discussion happens on #performous on Freenode, so you'd better come there. If you are not familiar with IRC, you can use webchat.