This wiki has been moved to into the mediawiki branch.


From SuperTux
Revision as of 12:06, 31 January 2011 by Sik0fewl (Talk | contribs)

Jump to: navigation, search


SuperTux development is coordinated with the help of the Subversion version control system. In a nutshell, it's a file-storing facility that can be used by multiple users simultaneously, keeping track of changes and archiving old versions of files. You can find out more about Subversion in general on their homepage.

Getting the data (anonymous read-only access)

Anonymous read access to the repository is granted to everybody. Once you have installed Subversion, all you have to do to get your hands on the data is to use the following command:

svn checkout

This will create a new directory named supertux which contains the latest versions of the SuperTux source code and data. Once this is complete, you can use

svn update

inside the supertux directory to update to the latest version in the repository. This will only download changed files to save bandwidth.

Locations inside the Subversion repository

Checking out the path above will get you all you need to contribute to SuperTux. However, if you don't want to check out the entire repository, you can just check out the pieces you need. For example, the media directory is notably large and it only necessary if you are working on sounds or graphics. Website source Additional media files, including source files for audio and graphics Latest SuperTux source SuperTux Milestone 1 source SuperTux Portable Official SuperTux level editor that runs under both Mono and MS .NET. SuperTux Milestone 1.9 branch

Creating Patches

There's a whole section about creating patches.

Web Access

If you just want to browse through the source a bit, then you can use the Repository HTTP Interface which should work well with your web browser.

Developer SVN access

If you have submitted some good patches and want to get actively involved in the SuperTux project, contact us for write access to the repository. You will then have to issue the following command in the supertux directory:

svn switch --relocate \

After running an svn update to make sure everything went smoothly, you can start checking in your changes:

svn commit -m "Totally changed src/main.cpp to implement HTCPCP!"

If you only want to commit changes to some files, add their names to the end of the command.

Move from BerliOS

Contact sik0fewl to get developer access if you used to have it on BerliOS. Also sik0fewl is responsible for adding new developers (but other developers have to agree with it first).

When switching to the new SVN from BerliOS (using switch --relocate) make sure to be on revision 4542 - NOT any later revision (else you will get a checksum error). You can use svn update -r4542 to downgrade.

Ubuntu Repository

An Ubuntu repository for the SVN version of SuperTux exists as a Launchpad PPA To install SuperTux from this repository, add ppa:stownsend42/supertux-svn to your Software Sources, then install the supertux-svn package. At this time, new packages are only being built for lucid (10.04) and maverick (10.10).


If anyone else would like to take up this project, please feel free to do so. If you need help, contact me at

Debian Repository

First add the public key to authenticate the repository by running the following:

wget -q -O- | sudo apt-key add -

Then add the following to your repository sources (/etc/apt/sources.list or your favorite editor)

deb VERSION contrib

Replace VERSION with your Debian version, e.g. lenny/squeeze/sid or stable/testing/unstable.

Finally, install the "supertux-svn" package.

Gentoo Users

If you would like to have a clean system-wide installation of the development version of supertux, you can grab the live ebuild and patch. If you need help using this, contact ohnobinki on #supertux.

If you have layman set up, you may just grab my overlay although it includes just a few other things than the live supertux ebuild.