Transform web pages into EPUB files

Remote Work

Transferring the saved articles in the ePub format from your machine to a dedicated reading device such as Kobo or Kindle is as straightforward as it gets. However, you might want to host your library on a remote server, so you can access the saved content from anywhere. While you can set up a fully-featured OPDS server on a remote machine using applications such as Calibre, a simpler solution would do the job just fine. You can modify the script to have it sync the contents of the Library directory to a remote web server. Here's an example command that uses the rsync tool to back up the Library directory to the remote web server via SSH:

rsync -avhz --delete -P -e "ssh -p 22" /readiculous/Library/ user@

Theoretically, you'd need a proper index.html page for the published library, but the ingenious h5ai [4] software can take care of that. Drop h5ai into the document root of your web server, and it will render any directory without an index page as a sleek and easy-to-navigate catalog (Figure 2). You can then access your library using a regular browser and download the desired ePub file to your reading device.

Figure 2: h5ai turns any directory on a web server into a sleek catalog.

Similarly, you can install onto a remote Linux server and run it from anywhere via SSH with one additional tweak. In its original form, the script uses the Arvo font for generating cover titles. To install the font on a remote machine running Debian or an Ubuntu-based server, put the appropriate .ttf font file into the /usr/local/share/fonts directory and run the command:

fc-cache -f -v

Of course, establishing an SSH connection to a remote server to run the script every time you want to save an article is somewhat impractical. The supplied add.php PHP script provides a solution to the problem (assuming that your web server supports PHP). The script adds a simple HTML form that makes it possible to add URLs to the links.txt files. You can then run the script with the -m auto parameter to convert the saved links to ePub files in a single action. Even better, you can create a cron job that performs the operation at regular intervals. For this setup to work, you need to adjust the path to the links.txt in the script.

Closing Remarks

While does lack the elegance and advanced functionality of commercial read-it-later services, it provides something more important: full control over your data and tools, limitless tweaking options, and the fun of working on your own coding projects.

The Author

Dmitri Popov has been writing exclusively about Linux and open source software for many years, and his articles have appeared in Danish, British, US, German, and Spanish magazines and websites. You can find more on his website at

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus