Howto/Open Sonic installieren

Achtung!

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.

Hinweis:

Dieses Howto wurde von trollsportverein erstellt. Bei Problemen mit der Anleitung melde dies bitte in der dazugehörigen Diskussion und wende dich gegebenenfalls zusätzlich an den/die Verfasser des Howtos.

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. ⚓︎ Installation von Programmen

  2. ⚓︎ Ein Terminal öffnen

  3. ⚓︎ Nano ein nuzterfreundlcher Editor für das Terminal

  4. ⚓︎ Script ausführbar machen und aufrufen

  5. ⚓︎ mit Root-Rechten arbeiten

  6. ⚓︎ Ein Programm starten

  7. ⚓︎ Menüeditoren um mausklickfreudliche Anwendungstarter zu erstellen

Inhaltsverzeichnis
  1. Problembeschreibung
  2. Anleitung
    1. Open Sonic Installation
    2. Starter für Open Sonic
    3. Open Sonic deinstallieren
  3. Links

Problembeschreibung

Open Sonic ist ein Open Source Spiel, welches auf dem Universum von Sonic the Hedgehog basiert. Das neuste fertige Binary von Open Sonic ist so alt, dass es mit aktueller libpng16 nicht mehr auf (K)Ubuntu funktioniert. Entpacken der alten lipng12 aus einem alten Ubuntu Paket und hinein kopieren in das Verzeichnis des Spiels behebt das Problem und das Spiel kann ausgeführt werden.

open_sonic_menue.jpg

Anleitung

Open Sonic Installation

Zur Vereinfachung hier ein Script als Installationshilfe:

OpenSonic_Install.sh

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/bin/sh

# Vorbereitung, einige i386 Pakete installieren, falls sie noch fehlen:
# libxcursor1:i386 libxpm4:i386 libxxf86vm1:i386 libsm6:i386

dpkg -l | [ -f `grep -o "libxcursor1:i386"` ] && sudo apt-get install -y libxcursor1:i386 || echo "libxcursor1:i386 ist bereits installiert, OK."
dpkg -l | [ -f `grep -o "libxpm4:i386"` ] && sudo apt-get install -y libxpm4:i386 || echo "libxpm4:i386 ist bereits installiert, OK."
dpkg -l | [ -f `grep -o "libxxf86vm1:i386"` ] && sudo apt-get install -y libxxf86vm1:i386 || echo "libxxf86vm1:i386 ist bereits installiert, OK."
dpkg -l | [ -f `grep -o "libsm6:i386"` ] && sudo apt-get install -y libsm6:i386 || echo "libsm6:i386 ist bereits installiert, OK."

# Verzeichnis erstellen, falls noch nicht vorhanden:
mkdir -pv $HOME/games/

# OpenSonic Binary Release 0.1.4 holen und in /tmp speichern:
wget -O /tmp/opensnc-linux-0.1.4.tar.gz https://sourceforge.net/projects/opensnc/files/Open%20Sonic/0.1.4/opensnc-linux-0.1.4.tar.gz

# Checksumme sha256 opensnc-linux-0.1.4.tar.gz:
# edaaeb028839aeeee29a20a1806c53b5035972ae406bf248fc4966872084bbee  /tmp/opensnc-linux-0.1.4.tar.gz

# sha256sum Checksumme überprüfen:
echo "edaaeb028839aeeee29a20a1806c53b5035972ae406bf248fc4966872084bbee /tmp/opensnc-linux-0.1.4.tar.gz" | sha256sum -c && \

# Spiel nach $HOME/games/ entpacken:
tar -xf /tmp/opensnc-linux-0.1.4.tar.gz -C $HOME/games/ && \
# und umbennen:
mv -v $HOME/games/opensnc-linux-0.1.4/  $HOME/games/opensonic && \

# Alte lipng12 holen und in in /tmp speichern:
wget -O /tmp/libpng12-0_1.2.54-1ubuntu1.1_i386.deb https://launchpadlibrarian.net/377985836/libpng12-0_1.2.54-1ubuntu1.1_i386.deb

# Checksumme sha256 libpng12-0_1.2.54-1ubuntu1.1_i386.deb:
# 7845a109362b2e08b18ab029e21367da3c28a72f15952289d34348d5d429ce9f  /tmp/libpng12-0_1.2.54-1ubuntu1.1_i386.deb

# sha256sum Checksumme überprüfen:
echo "7845a109362b2e08b18ab029e21367da3c28a72f15952289d34348d5d429ce9f  /tmp/libpng12-0_1.2.54-1ubuntu1.1_i386.deb" | sha256sum -c && \

# Das alte lipng12 Paket entpacken und die benötigte veraltete libpng12 in das OpenSonic Spielverzeichnis kopieren:
cd /tmp && \
ar -x /tmp/libpng12-0_1.2.54-1ubuntu1.1_i386.deb 2> /dev/null && tar -xf /tmp/data.tar.xz 2> /dev/null ; cp -pv /tmp/lib/i386-linux-gnu/libpng12.so.0.54.0 $HOME/games/opensonic/libpng12.so.0 2> /dev/null && \
cd $HOME ; \

# Aufräumen:
rm -r '/tmp/opensnc-linux-0.1.4.tar.gz' '/tmp/libpng12-0_1.2.54-1ubuntu1.1_i386.deb' '/tmp/control.tar.gz' '/tmp/data.tar.xz' '/tmp/debian-binary' '/tmp/lib' '/tmp/usr' 2> /dev/null && \

# OpenSonic Spiel erster Start zum testen und angucken:
$HOME/games/opensonic/opensonic ||  printf '\n \033[41m Checksumme der heruntergeladenen Dateien nicht OK! \033[0m \n'

exit

Editor Nano öffnen:

nano OpenSonic_Install.sh

... und den Inhalt von dort oben inklusive "#!/bin/sh" und "exit" hineinkopieren. Nano schließen mit Strg + X , speichern bestätigen mit Y .

Das Script muss dann ausführbar gemacht werden:

chmod +x OpenSonic_Install.sh

Dann lässt das Script sich im Verzeichnis, in dem es sich befindet, so ausführen:

./OpenSonic_Install.sh

Starter für Open Sonic

Eine OpenSonic.desktop Datei für einen Startmenüeintrag könnte beispielsweise dann so aussehen:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
[Desktop Entry]
Comment=
Exec=/home/BENUTERNAME/games/opensonic/opensonic
GenericName=Side Scroller - Jump and run
Icon=/home/BENUTZERNAME/games/opensonic/icon.png
Name=OpenSonic
NoDisplay=false
Path=
StartupNotify=false
Terminal=false
TerminalOptions=
Type=Application
X-KDE-SubstituteUID=false
X-KDE-Username=

Diese Datei ist mit dem in KDE integrierten Menüeditor erstellt und findet sich in /home/BENUTZERNAME/.local/share/applications/OpenSonic.desktop. BENUTZERNAME ist jeweils durch den eignen Nutzernamen zu ersetzen. Unter anderen Desktopumgebungen gibt es Menüeditoren die gegebenenfalls noch nachinstalliert werden müssen, siehe Wikiartikel:

Open Sonic deinstallieren

Einfach nur das Verzeichnis /home/BENUTZERNAME/games/opensonic mitsamt Inhalt löschen:

rm -rv $HOME/games/opensonic

Gegebenenfalls noch den Starter entfernen, im Beispiel wäre das /home/BENUTZERNAME/.local/share/applications/OpenSonic.desktop:

rm -v $HOME/.local/share/applications/OpenSonic.desktop