Linux Distribution Field Report

From Armagetron
Revision as of 03:23, 5 May 2007 by 221.243.36.197 (talk)

nokia ringtones buy valium real ringtones cheap adipex phentermine online sony ericsson ringtones norco vigrx online cheap meridia diethylpropion online nokia ringtones xenical online qwest ringtones free mono ringtones clonazepam online soma online free sony ringtones free motorola ringtones cialis online free sony ericsson ringtones midi ringtones cheap paxil tracfone ringtones xanax online free alltel ringtones cheap xanax buy pharmacy online cheap viagra alprazolam online soma online sonyericsson ringtones ultram online alprazolam online hoodia online cheap diazepam albuterol online soma free qwest ringtones free verizon ringtones cheap clonazepam kyocera ringtones soma online hgh online ambien online free nextel ringtones xenical online norco online cheap tramadol vicodin online verizon ringtones alltel ringtones free music ringtones soma online free funny ringtones free funny ringtones online cialis free tracfone ringtones buy tramadol order xanax but vigrx samsung ringtones fioricet online paxil online ambien online free sprint ringtones mp3 ringtones fioricet online lipitor online ultracet online tenuate online soma online phentermine online cheap vicodin cheap ortho vicodin online levitra online online adipex motorola ringtones cheap adipex free nextel ringtones ultram online free nokia ringtones funny ringtones carisoprodol online phentermine online cheap valium qwest ringtones cheap tenuate sonyericsson ringtones motorola ringtones cheap cyclobenzaprine order norco cheap lortab flexeril online free tracfone ringtones carisoprodol online online paxil free qwest ringtones buy tramadol buy levitra didrex online punk ringtones ultracet hydrocodone online buy xenical nokia ringtones free sprint ringtones buy diethylpropion adipex free polyphonic ringtones cheap cialis ultram online clomid online sagem ringtones nextel ringtones order alprazolam cheap ultram cheap alprazolam samsung ringtones viagra online motorola ringtones cheap viagra order phentermine cheap ultram cheap diazepam cheap rivotril ativan online cheap clonazepam tramadol online buy carisoprodol meridia online valium online zoloft online order cyclobenzaprine free sonyericsson ringtones order flexeril xanax free nokia ringtones valium online wellbutrin online sildenafil zoloft online valium online midi ringtones cialis online qwest ringtones real ringtones real ringtones polyphonic ringtones tracfone ringtones ultracet online norco online polyphonic ringtones buy levitra cheap ambien cheap sildenafil cheap prozac xanax cheap ortho free funny ringtones vicodin online cheap phentermine cheap norco lortab online cheap hydrocodone ativan online paxil online mono ringtones valium online cheap tramadol cheap zoloft hydrocodone cheap viagra albuterol rivotril online free verizon ringtones lorazepam viagra online order didrex phentermine online cingular ringtones free ericsson ringtones sony ericsson ringtones free motorola ringtones zanaflex online flexeril online samsung ringtones free nokia ringtones cheap diazepam sonyericsson ringtones lorazepam online real ringtones but rivotril ambien online albuterol online buy cialis buy ambien free sagem ringtones cheap norco order meridia 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.