diff --git a/CALIBRE_CLI_INSTRUCTIONS.md b/CALIBRE_CLI_INSTRUCTIONS.md new file mode 100644 index 0000000..d579348 --- /dev/null +++ b/CALIBRE_CLI_INSTRUCTIONS.md @@ -0,0 +1,47 @@ +# Using the DeDRM plugin with the Calibre command line interface + +If you prefer the Calibre CLI instead of the GUI, follow this guide to +install and use the DeDRM plugin. + +This guide assumes you are on Linux, but it may very well work on other +platforms. + +## Step-by-step Tutorial + +#### Install Calibre + - Follow [Calibre's installation instructions](https://calibre-ebook.com/download_linux) + +#### Install plugins + - Download the DeDRM `.zip` archive from DeDRM_tools' + [latest release](https://github.com/apprenticeharper/DeDRM_tools/releases/latest). + Then unzip it. + - Add the DeDRM plugin to Calibre: + ``` + cd *the unzipped DeDRM_tools folder* + calibre-customize --add DeDRM_calibre_plugin/DeDRM_plugin.zip + ``` + - Add the Obok plugin: + ``` + calibre-customize --add Obok_calibre_plugin/obok_plugin.zip + ``` + +#### Enter your keys + - Figure out what format DeDRM wants your key in by looking in + [the code that handles that](src/prefs.py). + - For Kindle eInk devices, DeDRM expects you to put a list of serial + numbers in the `serials` field: `"serials": ["012345689abcdef"]` or + `"serials": ["1111111111111111", "2222222222222222"]`. + - Now add your keys to `$CALIBRE_CONFIG_DIRECTORY/plugins/dedrm.json`. + +#### Import your books + - Make a library folder + ``` + mkdir library + ``` + - Add your book(s) with this command: + ``` + calibredb add /path/to/book.format --with-library=library + ``` + +The DRM should be removed from your book, which you can find in the `library` +folder. diff --git a/FAQs.md b/FAQs.md index 9412ac0..916a76c 100644 --- a/FAQs.md +++ b/FAQs.md @@ -180,6 +180,8 @@ The Macintosh DeDRM application creates a log file on your desktop every time it ## I cannot solve my problem with the Windows DeDRM application, and now I need to ‘post a log’. How do I do that? The Windows DeDRM application creates a log file in your home directory (C:\Users\[username]) every time it is run. After unsuccessfully removing DRM from one ebook, copy the contents of the log file (it is a simple text file) and paste it into your comment at Apprentice Alf's blog or in a new issue at Apprentice Harper's github repository. +## Is there a way to use the DeDRM plugin for Calibre from the command line? +See the [Calibre command line interface (CLI) instructions](CALIBRE_CLI_INSTRUCTIONS.md). # General Questions diff --git a/dedrm_src/k4mobidedrm.py b/dedrm_src/k4mobidedrm.py index 1ce1f35..c6ab3ab 100644 --- a/dedrm_src/k4mobidedrm.py +++ b/dedrm_src/k4mobidedrm.py @@ -269,7 +269,7 @@ def decryptBook(infile, outdir, kDatabaseFiles, androidFiles, serials, pids): re.match('^{0-9A-F-}{36}$', orig_fn_root) ): # Kindle for PC / Mac / Android / Fire / iOS clean_title = cleanup_name(book.getBookTitle()) - outfilename = '{}_{}'.format(orig_fn_root, clean_title) + outfilename = u'{}_{}'.format(orig_fn_root, clean_title) else: # E Ink Kindle, which already uses a reasonable name outfilename = orig_fn_root