Working with ACSM Files on Linux
I acquire books from various OverDrive instances. OverDrive provides an ACSM file, which is not a book, but instead an XML ticket meant to be exchanged for the actual book file – similar to requesting a book in meatspace by turning in a catalog card to a librarian. Adobe Digital Editions is used to perform this exchange. As one would expect from Adobe, this software does not support Linux.
Back in 2013 I setup a Windows 7 virtual machine with Adobe Digital Editions v2.0.1.78765, which I used exclusively for turning ACSM files into EPUB files. A few months ago I was finally able to retire that VM thanks to the discovery of libgourou, which is both a library and a suite of utilities that can be used to work with ACSM files.
To use, I first register an anonymous account with Adobe.
$ adept_activate -a
Next I export the private key that the files will be encrypted to.
$ acsmdownloader --export-private-key
This key can then be imported into the DeDRM_tools plugin of Calibre.
Whenever I receive an ACSM file, I can just pass it to the acsmdownloader
utility from libgourou.
$ acsmdownloader -f foobar.acsm
This spits out the EPUB, which may be imported into my standard Calibre library.