Leseratte10 / acsm-calibre-plugin

Calibre plugin for ACSM->EPUB and ACSM->PDF conversion.
https://www.mobileread.com/forums/showthread.php?t=341975
GNU General Public License v3.0
695 stars 24 forks source link

OpenSSL 3.0.13, cannot install to calibre #100

Closed muelli01 closed 1 month ago

muelli01 commented 3 months ago

Bug description

When using Mint 22 with OpenSSL 3.0.13 install of the latest release creates an error. It seems the regex for detecting the version cannot handle this openssl version string as mentioned here: https://github.com/NixOS/nixpkgs/blob/72b94272c96eef5fe866d10fd76544e54789759c/pkgs/development/python-modules/oscrypto/support-openssl-3.0.10.patch

edit: that is indeed the problem, after removing the plugin from ~/.config/calibre/plugins and patching the files, the plugin can be installed.

calibre, version 7.6.0 FEHLER: Unbehandelter Ausnahmefehler: InvalidPlugin:Initialisierung der Erweiterung Traceback (most recent call last): File "/usr/lib/calibre/calibre/customize/ui.py", line 710, in initialize_plugin p.initialize() File "calibre_plugins.deacsm.init", line 226, in initialize from libadobe import createDeviceKeyFile, update_account_path, sendHTTPRequest File "/media/enc/Toolz/DeDRM Ebooks/DeACSM_0.0.16.zip/libadobe.py", line 59, in <module> from oscrypto import keys File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/keys.py", line 5, in <module> from ._asymmetric import parse_certificate, parse_private, parse_public File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_asymmetric.py", line 27, in <module> from .kdf import pbkdf1, pbkdf2, pkcs12_kdf File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/kdf.py", line 9, in <module> from .util import rand_bytes File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/util.py", line 14, in <module> from ._openssl.util import rand_bytes File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/util.py", line 6, in <module> from ._libcrypto import libcrypto, libcrypto_version_info, handle_openssl_error File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/_libcrypto.py", line 24, in <module> from ._libcrypto_ctypes import ( File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/_libcrypto_ctypes.py", line 47, in <module> raise LibraryNotFoundError('Error detecting the version of libcrypto') oscrypto.errors.LibraryNotFoundError: Error detecting the version of libcrypto fehlgeschlagen. Rückverfolgung: Traceback (most recent call last): File "/usr/lib/calibre/calibre/customize/ui.py", line 710, in initialize_plugin p.initialize() File "calibre_plugins.deacsm.init", line 226, in initialize from libadobe import createDeviceKeyFile, update_account_path, sendHTTPRequest File "/media/enc/Toolz/DeDRM Ebooks/DeACSM_0.0.16.zip/libadobe.py", line 59, in <module> from oscrypto import keys File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/keys.py", line 5, in <module> from ._asymmetric import parse_certificate, parse_private, parse_public File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_asymmetric.py", line 27, in <module> from .kdf import pbkdf1, pbkdf2, pkcs12_kdf File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/kdf.py", line 9, in <module> from .util import rand_bytes File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/util.py", line 14, in <module> from ._openssl.util import rand_bytes File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/util.py", line 6, in <module> from ._libcrypto import libcrypto, libcrypto_version_info, handle_openssl_error File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/_libcrypto.py", line 24, in <module> from ._libcrypto_ctypes import ( File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/_libcrypto_ctypes.py", line 47, in <module> raise LibraryNotFoundError('Error detecting the version of libcrypto') oscrypto.errors.LibraryNotFoundError: Error detecting the version of libcrypto

calibre 7.6 embedded-python: False Linux-6.8.0-39-generic-x86_64-with-glibc2.39 Linux ('64bit', 'ELF') ('Linux', '6.8.0-39-generic', '#39-Ubuntu SMP PREEMPT_DYNAMIC Fri Jul 5 21:49:14 UTC 2024') Python 3.12.3 Interface language: de EXE path: /usr/bin/python3.12 Successfully initialized third party plugins: DeDRM (10, 0, 3) Traceback (most recent call last): File "/usr/lib/calibre/calibre/customize/ui.py", line 710, in initialize_plugin p.initialize() File "calibre_plugins.deacsm.init", line 226, in initialize from libadobe import createDeviceKeyFile, update_account_path, sendHTTPRequest File "/media/enc/Toolz/DeDRM Ebooks/DeACSM_0.0.16.zip/libadobe.py", line 59, in from oscrypto import keys File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/keys.py", line 5, in from ._asymmetric import parse_certificate, parse_private, parse_public File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_asymmetric.py", line 27, in from .kdf import pbkdf1, pbkdf2, pkcs12_kdf File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/kdf.py", line 9, in from .util import rand_bytes File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/util.py", line 14, in from ._openssl.util import rand_bytes File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/util.py", line 6, in from ._libcrypto import libcrypto, libcrypto_version_info, handle_openssl_error File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/_libcrypto.py", line 24, in from ._libcrypto_ctypes import ( File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/_libcrypto_ctypes.py", line 47, in raise LibraryNotFoundError('Error detecting the version of libcrypto') oscrypto.errors.LibraryNotFoundError: Error detecting the version of libcrypto

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/usr/lib/calibre/calibre/gui2/preferences/plugins.py", line 325, in add_plugin plugin = add_plugin(path) ^^^^^^^^^^^^^^^^ File "/usr/lib/calibre/calibre/customize/ui.py", line 520, in add_plugin plugin = initialize_plugin(plugin, path_to_zip_file, PluginInstallationType.EXTERNAL) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/calibre/calibre/customize/ui.py", line 715, in initializeplugin raise InvalidPlugin((('Initialization of plugin %s failed with traceback:') calibre.customize.InvalidPlugin: Initialisierung der Erweiterung Traceback (most recent call last): File "/usr/lib/calibre/calibre/customize/ui.py", line 710, in initialize_plugin p.initialize() File "calibre_plugins.deacsm.init", line 226, in initialize from libadobe import createDeviceKeyFile, update_account_path, sendHTTPRequest File "/media/enc/Toolz/DeDRM Ebooks/DeACSM_0.0.16.zip/libadobe.py", line 59, in from oscrypto import keys File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/keys.py", line 5, in from ._asymmetric import parse_certificate, parse_private, parse_public File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_asymmetric.py", line 27, in from .kdf import pbkdf1, pbkdf2, pkcs12_kdf File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/kdf.py", line 9, in from .util import rand_bytes File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/util.py", line 14, in from ._openssl.util import rand_bytes File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/util.py", line 6, in from ._libcrypto import libcrypto, libcrypto_version_info, handle_openssl_error File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/_libcrypto.py", line 24, in from ._libcrypto_ctypes import ( File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/_libcrypto_ctypes.py", line 47, in raise LibraryNotFoundError('Error detecting the version of libcrypto') oscrypto.errors.LibraryNotFoundError: Error detecting the version of libcrypto fehlgeschlagen. Rückverfolgung: Traceback (most recent call last): File "/usr/lib/calibre/calibre/customize/ui.py", line 710, in initialize_plugin p.initialize() File "calibre_plugins.deacsm.init", line 226, in initialize from libadobe import createDeviceKeyFile, update_account_path, sendHTTPRequest File "/media/enc/Toolz/DeDRM Ebooks/DeACSM_0.0.16.zip/libadobe.py", line 59, in from oscrypto import keys File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/keys.py", line 5, in from ._asymmetric import parse_certificate, parse_private, parse_public File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_asymmetric.py", line 27, in from .kdf import pbkdf1, pbkdf2, pkcs12_kdf File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/kdf.py", line 9, in from .util import rand_bytes File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/util.py", line 14, in from ._openssl.util import rand_bytes File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/util.py", line 6, in from ._libcrypto import libcrypto, libcrypto_version_info, handle_openssl_error File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/_libcrypto.py", line 24, in from ._libcrypto_ctypes import ( File "/home/USER/.config/calibre/plugins/DeACSM/modules/oscrypto/oscrypto/_openssl/_libcrypto_ctypes.py", line 47, in raise LibraryNotFoundError('Error detecting the version of libcrypto') oscrypto.errors.LibraryNotFoundError: Error detecting the version of libcrypto

Operating system

Linux

Which version of Calibre are you running?

7.6.0

Which version of the ACSM Input plugin are you running?

v0.0.16

Import type

No response

Further information

No response

Leseratte10 commented 3 months ago

This is an issue in 0.0.16 that's already fixed in the latest beta, unfortunately I still haven't had time to turn that into a proper release version.

Try installing the beta from https://github.com/Leseratte10/acsm-calibre-plugin/actions/runs/10280358906/artifacts/1784495838 and see if that fixes the issue for you. Make sure to make a backup of your activation data beforehand just in case.

baeuchle commented 2 months ago

This link doesn't work anymore.

Leseratte10 commented 2 months ago

Still works fine for me.

If it doesn't, you can always go to Actions -> most recent workflow run -> Artifacts -> calibre-plugins.

baeuchle commented 2 months ago

Well, it works now. Strange. Apologies. Doesn't work, though, but that will be in a different bug shortly.