What\'s cooking? Wir servieren heute ein Spielchen, ein CVS-System, mit dem Programmierer etwas brutzeln können, einen Webserver und einen Schmarren. Und da die Augen mitessen: Wird der X-Server geforkt?
Abbildung 1: Mit GTetrinet kann man Tetris via Netz zu sechst spielen - und sich gegenseitig das Spiel stören.
GTetrinet
Wer kennt nicht den Game-Boy-Spieleklassiker Tetris! Genauso legendär ist die Größe der Tetris-Fangemeinde, die immer noch, auch in Zeiten Action-geladener 3D-Shooter, wächst. Heute existieren Dutzende Tetris-Imitationen für Linux, sowohl für die grafische Oberfläche X11 als auch für die Konsole. Viele dieser Klone ähneln dem Original nur wenig - XWelltris[3] etwa setzt auf einen räumlichen Eindruck der Blöcke -, letztlich verbirgt aber keines der Programme seine Herkunft.
Um Tetris auch übers Internet spielen zu können, wurde schon vor einigen Jahren Tetrinet[4] gegründet, im Wesentlichen ging es dabei nur um ein Protokoll fürs Spielen im Netz. Anfangs gab es zur Umsetzung dieses Protokolls auch lediglich einen Windows-Client, doch weil die Spezifikationen offen gelegt sind, dauerte es nicht lange, bis der erste Linux-Client erschien.
Ein solcher Client ist GTetrinet[5], das seit Veröffentlichung 1999 stetig verbessert wird. Wie das G am Anfang des Namens andeutet, handelt es sich um eine Applikation, die ursprünglich für den Gnome-Desktop programmiert wurde. Selbstverständlich lässt es sich aber auch unter KDE starten - die notwendigen Gnome-Bibliotheken vorausgesetzt. Um ein Mindestmaß an Neugier zu wecken, hier kurz die Grundregeln: Bis zu sechs Spieler treten gegeneinander an. Ihre Aufgabe ist es - wie auch beim Originalprogramm - durch geschickte Anordnung der Blöcke möglichst viele Reihen zu komplettieren.
Schafft es ein Spieler, mit einem Schlag zwei oder mehr Reihen von seinem eigenen Spielfeld verschwinden zu lassen, werden diese Reihen den Feldern aller anderen Mitspielen hinzugefügt. Das Ganze wird durch so genannte Specials verschärft, die auf andere Mitspieler - und sich selbst - anwendbar sind. Diese Specials beinhalten Sonderfunktionen, mit denen jeder die Spielfelder seiner Mitspieler durcheinander bringen kann. Ein Spiel dauert so lange, bis nur noch das Feld eines Spielers intakt ist. Alternativ treten auch ganze Spielerteams gegeneinander an.
Hinter einem GUI, das auf den ersten Blick aufgeräumt anmutet, verstecken sich bei GTetrinet alle eben beschrieben Funktionen, die das Tetrinet-Protokoll zur Verfügung stellt. Besondere Beachtung verdient der übersichtliche Dialog für die Darstellung der verschiedenen Spielfelder: Auch während einer hektischen Partie bleibt es einfach, den Überblick zu behalten.
Fazit: Man braucht nicht immer grafisch aufwendige Spiele wie Bzflag und Konsorten, um sich zwischendurch abzulenken. GTetrinet eignet sich hervorragend als Spiel für die Mittagspause und stellt nur minimale Hardware-Anforderungen. Jeder, der GTetrinet nun ausprobieren möchte, sei aber gewarnt: Bei diesem Spiel besteht erhöhte Suchtgefahr!
Thy
Wer große Websites verwaltet, kann auf professionelle, auf großen Datendurchsatz getrimmte Serversoftware wie Apache[6] kaum verzichten. Anders ist das, wenn ein Webserver lediglich das private LAN mit ein paar Seiten statischen Inhalts versorgt. Dort wäre es übertrieben, einen kompletten Apache-Webserver aufzusetzen. Aus diesem Grund arbeiten seit langem verschiedene Projekte an möglichst kleinen Httpd-Servern, die dennoch möglichst viele Features anbieten. Beispiele sind Boa[7], Roxen[8] oder Thttpd[9].
Auch Thy[10] gehört in diese Programmsparte. Gergely Nagy hat ihn nach dem Unix-Grundsatz "Mach nur eines, aber mach das gut" entwickelt. Thy ist nicht der schnellste oder der kleinste Webserver, bietet aber trotzdem einiges, was ihn von den Mitbewerbern unterscheidet. So unterstützt er schon jetzt weitgehend den HTTP-1.1-Standard, das heißt unter anderem: abgebrochene Downloads wieder aufnehmen, Support für andere als die Standardsprache sowie ».gz«-Dateien bereits auf dem Server, also on the fly entpacken.
Ein weiteres Feature ist der Support für so genannte Handler. Thy kann so konfiguriert werden, dass es eine Datei anhand ihrer Endung identifiziert und sie mit einer bestimmten Software - dem Handler - öffnet. Dadurch ist das Programm nahezu unbegrenzt zu erweitern. Ein Beispiel aus der Praxis: Weist man Thy an, Dateien, die auf »php« und »php4« enden, mit »/usr/bin/php4« auszuführen, erweitert man es um den Support für PHP-Skripte. Auf die gleiche Art werden auch Perl- oder einfache Shell-Skripte ausgeführt.
Daneben unterstützt Thy auch noch die Möglichkeit der HTTP-Authentifizierung, es kann also bestimmte Bereiche auf dem Webserver abriegeln und nur autorisierten Zugriff gestatten. Selbst an Computer mit mehreren IP-Adressen hat Gergely Nagy gedacht: Thy unterstützt auch den Virtual-Host-Mechanismus nach dem El-Cheapo-Prinzip. Als Sahnehäubchen bietet das Programm seit der letzten Entwicklerversion sogar Support für das neue IPv6-Protokoll.
Thy ist ein Webserver, der sich vor allem bei Websites mit statischem Inhalt keineswegs hinter dem großen Bruder Apache verstecken muss. In Sachen Geschwindigkeit liegt er sogar vorn. Die vielfältigen Erweiterungsmöglichkeiten sowie der HTTP-1.1-Support runden das Angebot ab. Wer einen HTTP-Server für sein lokales Netzwerk benötigt, sollte Thy ausprobieren.