diff --git a/README.md b/README.md new file mode 100644 index 0000000..9577f58 --- /dev/null +++ b/README.md @@ -0,0 +1,44 @@ +# README + +Falls jemand seinen Tolino Shine 5 / Shine Color / Vision Color (also die 2024er Generation) mit Calibre Version **kleiner 7.0.16** verwendet (und im Treiber die Option *Neuere Firmware zu unterstützen versuchen* aktiviert) hat, wurden evtl. inkompatible Einträge in die Datenbank erstellt. Dieses Tool versucht, diese Einträge zu fixen. + +**Warnung:** Auch wenn das Programm bei mir anstandslos macht was es soll, ist ein Backup der Datenbankdatei (*KoboReader.sqlite* im womöglich versteckten Verzeichnis *.kobo*) angeraten. Die Verwendung von *fix_tolino_bool.py* geschieht auf eigene Gefahr. + +## Hintergrund +Die Kobogeräte mit der Firmwareversion 4.x verwenden boolsche Einträge in der Datenbank die Werte **"true"** und **"false"** (als String/Zeichenkette). Die Tolinogeräte mit der Firmwareversion 5.x verwenden hierfür jedoch die Werte **1** und **0**, wie es von SQLite3 (der Datenbank, die hier in Einsatz kommt) vorgesehen ist. + +Wurde *Neuere Firmware zu unterstützen versuchen* aktiviert, wurden etwa beim Erstellen von neuen Sammlungen eben "true" bzw. "false" anstelle von 1 und 0 für diese Eintäge verwendet, was zu Problemen führen kann. + +## Verwendung +*fix_tolino_bool.py* versucht also, die entsprechenden Datenbankeinträge anzupassen. Hierfür muss man dem Tool lediglich den Pfad zum eingehängten Tolinogerät mitgeben. Zum Ausprobieren kann die Option `--dry-run` bzw. `-n` verwendet werden, was keinerlei Änderungen durchführt, sondern nur Informationen ausgibt. + +Unter Linux könnte der Aufruf also wie folgt aussehen: +``` +python fix_tolino_bool.py --dry-run /run/media/myuser/eReader +``` +Wobei der Pfad oder zumindest *myuser* natürlich noch angepasst werden muss. + +Und unter Windows sähe das so aus: +``` +python fix_tolino_bool.py --dry-run E: +``` +Hier wird das Laufwerk E als Einhängepunkt des Tolinos angenommen. + +Um die Änderungen durchzuführen, ruft man das Ganze ohne die Option --dry-run auf. + +`python fix_tolino_bool.py -h` informiert ebenfalls über die verfügbaren Optionen: +``` +usage: fix_tolino_bool.py [-h] [-n] mount_point + +positional arguments: + mount_point Directory/Mount point of your Tolino device + +options: + -h, --help show this help message and exit + -n, --dry-run Don't change database; show information only. +``` + +## Systemvoraussetzungen +Es wird lediglich Python 3 vorausgesetzt. Die meisten Linuxdistributionen installieren Python standardmäßig. Ansonsten (Windows?) muss es installiert werden (https://www.python.org). + +Ich habe das Tool unter Linux (und flüchtig unter Windows) getestet. \ No newline at end of file