Compare commits

..

4 Commits

Author SHA1 Message Date
NoDRM
6c8051eded Update changelog 2022-09-10 11:57:35 +02:00
NoDRM
1cc245b103 Update README, fixes #136 2022-09-10 11:47:15 +02:00
NoDRM
eb45c71fd9 Cleanup 2022-09-10 11:44:55 +02:00
NoDRM
2d4c5d2c4b Fix key import sometimes generating corrupted keys.
Should fix #145, #134, #119, #116, #115, #109 and maybe others.
2022-09-10 11:42:59 +02:00
5 changed files with 12 additions and 7 deletions

View File

@@ -79,3 +79,5 @@ List of changes since the fork of Apprentice Harper's repository:
- General cleanup and removal of dead code.
- Fix a bug where ADE account keys weren't automatically imported from the DeACSM plugin when importing a PDF file.
- Re-enable Xrefs in exported PDF files since the file corruption bug is hopefully fixed. Please open bug reports if you encounter new issues with PDF files.
- Fix a bug that would sometimes cause corrupted keys to be added when adding them through the config dialog (fixes #145, #134, #119, #116, #115, #109).
- Update the README (fixes #136) to indicate that Apprentice Harper's version is no longer being updated.

View File

@@ -396,7 +396,7 @@ def gui_main():
return
self.status['text'] = "Select backup.ab file"
argv=unicode_argv()
argv=sys.argv()
progpath, progname = os.path.split(argv[0])
root = tkinter.Tk()
root.title("Kindle for Android Key Extraction v.{0}".format(__version__))

View File

@@ -1152,7 +1152,8 @@ class AddAdeptDialog():
zip_function = zip
for key, name in zip_function(defaultkeys, defaultnames):
if codecs.encode(key,'hex').decode("latin-1") in self.parent.plugin_keys.values():
key = codecs.encode(key,'hex').decode("latin-1")
if key in self.parent.plugin_keys.values():
print("Found key '{0}' in ADE - already present, skipping.".format(name))
else:
self.new_keys.append(key)
@@ -1167,8 +1168,8 @@ class AddAdeptDialog():
key, name = checkForDeACSMkeys()
if key is not None:
if codecs.encode(key,'hex').decode("latin-1") in self.parent.plugin_keys.values():
key = codecs.encode(key,'hex').decode("latin-1")
if key in self.parent.plugin_keys.values():
print("Found key '{0}' in DeACSM - already present, skipping.".format(name))
else:
# Found new key, add that.
@@ -1202,7 +1203,7 @@ class AddAdeptDialog():
@property
def key_value(self):
return codecs.encode(self.new_keys[0],'hex').decode("utf-8")
return codecs.encode(self.new_keys[0],'hex').decode("latin-1")
@property

View File

@@ -1086,6 +1086,8 @@ class PDFXRef(object):
return (None, pos)
## PDFXRefStream
##
class PDFXRefStream(object):
def __init__(self):

View File

@@ -1,9 +1,9 @@
# DeDRM_tools
DeDRM tools for ebooks
This is a fork of Apprentice Harper's version of the DeDRM tools. I've added some of the PRs that still haven't been merged, as well as added some more features / bugfixes myself.
This is a fork of Apprentice Harper's version of the DeDRM tools. Apprentice Harper said that the original version of the plugin [is no longer maintained](https://github.com/apprenticeharper/DeDRM_tools#no-longer-maintained), so I've taken over, merged a bunch of open PRs, and added a ton more features and bugfixes.
Take a look at [the CHANGELOG](https://github.com/noDRM/DeDRM_tools/blob/master/CHANGELOG.md) to see a list of changes since the last version by Apprentice Harper (v7.2.1). This plugin will start with version v10.0.0 so there won't be conflicting / duplicate version numbers when Apprentice Harper's version is updated again.
Take a look at [the CHANGELOG](https://github.com/noDRM/DeDRM_tools/blob/master/CHANGELOG.md) to see a list of changes since the last version by Apprentice Harper (v7.2.1). This plugin will start with version v10.0.0.
The v10.0.0 versions of this plugin should both work with Calibre 5.x (Python 3) as well as Calibre 4.x and lower (Python 2). If you encounter issues with this plugin in Calibre 4.x or lower, please open a bug report.