Ubuntu install
Ubuntu
We now have a maintained and up to date APT repository for Ubuntu 7.10 (Gutsy) and 8.04 (Hardy). If you have some older version of ubuntu, you can easily upgrade with these instructions: http://www.ubuntu.com/getubuntu/upgrading.
Pick your way below to get started:
Graphically GUI
Go to System → Administration → Software Sources, and click on the Third-Party Software tab. Then, click the ﹢Add button, and paste one of the two lines corresponding to your Ubuntu release (7.10 or 8.04). Finally click the +Add button again and add the second line:
Ubuntu 7.10 "Gutsy Gibbon":
deb http://ppa.launchpad.net/spring/ubuntu gutsy main
deb-src http://ppa.launchpad.net/spring/ubuntu gutsy main
Ubuntu 8.04 "Hardy Heron":
deb http://ppa.launchpad.net/spring/ubuntu hardy main
deb-src http://ppa.launchpad.net/spring/ubuntu hardy main
Then click Close, and Reload. After that's done, head to System → Administration → Synaptic Package Manager, and search for spring. For the bare essentials, you'll need to install the spring, spring-lobby-springlobby, and spring-maps-default. More maps are available there, so check them off if you'd like to get them. After you're done, click on Apply, and Spring will be downloaded & installed.
Spring lobby can be found in Applications → Games. (Please note that you also need mods to play, and they aren't yet available in the repository. Scroll down to the Mods section of this page on how to get those).
Or the terminal CLI
Press alt-F2 to run a command. Enter:
gksudo gedit /etc/apt/sources.list.d/springproject.list
Copy and paste the following into the file:
Ubuntu 7.10:
deb http://ppa.launchpad.net/spring/ubuntu gutsy main
deb-src http://ppa.launchpad.net/spring/ubuntu gutsy main
Ubuntu 8.04:
deb http://ppa.launchpad.net/spring/ubuntu hardy main
deb-src http://ppa.launchpad.net/spring/ubuntu hardy main
Save the file. You can then either use the graphical package manager Synaptic (System->Administration->Synaptic Package Manager) and search for spring related packages, or just install spring from a terminal using:
sudo apt-get update
sudo apt-get install spring spring-lobby-springlobby spring-maps-default
Other packages are available in the repository. If you want to download a few maps, for instance, you can do following:
sudo apt-get install spring-maps-1v1 spring-maps-teamplay spring-maps-hunterw spring-maps-deltasiege spring-maps-smallsupreme
Other information
The webpage for the repository is here - you can browse other spring packages there as well: https://edge.launchpad.net/~spring/+archive
For configuring the lobbies, you can note that the package installs the Spring executable at /usr/games/spring and
read-only data in /usr/share/games/spring.
IF the above do not work, read the following forum post regarding downloading Spring using the Synaptic Package Manager (GUI). Download using Synaptic Package Manager
Finalizing installation
You should have Spring installed by now; if not, please see the SetupGuide.
Maps & Mods
Since Spring is only an engine, you need to download games for it, and the maps that go with those games.
SpringLobby will automatically do this for you when you attempt to join a game with a map or mod that you do not currently have, using an integrated downloader.
If you want to download it manually or browse existing maps, there are several easy to use websites:
Pick any of those sites, download a map or mod, and then double click it. This will move it to your Spring folder, using the spring map/mod installer program. If you wish to move maps/mods by hand, they are located under ~/.spring/maps/ or ~/.spring/mods/ (if the folder does not exist - create it). Do not unpack the file in any way though, just download and save it. Reload your maps/mods in SpringLobby, (Tools - Reload maps/mods) and they will be ready to use.
These sites also may provide other neat things like Lua widgets, epic replays, AI bots (for playing offline or to team up on with a friend). Generally the installation requires you to download the file and place it in the appropriate folder in your ~/.spring directory. (you may have to create the folder)
Hint: If you know the name of the map you want, there is a Search function provided in those websites. Just write a part of the name, like one word, and you will easily find the map you were looking for.
Linux specific Troubleshooting
Ingame
Slow Mouse
Run:
echo '# Slow fullscreen cursor fix for Spring' >> ~/.xsessionrc
echo 'SDL_MOUSE_RELATIVE=0' >> ~/.xsessionrc
echo 'export SDL_MOUSE_RELATIVE' >> ~/.xsessionrc
And log out and log in again.
The mouse should now be as fast as in windowed mode.
Rotating Buildings
You can rotate a building before you give the build order, but the keys that do this do not work in Linux by default for some users. Issue the following commands in the beginning of the game:
/bind keycodex buildfacing inc
/bind keycodey buildfacing dec
Keycodex and keycodey above are just placeholders. What you want to write depends on which key you want to use. To see what keycodes any keys have, do:
/keydebug yes
And then hit the keys you want to use, and spring prints the keycodes in the message buffer.
If you want to save these keys you have to edit the uikeys.txt.
Problems with Audio
The engine needs at least OpenAL Soft 1.6 for its sound. If you still have the old openal-0.0.8 installed, you should update it.
Additionally, pulseaudio causes lots of issues, so try to disable it for spring if you have sound problems.
Desync in game
Spring only send the commands and not the result over the network, so it needs to run all math in a repeatable manner, so all other clients in a multiplayer match get the same results. So some CPU specific features have to enabled/disabled. If you desync, you either have a CPU that is not SSE1 capable, or you set the wrong -march/-mtune compiler flags. If you compile Spring via CMake, remove CMakeCache.txt, and leave the march flag at the default.