I have no idea how such a great open-source game as Teeworlds has been able to exist without me hearing about it until recently.
Teeworlds is a fast-paced realtime multiplayer shooter. You control a small "Tee" which can hold various weapons (hammer, gun, shotgun, laser-rifle, rocket launcher, ninja-sword) while running and jumping around frantically on the map, trying to frag as many other Tees as you can before you're killed by some other guy. Easy, eh?
There's are many game servers to choose from, as well as various game modes (death match, team death match, capfure the flag and some unofficial "mods"). You can join servers on the Internet, or create your own server, be it a public one or a LAN server.
Usually I would suggest apt-get install teeworlds, but for now the packages in unstable are an older 0.4.x version, whereas upstream released a much-improved 0.5.1 version. I have already filed a bug and I'm optimistic there'll be a new version in unstable soon.
In the mean-time however, you can manually build the game from source via:
$ apt-get install zlib-dev libsdl1.2-dev (maybe also libgl, libglu, and python, if not already installed) $ wget 'http://teeworlds.com/trac/bam/browser/releases/bam-0.2.0.zip?format=raw' -O bam-0.2.0.zip $ wget http://teeworlds.com/files/teeworlds-0.5.1-src.zip $ unzip bam-0.2.0.zip $ unzip teeworlds-0.5.1-src.zip $ cd bam-0.2.0 $ ./make_unix.sh $ cd ../teeworlds-0.5.1-src $ ../bam-0.2.0/src/bam release
You'll obviously need a working OpenGL/DRI setup (check if "glxinfo | grep direct" says "Yes"), otherwise the game will be way too slow. In case you experience graphics glitches and distortions, first exit the game, then:
$ vi ~/.teeworlds/settings.cfg
Change the "gfx_noclip 0" option there to "gfx_noclip 1" and restart the game.
If you use a local firewall as I do, you need to open at least ports 8300-8303 (UDP), even better 8300-8310 for more choice in game servers:
$ iptables -A OUTPUT -m state --state NEW -p udp --dport 8300:8310 -j ACCEPT
I got bored recently, so I rebuilt the whole Debian archive on one of my machines. To make this not a completely useless excercise, I used the Open64 compiler instead of gcc and created build logs for your perusal.
So what is Open64?
From the Wikipedia page:
Open64 is an open source, state-of-art, optimizing compiler for the Intel IA-64 (Itanium), AMD Opteron and Intel IA-32e architecture. It derives from the SGI compilers for the MIPS R10000 processor. It was released under the GPL in 2000, and now mostly serves as a research platform for compiler and computer architecture research groups. Open64 is licensed under the GPL. Open64 supports Fortran 77/95 and C/C++, as well as the shared memory programming model OpenMP. It can conduct high-quality interprocedural analysis, data flow analysis, data dependence analysis and array region analysis.
The installation is pretty easy fortunately:
$ wget http://ovh.dl.sourceforge.net/sourceforge/open64/open64-4.0-src.tar.bz2 $ tar xfvj open64-4.0-src.tar.bz2 $ cd open64-4.0 $ export TOOLROOT=/opt/open64 $ make $ make install (as root)
I think you need gcc-3.4 (gcc 4.x is not yet supported), and for some odd reason you also need csh as one of the install scripts seems to use it.
It would be nice if someone could package Open64 for Debian, I definately don't have the time to maintain such a huge package (a whole maintainer team would probably be good here).
Rebuilding the Debian archive
First we need to install the required packages, setup a cowbuilder base chroot, and get the list of packages:
$ apt-get install cowdancer grep-dctrl wget devscripts sudo $ cowbuilder --create --distribution lenny --basepath /var/cache/pbuilder/testing-base.cow $ cp -r /usr/share/doc/pbuilder/examples/rebuild . $ cd rebuild $ ./getlist lenny
Now we add Open64 into the cowbuilder chroot and fix up the chroot by pointing the gcc/g++ symlinks to Open64:
$ cp -a /opt/open64 /var/cache/pbuilder/testing-base.cow/opt $ chroot /var/cache/pbuilder/testing-base.cow $ cd /usr/bin $ mv gcc gcc.orig $ ln -s /opt/open64/bin/opencc gcc $ mv g++ g++.orig $ ln -s /opt/open64/bin/openCC g++ $ exit
In addition, we set the
CXX environment variables to Open64, which will make 90% of all (autoconf-using) packages automatically use Open64. We need a small script for that:
$ cat c.cfg: export CC="/opt/open64/bin/opencc -m32" export CXX="/opt/open64/bin/openCC -m32"
Now edit the
buildall script. Change the Debian mirror used there (optional) and make it use our
c.cfg script by adding the
--configfile /path/to/rebuild/c.cfg option in the "pdebuild" line.
We can now finally start building the archive:
./buildall list.lenny.i386 lenny
You can also run multiple
buildall instances at once to speed up the archive rebuild on SMP/multicore machines, and you can even abort the command and simply restart it later. The script will continue where it left off.
The whole rebuild (with 2 instances of
buildall running at the same time) took ca. 9 days on an AMD64 Athlon64 X2 (dual core, 1.8 GHz each) machine with 1 GB of RAM.
I really should have used something like apt-proxy to speed up the rebuild and save some bandwidth, but I read about apt-proxy too late...
All log files from my rebuild are available for detailed analysis if anybody is interested (you can browse the logfiles online or download all of them as tarball). I didn't perform any detailed analysis, just some rough numbers here:
If anybody does some more elaborate analysis, please let me know.
OK, I heard lots and lots of stuff about Google Earth so far. Yesterday, I actually installed it on some not-so-free-OS box and gave it a try. Two things are floating on my mind now:
I "browsed" different parts of the world and got more and more fascinated... and scared. For instance you can see the Statue of Liberty, and if you zoom in enough, you see people walking around on liberty island! Nice on the one hand, major security and privacy problem on the other hand.
There are loads of interesting ways to use Google Earth, e.g. over at Google Earth Hacks. I'm afraid most of my spare time during the next few days has just crumbled to dust... Now, if they would only port it to Linux, that'd be really nice...
So I took the Debian Quiz, too.
The result is not too good:
You got 36 of 41 (87.8%) right.
Pretty good. Some answers were still wrong, though.
t0rbad> so there i was in this hallway right
BlackAdder> i believe i speak for all of us when i say...
BlackAdder> WRONG BTICH
BlackAdder> IM SICK OF YOU
BlackAdder> AND YOUR LAME STORIES
BlackAdder> NOBODY HERE THINKS YOURE FUNNY
BlackAdder> NOBODY HERE WANTS TO HEAR YOUR STORIES
BlackAdder> IN FACT
BlackAdder> IF YOU DIED RIGHT NOW
BlackAdder> I DON"T THINK NOBODY WOULD CARE
BlackAdder> SO WHAT DO YOU SAY TO THAT FAG
*** t0rbad sets mode: +b BlackAdder*!*@*.*
*** BlackAdder has been kicked my t0rbad ( )
t0rbad> so there i was in this hallway right