Ubuntu Installation

= Debian users = All of the instructions below should also just work fine for Debian systems. When you have to select your "Ubuntu Version", pick something reasonably old. Here's a list of them, with release dates. You'll also need to follow the complicated instructions, manually adding the ppa to sources.list.

Translation list:
 * for Debian 6 (squeeze), pick the 'maverick' Ubuntu build.
 * for Debian 5 (lenny), pick the 'hardy' Ubuntu build. Note that the -experimental package with trunk builds is not available and cannot be made available in any convenient way because both are missing libprotobuf.

= Quick and Lazy: use binaries from our PPA =

Preparing your System
Our Personal Packet Archive is here. Instructions how to activate it are there, too, but since this section is for the lazy, here's what you need to do: type sudo add-apt-repository ppa:armagetronad-dev into a console. This works for Lucid and up, so probably everyone by now. For hardy, there is still

The Complicated Way, for Hardy
First, you need to edit /etc/apt/sources.list and add the lines deb http://ppa.launchpad.net/armagetronad-dev/ppa/ubuntu YOUR_UBUNTU_VERSION_HERE main deb-src http://ppa.launchpad.net/armagetronad-dev/ppa/ubuntu YOUR_UBUNTU_VERSION_HERE main YOUR_UBUNTU_VERSION_HERE is the short codename of your Ubuntu version, for example hoary, jaunty or karmic. Then, to avoid warnings about unknown signatures, you need to enter into a command line shell sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 98E6A0F3 sudo apt-get update You only have to do the above steps once, you just may need to update the Ubuntu version whenever you upgrade your system (though I think that's handled automatically).

Installing the Stable Version
Is simple! To get the latest stable client, just enter the command sudo apt-get install armagetronad or, for the server, sudo apt-get install armagetronad-dedicated In the console. Your favourite package installation GUI should now also show our the armagetronad(-dedicated) packages. Your standard system update mechanism ("sudo apt-get update; sudo apt-get upgrade" for console freaks) will inform you when a new version is available. As soon as Ubuntu picks up our latest stable version into your distribution, the official Ubuntu build will replace our build.

Currently supported Ubuntu versions: Hardy Heron (8.04) and up.

Current Armagetronad version: 0.2.8.3

Future: at some point, we'll switch to 0.4 for the latest stable version; we'll have to leave older Ubuntu versions behind, then, they'll be stuck with 0.2.X. Those versions will still receive any bugfix updates we release, of course.

Other Versions
Other versions are distinguished by their package name. They do not share configuration data with the official releases or with each other so fatal bugs don't wipe out your precious instant chats (though you can make them share configuration by linking the ~/.armagetronad directories with each other if you wish) and can be installed in parallel without file system conflicts.

Armagetron Beta
consists of managed builds from stabilization branches, currently 0.2.8.3 leading to 0.2.8.3.2. Package names are armagetronad-beta(-dedicated). They should be reasonably safe to use for all purposes and any bugs they have anyway should be reported ASAP.

Armagetron Alpha
consists of automatic or early builds from stabilization branches, currently branch 0.2.8 leading to 0.2.9 (if anything). Package names are armagetronad-alpha(-dedicated). They may be a bit buggy, essentially like arbitrary snapshots from the stabilization branch. Use them if you want to help iron out bugs as early as possible before they enter beta builds. If you run servers with those builds, monitor them tightly for potential problems.

Armagetron Experimental
consists of builds from the trunk. New features may enter here any time in arbitrary broken state. Package name armagetronad-experimental(-dedicated). Use in production servers is not encouraged for anyone. Run those versions if you want to help shape new features before they get frozen in a bug-free, but useless state.

Armagetron Sty+CT
consists of builds from the sty+ct branch based on 0.2.8.Package name armagetronad-styct(-dedicated). This is the one with the crazy zone based game modes (shooting, ctf, styball) and limited scriptability.

Armagetron Sty+CT+AP
consists of the builds from sty+ct+ap branch based on 0.2.9. Package name armagetronad-styctap(-dedicated). This is the one with the functionality of sty+ct PLUS the features that aren't such as MAP/CONFIG_ROTATION, MAP/CONFIG_ QUEUING, teleport, death team zones for maps and many more!

= Building from Source =

Seen on forums written by ed:

grab some dependancies, make sure universe repos are enabled in your sources.list

For older Ubuntu Versions (<9.04)
Older versions don't have the versions of bzr available that are needed to fetch our current sources, so you need to point them to where they can get a good version. Add these lines to your /etc/apt/sources.list deb http://ppa.launchpad.net/bzr/ubuntu hardy main deb-src http://ppa.launchpad.net/bzr/ubuntu hardy main then sudo apt-get update

Get Dependencies
grab some dependancies, make sure universe repos are enabled in your sources.list (The code should all be typed on one line) sudo apt-get install bison automake g++ python libxml2-dev libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libfreetype6-dev libftgl-dev libglew1.5-dev libpng12-dev libboost-dev libprotobuf-dev protobuf-compiler libboost-thread-dev Checkout the latest 0.4 build from bazaar.. bzr co lp:armagetronad cd armagetronad then compile... ./bootstrap.sh ./configure make sudo make install