README added

This commit is contained in:
Martin Brodbeck 2024-07-26 13:53:44 +02:00
parent 89978aef79
commit eb2b18bb6c

44
README.md Normal file
View file

@ -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.