PySolFC mit Python3 (Fix)

PySolFC mit Python3 (Fix)

Update:

Nutzt bitte einfach die installation per Snap:

sudo snap install py-sol-fc

Vielen Dank an wush für den Hinweis ;-)

Alter Beitrag: (obsolet)

Wieder mal ein Programm, dass es in die Paketquellen von z.B. (K)Ubuntu 22.04 LTS geschafft hat und nicht läuft. Und wieder das Problem, dass es für Python 2.x entwickelt wurde und mit Python 3.x ins Stolpern kommt. Beim Start erhält man die Fehlermeldung

ModuleNotFoundError: No module named 'formatter'

Mittlerweile gibt es allerdings einen Fix damit es auch mit Python 3.x läuft:

Finden könne wir den Fix auf Github. Die alternative Suche nach einem PPA hat leider nicht zum gewünschten Erfolg geführt. Da ich den Fix schon ausgeführt habe, hier ein recht einfacher Weg mit Erklärungen.

Wer etwas frustriert PySolFC wieder deinstalliert hat, oder es erstmailig installieren möchte geht folgenden Weg:

sudo apt install -y pysolfc pysolfc-cardsets

Nun werfen wir einen Blick in das Installationsverzeichnis /usr/share/games/pysolfc und finden dort (hier auzugsweise) folgende Dateistruktur

...
pysollib/
    |-- formatter.py
    |-- htmllib2.py
      |-- kivy/
          |-- tkhtml.py
      |-- pysolgtk/
          |-- tkhtml.py
        |-- ui/
          |-- tkile/
              |-- tkhtml.py
...

Die hier angeführten *.py-Dateien müssen nun gegen die gefixten ausgetauscht werden. Das ist mit Aufwand verbunden und da ich diesen schon hinter mir habe, hier nun ein Archiv mit den gefixten Dateien mit Stand vom 22.09.2022:

Download pysolfc_patch_20220927.tar.gz

Die MD5-Hashsumme zur Überprüfung:

09080919c9b7905ea8ce509d70aeca6e

Wer mag kann die Archivdateien mit den Quelltexten im o.g. Link auf Github vergleichen...

Wir laden das Archiv mit unserem Browser herunter und sichern danach die originalen Dateien. Dazu öffnen wir ein Terminal:

cd /usr/share/games/pysolfc/pysollib
sudo mv formatter.py formatter.py.old
sudo mv htmllib2.py htmllib2.py.old
sudo mv kivy/tkhtml.py kivy/tkhtml.py.old
sudo mv pysolgtk/tkhtml.py pysolgtk/tkhtml.py.old
sudo mv ui/tkile/tkhtml.py ui/tkile/tkhtml.py.old

Wir kopieren nun das heruntergeladene Archiv nach /usr/share/games/pysolfc/pysollib/, den Pfad bitte anpassen

sudo cp /Pfad/zum/Download/Ordner/pysolfc_patch_20220927.tar.gz /usr/share/games/pysolfc/pysollib/

und entpacken es:

sudo tar -xzf pysolfc_patch_20220927.tar.gz

Das war es schon und da wir die Konsole noch offen haben testen wir es:

pysolfc &

und schon sollte uns PySolFC begrüßen

Bildbeschreibung

wush
Neue Fehlermeldung
Geschrieben von wush am 16. August 2023
Hallo, bekomme PysolFC 2.6.4.3 leider auch nicht mit den Fix zum laufen (RasPi4 / Ubuntu 22.04). Bekomme die Meldung: from pysollib.ui.tktile.tkhtml import Base_HTMLViewer ImportError: cannot import name 'Base_HTMLViewer' from 'pysollib.ui.tktile.tkhtml' (/usr/share/games/pysolfc/pysollib/ui/tktile/tkhtml.py) Gruß
Michael Horst Admin
Re: Neue Fehlermeldung
Geschrieben von Michael Horst am 17. August 2023
Hallo, freut mich das du eine Lösung gefunden hast. Werde das mal zum Anlass nehmen um dieses Tutorial überarbeiten Gruß
Michael Horst Admin
Re: Neue Fehlermeldung
Geschrieben von Michael Horst am 16. August 2023
Hi, wirf mal einen Blick auf die die Webseite, da findest du auch die aktuellen, gefixten Versionen. Geht schneller als mit meinem Vorschlag: https://pysolfc.sourceforge.io/ Gruß
wush
Neue Fehlermeldung
Geschrieben von wush am 17. August 2023
Danke! Ab Version 2.14 würde PySolFC ja laufen, nur lassen sich die Versionen nicht auf den RasPi installieren. Hab eine andere Lösung gefunden. Mit Snap lies sich die Version 2.20.01 (im Terminal: sudo snap install py-sol-fc) installieren – läuft auch sauber auf den RasPi. Quelle: https://snapcraft.io/py-sol-fc Schönen Gruß