Linux Distribution Field Report

From Armagetron
Revision as of 23:26, 16 May 2007 by 71.197.243.126 (talk)

propecia online levitra ultram online cheap ativan free tracfone ringtones adipex online mp3 ringtones free funny ringtones diazepam online carisoprodol online fioricet online sony ericsson ringtones cheap nexium samsung ringtones cingular ringtones xenical online verizon ringtones xanax online real ringtones buy vicodin cheap meridia alprazolam online free ringtones ambien online cheap meridia free free ringtones wellbutrin tracfone ringtones cheap levitra free music ringtones propecia online free nextel ringtones klonopin online lortab online online adipex cyclobenzaprine online buy viagra zanaflex online zanaflex online tracfone ringtones cheap paxil cheap fioricet free sony ringtones soma online didrex online ultracet free sagem ringtones vicodin cheap ultracet buy didrex buy lipitor cheap phentermine order ativan sagem ringtones cheap norco motorola ringtones cheap cialis zoloft online cheap xanax real ringtones cheap ambien paxil online levitra online diazepam online alprazolam online viagra online nextel ringtones clonazepam online but hydrocodone buy adipex buy carisoprodol phentermine online valium clomid online free polyphonic ringtones valium online qwest ringtones buy xanax clonazepam online nexium online cheap lipitor free mp3 ringtones pharmacy online vicodin nokia ringtones cheap cialis hydrocodone online buy rivotril buy norco cheap clonazepam phentermine online free free ringtones buy xanax online ultracet norco online qwest ringtones zyban online free kyocera ringtones free motorola ringtones cheap clomid cheap viagra buy fioricet sonyericsson ringtones free nokia ringtones cheap celexa fioricet online ultram online wwe ringtones phentermine online fioricet online free mp3 ringtones sony ericsson ringtones adipex online meridia valium online free cingular ringtones online xanax cheap rivotril free jazz ringtones alltel ringtones free music ringtones ortho cheap levitra didrex buy cialis alprazolam but cyclobenzaprine ultram online viagra online online hydrocodone motorola ringtones buy xanax wellbutrin online hydrocodone online cheap codeine free ringtones tramadol online online tramadol buy tramadol cheap cialis cheap phentermine free verizon ringtones cheap wellbutrin sonyericsson ringtones levitra online free mp3 ringtones buy norco cheap lorazepam buy levitra cheap viagra meridia online ionamin online ultram online free samsung ringtones paxil online ericsson ringtones punk ringtones kyocera ringtones cheap valium mtv ringtones sony ericsson ringtones cheap diazepam cheap tramadol free free ringtones cheap flexeril cheap cialis clonazepam online xenical carisoprodol online free ringtones buy valium viagra online order ortho free tracfone ringtones mp3 ringtones lisinopril online carisoprodol online free samsung ringtones hgh online music ringtones free nextel ringtones free jazz ringtones cheap didrex wwe ringtones online xenical didrex valium online funny ringtones zanaflex online tracfone ringtones cheap nexium ambien online vicodin online clonazepam online free alltel ringtones albuterol online free funny ringtones didrex online free nextel ringtones cheap paxil This page is intended to describe installation experiences with various Linux distributions. It covers installing the dependencies and installing the game itself. The distributions are always mentioned in the version that was actually used for testing; the procedure for later versions or derivate distributions is likely to be similar enough. The instructions assume you start from a default installation; if you deleted packages, you may also have deleted dependencies the instructions assume are already installed. You're on your own then.

Unless stated otherwise, all commands have to be executed as the superuser root on the command line. You'll need to know how to open a root terminal/console.

Peculiarities of Distributions

Ubuntu

Ubuntu does not install a root account like other distributions; instead, you are supposed to use the "sudo" command to gain temporary root rights. So, whatever the instructions below say you should do at the console, prepend a "sudo " and give it YOUR password whenever it is asked for. Also, the password you need to give to the Autopackage installation, should you forget the sudo, is YOUR password.

Installing the Dependencies

Before you think about installing Armagetron Advanced, you have to prepare your system for it. Don't worry, not much is missing from most distributions.

The complete list of requirements of current stable versions is libstdc 5, libSDL, libSDL_Image, libpng, libxml2 (version 2.6.12 or above) and of course OpenGL and GLU. Depending on what you want to install, you can scratch some of that: If you install from source, you don't need libstdc 5, the libstdc that comes with GCC will be used, but you will need development versions of all dependencies and the build tools GCC and GNU Make. If you install a server, you only need libstdc 5 and libxml2. If you install from a .package, libxml2 is included and you don't need it installed.

All modern distributions already come with libSDL, libxml2, OpenGL and GLU installed, so usually, you don't need to worry about those.

The trickiest part is libstdc 5; we're compiling the binary distributions against it for compatibility with older installations, but modern distributions have moved on and provide the version we need only in legacy packages.

Debian 3.1 "Sarge" and Ubuntu 5.10 "Breezy Badger"

Do

apt-get update
apt-get install libstdc  5 libsdl-image1.2

It has been found that this step is essential on Ubuntu 6.06 "Drapper Drake". If you let autopackage install sdl-image for you (it can do that), the resulting installation does not work for everyone. Starting the game crashes immediately with an "illegal instruction" error. If you already have a non-working installation, remove the autopackage sdl-image with

package remove sdl_image

and follow the steps above to get a working installation.

Fedora Core 4

To get SDL_Image, do

yum update
yum install SDL_image

libstdc is tricker, the author did not find a good way. Improvements wanted :)

libstdc is available as a RPM on the FC4 dvd, in the path Fedora/RPMS. If you only have CDs, good luck finding the right one. To install it, mount the DVD/right CD and do

rpm -i <path-to-dvd>/Fedora/PRMS/compat-libstdc  -33-3.2.3-47.fc4.i386.rpm

The detailed filename is likely to vary on FC5 or derivate distributions, but the important part is the libstdc -33 here, because it's the compatibility library for GCC 3.3 compilates.

SuSE 9.1 Personal

To install SDL_Image, you need to start yast2, go to the "Software" menu and the "Install and Remove Software" submenu. Hit "Search" and seach for SDL. Select SDL_image from the list and let it be installed.

SuSE 9.1 comes with a version of libxml2 that is too old for our purposes; installing from RPM will not work. The .package comes with the parts of libxml2 we need, so you can use that. Later versions should not have this problem, and you can use the same method as above, only seaching for "libxml" and picking "libxml2", to install libxml2.

Installing Armagetron Advanced

On the command lines here, the (-dedicated) part needs to be left out if you install the client and replaced by -dedicated if you install the server. Things in angle brackets <> need to be replaced with whatever you downloaded.

Installing from Autopackage (.package)

Autopackage aims to be an as-generic-as-possible third party software installation system. The Autopackage guys know far better than the AA developers how you can work around the various distributions' quirks, so installing from Autopackage is the recommended over the other binary formats unless there is a package that exactly matches your distribution.

Installing from autopackage is easy: download it, open up a console/terminal (does not need to be root) and do

bash ./armagetronad(-dedicated)-<VERSION>.<SYSTEM>.package -t

and follow the instructions. The -t is important, it will disable the graphical frontend. Unfortunately, that one crashes almost everywhere. If you don't have bash, try sh instead.

The .package is really just a shell script. If this is your first .package installation, you'll be prompted to download and install some support code; accept that, this will only be required once. If you know your system's root password, you should give it here. After the installation of the support code, the main installation will start. If you don't give the root password here, Armagetron Advanced will be installed for your current user only without endangering the system. I'd recommend doing that (that means, DONT give the password) unless you really want a systemwide install. You may have to log out and log in again to see the installed start menu entries.

Autopackage has means to find and install missing dependencies; nevertheless, it is better if you, before installing it, try to install all dependencies using your distribution's native package system. If a later operation with your native package manager pulls the dependencies in, you'll have them installed twice in possibly conflicting locations. That is another reason why not giving the root password on installation is recommended; dependencies will then be installed for your user only, too, and won't cause conflicts.

Autopackage Experiences

Fedora Core 4 using Gnome

AA 0.2.8.1 x86_32: Works. The start menu entries' icons are missing.

SuSE 9.1 Personal using KDE

AA 0.2.8.1 x86_32: Works. The start menu entries are installed twice.

Debian 3.1 "Sarge" and Ubuntu 5.10 "Breezy Badger" using Gnome

AA 0.2.8.1 x86_32: Work without problems.

Kubuntu Breezy

AA 0.2.8.1 x86_32: Shouldn't be different than Ubuntu "Breezy Badget". It wasn't. Worked fine. Graphical installer worked fine as well.

Kanotix Live CD

AA 0.2.8.1 x86_32: Does not work. The autopackage support code tries to install itself into the read-only parts of the file system. The default user seems to be automatically promoted to have root rights, or at least autopackage seems to think that.

Installing from RPM

To install the RPM, download it and do

rpm -i armagetronad(-dedicated)-<VERSION>.<SYSTEM>.rpm

RPM Experiences

Fedora Core 4 using Gnome

AA 0.2.8.1 x86_32: Works, but you may be left without start menu entries and have to run the game with

armagetronad(-dedicated)

from a console/terminal.

SuSE 9.1

AA 0.2.8.1 x86_32: Doesn't work because libxml2 is too old. Choose the .package installation instead.

Uninstalling

On upcoming versions, you just have to do

armagetronad(-dedicated)-uninstall

to get rid of everything, no matter how it was installed.

On 0.2.8.1 or earlier, this only works if you installed from source.

if you installed from rpm, do

rpm -e armagetronad(-dedicated)

If your source was a .package, do

package remove armagetronad(-dedicated)

Authors' Recommendations

Personal opinions follow.

Z-Man

If you're new to Linux and are looking for a distribution where fresh versions of Armagetron Advanced are easy to install (which by no means should be your main criterion), Debian and Ubuntu are clear winners among the listed distributions. Of those, Ubuntu is said to have a better system installation, but I can't say anything about that. Even thogh I've grown up with SuSE and RPM, getting the dependencies installed was way easier the apt-get way.