How to read Ebooks protected by Adobe Digital Editions on Linux
12 Jan 2025Disclaimer
This article is intended for informational purposes only. The methods discussed here involve bypassing Digital Rights Management (DRM) protection on ebooks. While this may be legal in certain jurisdictions for personal use (e.g., for format-shifting or accessibility), bypassing DRM may be illegal in some countries under local copyright laws. I strongly advise that you familiarize yourself with and follow the copyright laws applicable in your country before proceeding with any DRM circumvention methods.
Introduction
Like many Linux enthusiasts, I currently run a dual-boot setup on my laptop. One of the things I have been trying to do recently is to reduce my reliance on Windows. Unfortunately, many softwares don’t simply run on Linux. One example is Adobe Digital Editions (ADE), which is required to read ebooks borrowed from my digital public library. To read these ebooks on my Kindle E-Reader, I need to:
- Use ADE to retrieve the EPUB file from an ACSM file. This software is not available on any Linux distributions.
- Convert the EPUB into a MOBI format using Calibre. Calibre alone cannot convert the file, since the EPUB generated by ADE is DRM-protected. That’s where the DeDRM plugin comes in handy.
For the plugin to works as intended, the main challenge is that Calibre needs to run on the same computer as ADE to access the ADE authorizaton key. Fortunately this tutorial suggests a workaround.
What you’ll learn
In this tutorial I’ll show how we can:
- Run ADE on Linux using Bottles.
- Extracting the ADE authorization key file from the Wine bottle.
- Configuring Calibre (Linux version) to use the authorization key and convert the EPUB file.
What you’ll need
- A DRM protected .acsm file.
- An Adobe ID (Adobe email & password).
- A Linux computer with:
Let’s jump right in!
Setup the bottle
Download executable files
The first step will be to download the executable files to install in the bottle.
- ADE can be found at https://www.adobe.com/fr/solutions/ebook/digital-editions/download.html
wget https://adedownload.adobe.com/pub/adobe/digitaleditions/ADE_4.5_Installer.exe
- We will need python to extract the key. Executable for windows can be found at https://www.python.org/downloads/windows/.
wget https://www.python.org/ftp/python/3.12.8/python-3.12.8-amd64.exe
- And finally we will need the DeDRM plugin. Version 10.0.9 is the last one at this time of writing.
wget https://github.com/noDRM/DeDRM_tools/releases/download/v10.0.9/DeDRM_tools_10.0.9.zip
Create the bottle and installed ADE
Let’s create a new bottle. Set a name, select Application
and hit the create button
Wait for the bottle creation and open it. Click on Run Executable...
, then in the file explorer, select the executable previously downloaded: ADE_4.5_Installer.exe.
Wait a bit for the installer to start running. A new window will pop up. Accept the License Agreement and click Next >
On the next window, make sure Associate .acsm and .epub file types
is checked. We can uncheck the 3 other boxes. Hit the Next >
button.
Click Install
on the following window.
ADE will suggest to install Norton Anti virus…, well “No, Thank you” !!
Done, you can now hit the Close
button in the coming window. Wait a few seconds, ADE will open. We can now close the window.
Create a shortcut
Cool, ADE is now installed in the bottle. But how to get it to open without reinstalling it everytime?
On the bottle main page, click on + Add Shortcuts...
. This will open the files accessible within the bottle.
Browse all the way to drive_c/Program Files (x86)/Adobe/Adobe Digital Editions 4.5
and select DigitalEditions.exe
.
We can now run ADE by clicking on the shortcut from the bottle main page.
Authorize the bottle
Now, we have to authorize the bottle using an Adobe ID. Use the shortcut to open ADE, then click on Help
, and Authorize Computer...
.
Fill in the credentials and hit Authorize
.
That’s it, we are good to move forward.
Extract the authorization key
The DeDRM Calibre plugin uses a python script to extract the ADE authorization key. Since we want to keep Calibre installed on Linux, we can’t rely on the plugin to extract the key, because ADE has to be installed on the same host as Calibre. Instead, what we will do is to run the script ourselves to extract the key, then import it in Calibre manually.
1. Move the plugin scripts in the bottle
On your Linux computer, extract the DeDRM_tools_10.0.9.zip
archive. This should create a folder named DeDRM_tools_10.0.9
. Open this folder and extract the DeDRM_plugin.zip
archive inside.
Back to your bottle main page, click on the 3 vertical dots at the top right side of the window, then click Browse files...
. On my ubuntu computer, it opens ~/.var/app/com.usebottles.bottles/data/bottles/bottles/Adobe-Digital-Edition/drive_c/
. Go to /users/steamuser/Downloads
, then copy & paste the extracted folder named DeDRM_plugin
inside the Downloads
folder.
You can also run the following commands in your Linux terminal, assuming the path matches:
# Extract the folders
mkdir DeDRM_tools_10.0.9
unzip DeDRM_tools_10.0.9.zip -d DeDRM_tools_10.0.9
cd DeDRM_tools_10.0.9
mkdir DeDRM_plugin
unzip DeDRM_plugin.zip -d DeDRM_plugin
# Copy the folder within the bottle shared filesystem
mv DeDRM_plugin ~/.var/app/com.usebottles.bottles/data/bottles/bottles/Adobe-Digital-Edition/drive_c/users/steamuser/Downloads
2. Install python and its crypto modules
Once again, let’s click on Run Executable...
, then in the file explorer, select the python executable downloaded: python-3.13.1-amd64.exe.
Be patient while the installer starts. A new window will pop up. Click on Install now
after checking the box Add python.exe to PATH
.
You can now close the installer.
3. Generate the key file
Back to your bottle main page, click on Command Line
in the Tools
section at the bottom of the window.
4. In the terminal the opens, execute the following commands
python -m pip install pycryptodome
python drive_c/users/steamuser/Downloads/DeDRM_plugin/adobekey.py
You should get a window popping up, telling you the keys got successfuly retrieved!
You should find a new file in the DeDRM_plugin
folder with a name looking like adobekey1_uuid_046464f1-9372-42c4-9a8d-your.email@domain.com.der
. Copy this generated .der
file on your Linux filesystem.
Setup the Calibre plugin
We are almost there. Let’s open Calibre on Linux and install & configure the plugin.
- Open Calibre
- Select
Preferences
- At the bottom in the
Advanced
section, selectPlugins
- At the bottom right side of the window, select
Load plugin from file
. You’ll need to select the zip file namedDeDRM_plugin.zip
, obtained after unarchiving theDeDRM_tools_10.0.9.zip
file. When prompted for, don’t restart Calibre (not yet)
In the plugin list, double click on the newly added DeDRM plugin in the File type
section, then click on Adobe Digital Editions ebooks
.
Click on Import Existing Keyfiles
. This is where we retrieve and select the adobekey1_uuid_046464f1-9372-42c4-9a8d-your.email@domain.com.der
file previously generated.
We can now close Calibre.
Restarting Calibre is necessary for the plugin to work as intended.
Converting books
Once the initial setup is done, you will only need to follow this section for every new book you would like to read.
Convert an ACSM file to an EPUB.
First, we have to make the ACSM file accessible within the bottle. Just like we did when copying the DeDRM scripts, click Browse files...
from the main bottle page, go to /users/steamuser/Downloads
, then copy & paste the ACSM file inside the Downloads
folder (next to the DeDRM_plugin
folder).
Open ADE using the shortcut. Click on the File
button at the top left side of the Window, then Add to Library
.
Browse the filesystem to get the Downloads
folder at My Computer
> C:
> users
> steamuser
> Dowloads
. At the right bottom of the window, make sure to select Adobe Content Server Message
. If we don’t, the ACSM file doesn’t get displayed and therefore cannot be selected.
Select the file and click Open
. The book should now appear on ADE, along with a warning popup. This is fine since we don’t intend to read the book in ADE.
We can now click Ok
on the little popup window and close ADE. We are done with it 😌. Now it’s time to retreive the generated EPUB on your Linux system! Once more, click Browse files...
from the main bottle page and open the My Digital Editions
folder at /users/steamuser/Documents/My Digital Editions/
. That is where the EPUB can be found.
Convert the EPUB to MOBI format for Kindle using Calibre
- Open Calibre
- Click
Add books
and select the EPUB created in the previous step. - On the book list, right click on the book, then click on
Convert books
, thenConvert individually
- On the top right side of the window that opens, select the Output format:
MOBI
. - On the bottom right side of the window, select
OK
.
We can see the job getting started on the bottom right side of the main Calibre window. Once the job is done, our MOBI file is ready!
We can right click on the book a second time, and this time select Open book folder
, then Open book folder
again. This is where you MOBI file can be found.
Happy reading! 🤓🕮
Cleanup
Once the initial setup is done and the authorization key stored in Calibre, python is not useful anymore in the bottle. We can easily remove it by running the same installation executable a second time in the bottle, and selecting Uninstall
this time.
If you found this tutorial helpful, star this repo as a thank you! ⭐