|
|
#1 |
|
Junior Member
![]() Posts: 2
Karma: 10
Join Date: May 2026
Device: Boox Go7
|
[GUI Plugin] KOReader MD5
Created this to fix not being able to match with KOReader Sync plugin. See posts in: https://www.mobileread.com/forums/sh...=362706&page=4
KOReader identifies books by a partial MD5 hash of the file. If you want to sync reading progress, highlights, or other metadata between calibre and KOReader and you use the KOReader Sync calibre plugin it may need to match on md5 so your calibre entry has to have the same md5 KOReader uses. This plugin will fill in that column for KOReader sync to match. Source code: https://github.com/CloudyMcFox/calibre-koreader-md5 Releases: https://github.com/CloudyMcFox/calib...r-md5/releases To install in calibre: 1) Preferences->plugins->Load plugin from file and chose the downloaded zip. Recommend you chose to "add to context menu for the book in the calibre library" at a minimum. 2) Restart Calibre You can configure plugin settings by right clicking on any book-> KOReader MD5-> Configure Plugin... and choose the column that matches the KOReader Sync md5 column To use: right click on a book -> KOReader MD5-> Compute hash for selected books |
|
|
|
|
|
#2 |
|
Member
![]() Posts: 12
Karma: 10
Join Date: Jun 2024
Device: Kobo Clara BW, Kobo Clara 2E
|
Thanks for this plugin, I'll try it out shortly.
But now I wonder: how did I manage to get data from KOReader into Calibre before with KOReaderSync? It was working until very recently :-? |
|
|
|
| Advert | |
|
|
|
|
#3 |
|
Member
![]() Posts: 12
Karma: 10
Join Date: Jun 2024
Device: Kobo Clara BW, Kobo Clara 2E
|
Took me a while, but I managed to install it. Generating MD5 hashes now...
On the other hand, I couldn't install the one from the github repository (I assume it's a newer version than the one you posted on the forum). I get this error: Code:
calibre, version 9.2.1
ERROR: Unhandled exception: <b>InvalidPlugin</b>:The plugin in '/home/chema/Downloads/calibre-koreader-md5-1.0.1.zip' is invalid. It does not contain a top-level __init__.py file
calibre 9.2.1 embedded-python: False
Linux-7.0.0-31-generic-x86_64-with-glibc2.43 Linux ('64bit', 'ELF')
('Linux', '7.0.0-31-generic', '#31-Ubuntu SMP PREEMPT_DYNAMIC Sat Aug 1 04:26:38 UTC 2026')
Python 3.14.4
Interface language: None
EXE path: /usr/bin/python3.14
Successfully initialized third party plugins: DeACSM (0, 0, 16) && DeDRM (10, 0, 3) && Bulk img resizer (1, 1, 0) && KOReader MD5 (1, 0, 0) && KOReader Sync (0, 8, 2)
Traceback (most recent call last):
File "/usr/lib/calibre/calibre/gui2/preferences/plugins.py", line 331, in add_plugin
plugin = add_plugin(path)
File "/usr/lib/calibre/calibre/customize/ui.py", line 574, in add_plugin
plugin = load_plugin(path_to_zip_file)
File "/usr/lib/calibre/calibre/customize/ui.py", line 88, in load_plugin
return loader.load(path_to_zip_file)
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "/usr/lib/calibre/calibre/customize/zipplugin.py", line 311, in load
plugin_name = self._locate_code(zf, path_to_zip_file)
File "/usr/lib/calibre/calibre/customize/zipplugin.py", line 401, in _locate_code
raise InvalidPlugin(f'The plugin in {path_to_zip_file!r} is invalid. It does not '
'contain a top-level __init__.py file')
calibre.customize.InvalidPlugin: The plugin in '/home/chema/Downloads/calibre-koreader-md5-1.0.1.zip' is invalid. It does not contain a top-level __init__.py file
|
|
|
|
|
|
#4 |
|
Weirdo
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 1,325
Karma: 13516840
Join Date: Nov 2019
Location: Wuppertal, Germany
Device: Kobo Libra 2, Tolino Vision Color, reMarkable PaperPro
|
|
|
|
|
|
|
#5 |
|
Member
![]() Posts: 12
Karma: 10
Join Date: Jun 2024
Device: Kobo Clara BW, Kobo Clara 2E
|
I was going to say that no, it contains the code as expected, but I've seen what's the issue.
This is for the .zip file posted here: Code:
$ unzip -v KoreaderMD5.zip
Archive: KoreaderMD5.zip
Length Method Size Cmpr Date Time CRC-32 Name
-------- ------ ------- ---- ---------- ----- -------- ----
1551 Defl:N 601 61% 2026-05-30 03:32 1af0d7dc ui.py
1016 Defl:N 465 54% 2026-05-30 03:49 085a8143 __init__.py
0 Stored 0 0% 2026-05-30 02:12 00000000 images/
3147 Defl:N 3152 -0% 2026-05-30 03:33 b6294062 images/icon.png
0 Defl:N 2 0% 2026-05-30 02:11 00000000 plugin-import-name-koreader_md5.txt
5879 Defl:N 1980 66% 2026-05-30 02:34 24a25a07 main.py
3938 Defl:N 1202 70% 2026-05-30 02:45 33f50c31 config.py
-------- ------- --- -------
15531 7402 52% 7 files
Code:
$ unzip -v calibre-koreader-md5-1.0.1.zip
Archive: calibre-koreader-md5-1.0.1.zip
186ea46c8a5f3921da66e15e61ccded74c51b273
Length Method Size Cmpr Date Time CRC-32 Name
-------- ------ ------- ---- ---------- ----- -------- ----
0 Stored 0 0% 2026-05-30 05:46 00000000 calibre-koreader-md5-1.0.1/
41 Defl:N 38 7% 2026-05-30 05:46 f7b19686 calibre-koreader-md5-1.0.1/.gitignore
35149 Defl:N 12112 66% 2026-05-30 05:46 97673d00 calibre-koreader-md5-1.0.1/LICENSE
2743 Defl:N 1325 52% 2026-05-30 05:46 bf19bef0 calibre-koreader-md5-1.0.1/README.md
985 Defl:N 463 53% 2026-05-30 05:46 c38349bb calibre-koreader-md5-1.0.1/__init__.py
993 Defl:N 492 51% 2026-05-30 05:46 eaaaa34a calibre-koreader-md5-1.0.1/build.ps1
3838 Defl:N 1192 69% 2026-05-30 05:46 6c9c00a3 calibre-koreader-md5-1.0.1/config.py
0 Stored 0 0% 2026-05-30 05:46 00000000 calibre-koreader-md5-1.0.1/images/
3147 Stored 3147 0% 2026-05-30 05:46 b6294062 calibre-koreader-md5-1.0.1/images/icon.png
5685 Defl:N 1959 66% 2026-05-30 05:46 6db7f885 calibre-koreader-md5-1.0.1/main.py
0 Stored 0 0% 2026-05-30 05:46 00000000 calibre-koreader-md5-1.0.1/plugin-import-name-koreader_md5.txt
1507 Defl:N 591 61% 2026-05-30 05:46 fd8ac68e calibre-koreader-md5-1.0.1/ui.py
-------- ------- --- -------
54088 21319 61% 12 files
|
|
|
|
| Advert | |
|
|
![]() |
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| [GUI Plugin] KOReader Sync | kyx84 | Plugins | 56 | Today 10:06 AM |
| [GUI Plugin] Streamer - RSVP Speed Reader plugin for Calibre | npapadacis | Plugins | 6 | 04-24-2026 03:00 AM |
| [GUI Plugin] Koreader reading time estimate | Criveratech | Plugins | 0 | 12-07-2025 06:47 AM |
| [GUI Plugin] Save Virtual Libraries To Column (GUI) | chaley | Plugins | 14 | 04-04-2021 05:25 AM |