Aktuellen Autobuild von Xonotic über die Paketverwaltung installieren

Über den First-Person-Shooter Xonotic berichtete ich ja bereits. Seitdem hat sich vieles getan, es wurden mit 0.5 und 0.6 weitere Releases veröffentlicht. Viele neue Features kamen hinzu, so kann man jetzt Flug- und Fahrzeuge steuern, es gibt neue Waffen und Maps, neue Game-Modi, neue Bewegungssteuerung, Online-Statistiken für Spieler sowie Client-Side networked players, was die Latenzen bei Netzwerk-Spielen verringern soll.

Wer nun Ubuntu-User ist und das Spiel in der aktuellen Version installieren will, der wird natürlich erst mal zur Paketverwaltung greifen. Mit PlayDeb gibt es auch die passende Paketquelle für. Jedoch befindet sich Xonotic in aktiver Entwicklung, häufig gibt es neue Funktionen, die ausprobiert werden wollen, sodass auf den meisten Servern ein aktueller Snapshot aus dem Development-Repository läuft. Daher ist es ratsam, dieselbe Version einzusetzen, schon um Kompatibilitätsprobleme zu vermeiden. Doch das dauernde Kompilieren des Quellcodes kostet Zeit und nervt irgendwann.

Daher gibt es die Autobuilds, welche das Kompilieren überflüssig machen: Die Xonotic-Server selbst kompilieren den aktuellen Quellcode aus dem Development-Repository für verschiedene Architekturen und bieten das Ergebnis zum Download an. Der User divVerent hat dazu ein Skript geschrieben, welches diese Dateien über rsync herunterlädt. Somit spart man sich Zeit, die für das Kompilieren draufgeht, und hat trotzdem eine tagesaktuelle Version. Zudem lädt rsync nur die Dateien herunter, die sich zur Version auf der Festplatte geändert haben, sodass ein Update blitzschnell vonstatten geht.

Nun gibt es da noch einen Schönheitsfehler: Die Paketverwaltung kommt nicht zum Zug, man muss sich Startskript und Menüeinträge selbst erstellen und alle Dateien an den richtigen Ort kopieren. Also habe ich schnell ein Debian-Paket (.deb) gebaut, welches dies erledigt.

Das Paket installiert folgende Dateien:

  • /usr/games/xonotic: Skript zum Starten des Spiels
  • /usr/local/share/applications/xonotic.desktop: Dazugehöriger Menüeintrag
  • /usr/local/share/pixmaps/xonotic.svg: Icon von Xonotic
  • /usr/local/sbin/update-xonotic: Das eigentliche Update-Skript von divVerent, angepasst von mir, damit es die Dateien nach /opt/xonotic/ installiert.

Nach der Installation wird automatisch update-xonotic aufgerufen, hier wird das eigentliche Spiel das erste Mal heruntergeladen; dies kann, jede nach Internet-Verbindung, ziemlich lange dauern. Das Update erfolgt jedoch wesentlich schneller, einfach

$ sudo update-xonotic

aufrufen und rsync lädt die geänderten Dateien herunter. Wenn das Paket deinstalliert wird, dann wird das Verzeichnis /opt/xonotic und die anderen Dateien wieder entfernt. Im Grunde funktioniert das Paket nicht anders wie flashplugin-installer, ttf-mscorefonts-installer oder nautilus-dropbox, nur dass dort das eigentliche Programm aus lizenzrechtlichen Gründen nicht dem Paket beiliegt, sondern von der Hersteller-Website heruntergeladen wird.

Das Paket funktioniert mit x86 und x86_64, weil für diese Architekturen Autobuilds gebaut werden. Die verwendete Architektur wird vom Skript automatisch erkannt.

Viel Spaß damit.

[Download]

About these ads

7 Gedanken zu “Aktuellen Autobuild von Xonotic über die Paketverwaltung installieren

  1. Danke für dein Paket. Allerdings gibt es unter Debian Wheezy ein Abhängigkeitsproblem:
    Gefordert wird libc6 >= 2.15. Installiert ist allerdings nur Version 2.13. Auch gibt es keine neuere Version in Sid. Wozu wird dieses Paket in der Version gebraucht? Wenn es möglich ist, würde ich mich freuen, wenn du die Abhängigkeit entsprechend nach unten korrigieren könntest.

    • Die Abhängigkeiten meines Paketes hatte ich einfach von den Abhängigkeiten des Xonotic-0.6-Paketes von PlayDeb übernommen. Wahrscheinlich funktioniert auch eine etwas ältere libc, habe die Versionsangabe jetzt raus, probiers doch mal.

      • Funktionert leider noch nicht. Der gleiche Fehler, wie zuvor auch: Abhängigkeit nicht erfüllbar: libc6 (>= 2.15) Hast du die neue Version schon hochgeladen und den Link abgeändert?
        Ich kann mir vorstellen, dass Ubuntu die Versionsnummer ein bisschen hochgesetzt hat, nachdem dort vielleicht noch ein wenig Ubuntu-spezifischer Code eingeflossen ist. Du könntest also die Abhängigkeit auch auf Version 2.13 von libc6 belassen. Aber so wie du es gelöst hast, geht es natürlich auch ;-)

      • Jetzt sollte der Link funktionieren. Ich weiß gar nicht, welche libc-Version Xonotic im Moment benötigt, aber da es ein täglicher Autobuild ist, kann sich das ohnehin jederzeit ändern, sodass die genauen Versionsangaben weniger wichtig sind.

  2. Kann es sein das du die rsync-Abhängigkeit rausgenommen hast? Nachdem ich rsync manuell installiert hatte, hat es ohne Probleme funktioniert. Danke.

    • Nope, dass hatte ich sogar vergessen, ich dachte nur an die Abhängigkeiten von Xonotic, das Skript hat ja auch eine (nämlich rsync).

Die Kommentarfunktion ist geschlossen.