{{{#!vorlage Warnung Die Verwendung dieses Howto geschieht auf eigene Gefahr. Bei Problemen mit der Anleitung melde dies bitte in der dazugehörigen Diskussion und wende dich zusätzlich an den Verfasser des Howtos. }}} {{{#!vorlage Hinweis Diese Howto-Anleitung wurde zuletzt von [user:praseodym:] am 23.05.2021 unter '''Ubuntu 20.04''' erfolgreich getestet. }}} [[Inhaltsverzeichnis(1)]] [[Bild(./avatar.png,40,align=left)]] [https://www.hard-light.net/forums/index.php?topic=94068.0 Knossos] {en} ist ein kombinierter Starter und Installer für [https://wiki.ubuntuusers.de/Spiele/Freespace%202/ Freespace 2] und die unter [https://wiki.ubuntuusers.de/Spiele/Freespace_2/Total_Conversions/ Total Conversions] genannten [https://wiki.ubuntuusers.de/Spiele/The_Babylon_Project/ Babylon Project], [https://wiki.ubuntuusers.de/Spiele/Diaspora/ Diaspora], aber auch für [https://wiki.ubuntuusers.de/Spiele/Wing_Commander_Saga_-_The_Darkest_Dawn/ Wing Commander]. Die einzelnen Kampagnen ("mod" genannt) benötigen verschiedene Ausgabestadien der fs2_open Engine oder der Spieleverbesserungen ("mediavps") oder anderer Abhängigkeiten. Updates müssen ansonsten prinzipiell von Hand geprüft und nachinstalliert werden, das geht einfach per Mausklick. Für Bug-Reports, Upload derselben oder File-Integritätsprüfungen stehen komfortable Menüführungen zur Verfügung, die selbsterklärend sind. Spieleengines müssen nicht mehr mühsam selbst kompiliert werden, sondern sind Teil des jeweils aktuellen "mod"-Paketes. {{{#!vorlage Tabelle [[Bild(Knossos.png, x200)]] <:>[[Bild(Knossos-alle_Mods.png, x200)]] +++ <:>GUI <:>Mods }}} = Anleitung = == Installation aus DEB-Paket == Seit kurzem gibt es auch ein DEB: {{{#!vorlage Befehl wget https://pxo.nottheeye.com/files/test/knossos/knossos_0.15.0-dev+73b131a_all.deb sudo dpkg -i knossos*.deb }}} Es wird ein Starter angelegt. Sollte eine bereits vorhandene Version (s.u.) installiert sein, werden die installierten Mods automatisch erkannt (getestet unter 20.04). == Ubuntu 18.04 == '''libpng12-0''' ist unter 18.04 nicht vorhanden und muss von Hand nachinstalliert werden: 32bit: {{{#!vorlage Befehl wget https://launchpad.net/~ubuntu-security/+archive/ubuntu/ppa/+build/15108507/+files/libpng12-0_1.2.54-1ubuntu1.1_i386.deb }}} 64bit: {{{#!vorlage Befehl wget https://launchpad.net/~ubuntu-security/+archive/ubuntu/ppa/+build/15108504/+files/libpng12-0_1.2.54-1ubuntu1.1_amd64.deb }}} Installation: {{{#!vorlage Befehl sudo dpkg -i libpng12-*.deb }}} === PPA === Hier kann man Knossos 0.13.3 über ein PPA installieren: [[Vorlage(PPA, ngld/knossos)]] {{{#!vorlage Paketinstallation knossos }}} === Aus dem Quellcode === {{{#!vorlage Paketinstallation nodejs npm python3-wheel python3-setuptools pyqt5-dev pyqt5-dev-tools qttools5-dev-tools qt5-default curl python3-pyqt5.qtwebengine python3-pyqt5.qtwebchannel python3-requests-toolbelt python3-ply }}} Dann die folgenden Befehle ausführen: {{{#!vorlage Befehl wget http://ppa.launchpad.net/ngld/knossos/ubuntu/pool/main/p/python3-semantic-version/python3-semantic-version_2.3.1-1_all.deb wget http://ppa.launchpad.net/ngld/knossos/ubuntu/pool/main/k/knossos/knossos_0.13.3-1~cosmic1_all.deb wget http://ppa.launchpad.net/ngld/knossos/ubuntu/pool/main/p/python3-token-bucket/python3-token-bucket_0.2.0-1_all.deb wget http://de.archive.ubuntu.com/ubuntu/pool/universe/p/python-raven/python3-raven_6.3.0-2_all.deb curl https://raw.githubusercontent.com/pypa/pipenv/master/get-pipenv.py | sudo python3 curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list sudo apt update && sudo apt install yarn pipenv install yarn install sudo dpkg -i *.deb echo 'exec python3 /usr/share/knossos/knossos/__main__.py "$@"' | sudo tee /usr/bin/knossos #das ist ein Bug gewesen }}} == 20.04 == === Aus dem Quellcode === '''libpng12-0''' ist unter 20.04 nicht vorhanden und muss über ein PPA nachinstalliert werden: {{{#!vorlage Paketinstallation python3 build-essential libasyncns0:i386 libavahi-client-dev:i386 libc6:i386 libcaca0:i386 libdbus-1-3:i386 libflac8:i386 libgcc1:i386 libglu1-mesa:i386 libjansson4:i386 libjpeg-turbo8:i386 liblua5.1-0:i386 libncursesw5:i386 libogg0:i386 libopenal1:i386 libpulse0:i386 libpulse-dev:i386 libsdl1.2debian:i386 libsdl1.2-dev:i386 libslang2:i386 libsndfile1:i386 libstdc++6:i386 libtheora0:i386 libtinfo5:i386 libvorbis0a:i386 libvorbisenc2:i386 libvorbisfile3:i386 libwrap0:i386 libx11-6:i386 libxau6:i386 libxcb1:i386 libxdmcp6:i386 libxext6:i386 zlib1g:i386 python3-wheel python3-setuptools pyqt5-dev pyqt5-dev-tools qttools5-dev-tools qt5-default curl python3-pyqt5.qtwebengine python3-pyqt5.qtwebchannel python3-requests-toolbelt python3-ply git p7zip-full libopenal-dev ninja-build pipenv yarnpkg python3-semantic-version libsdl2-dev libgtk-3-dev liblzma-dev libzstd-dev zlib1g-dev }}} [[Vorlage(PPA,linuxuprising/libpng12 )]] {{{#!vorlage Befehl sudo apt-get install libpng12-0 }}} Dann die folgenden Befehle ausführen: {{{#!vorlage Befehl git clone https://github.com/ngld/old-knossos.git cd old-knossos pip3 install raven pip3 install token-bucket yarnpkg install python3 configure.py ninja run }}} Entweder einen Starter anlegen oder im Ordner über {{{#!vorlage Befehl ninja run }}} starten. {{{#!vorlage Hinweis Ordner bestehender Installationen nach der "alten" Weise funktionieren mit Knossos nicht, da die Syntax unterschiedlich ist. Es sollte zur Installation von FS2 und den anderen Mods ein extra Ordner angelegt werden. }}} == Knossos Version 1.0.0 == {{{#!vorlage Hinweis Knossos 1.0.0 ist noch in der Entwicklung und noch nicht einsatzfähig. Ausnahme: Eine lokale "Nebula" DB anlegen. }}} Die Vorbereitungen sind identisch wie oben für 20.04 aus dem Quelltext. Danach: {{{#!vorlage Befehl git clone https://github.com/ngld/knossos.git cd knossos ./task.sh configure build=Release static_deps=false ./task.sh client-run }}} Entweder einen Starter anlegen oder im Ordner über {{{#!vorlage Befehl ./task.sh client-run }}} starten. {{{#!vorlage Hinweis Um Freespace 2 und die meisten Mods spielen zu können, muss FS2 z.B. von GOG gekauft (s.u.) und über Knossos installiert werden.}}} Weitere Informationen zum Build-System von Knossos 1.0.0 liefert {{{#!vorlage Befehl ./task.sh }}} {{{ Available tasks: * build-tool: Build our build tool * check-deps: Checks the dependencies listed in DEPS.yml for updates * clean: Delete all generated files * client-build: Builds the Knossos client * client-clean: Delete all generated files from the client package * client-run: Launches Knossos * client-ui-build: Builds the assets for Nebula's client UI * client-watch: Launch Knossos, recompile and restart after source changes * client-ws-run: Launch Knossos WS server * database-clean: Tears down the managed Nebula database * database-migrate: Initializes and migrates the Nebula database (using Docker) * database-seed: Fills the database with the currently available mods from Nebula * fetch-deps: Automatically downloads dependencies not covered by install-tools * front-build: Builds the assets for Nebula's frontend * front-watch: Launches webpack-dev-server for Nebula's frontend * install-tools: Installs necessary go tools in the workspace (task, pggen, protoc plugins, ...) * js-lint: Check JS code for common issues * libarchive-build: Builds libarchive with CMake * libknossos-build: Builds libknossos (client-side, non-UI logic) * libknossos-clean: Delete all generated files from the libknossos package * libknossos-lint: Lints libknossos with golangci-lint * merge-compile-commands: Merges all compile_commands.json files into one * proto-build: Generates TS and Go bindings from the .proto API definitions * server-build: Compiles the Nebula server code * server-container: Builds the docker container for Nebula * server-lint: Lints server with golangci-lint * server-run: Launches Nebula * update-deps: Update the checksums listed in DEPS.yml (only use this if you manually changed that file) * updater-build: Builds the Knossos updater * updater-run: Launches the Knossos updater }}} = Links = * {en} [https://www.linuxuprising.com/2018/05/fix-libpng12-0-missing-in-ubuntu-1804.html Fix libpng12-0 Missing In Ubuntu 18.04, 19.10 Or 20.04 ] * {en} [https://www.hard-light.net/forums/index.php?topic=94068.0 Originalartikel Knossos] * Wiki-Artikel: [:Spiele/Freespace_2:] * {en} [https://www.gog.com/game/freespace_2 Freespace 2 auf GOG.com] * [https://github.com/ngld/knossos GitHub Knossos 1.0.0] * [https://github.com/ngld/old-knossos GitHub "old-Knossos"] #tag: Howto ## Nach der Fertigstellung des Howtos bitte die Aufnahme in die Howto-Sammlung über die Schaltfläche "Diskussion" mitteilen. Weitere [https://wiki.ubuntuusers.de/Wiki/Tag/ Tags] sind nicht gestattet! ##tag: Howto