Trying out KOReader and Wallabag (the first few days and months)
Introduction¶
I started writing this blog post in March, completely oblivious of Mozilla’s plans of getting rid of Pocket, but with life and work being in the way I never got around to finishing it. Now that we know that Pocket is being shut down on 8 July, I decided to speed things up – and what better day to blog about eReaders than Towel Day!
For a long time already I have been aware of Wallabag – in fact, since it was still called (In the) Poche1. And have used it before, through its wonderful service https://wallabag.it.
But for equally long, I have also used Pocket (which used to be called Read-it-later). I found that some things worked better in Pocket and others in Wallabag. But the thing that ever so slightly tipped the scales in Pocket’s favour several times before for me was that it had a seemless integration with my Kobo2 eInk reader.
I have also been keeping an occasional eye on alternative eReader software for many years, but never took the plunge for different reasons. One of the things that I was waiting to become brave enough to try out was also InkBox / Quill OS for Kobo devices. I was aware of KOReader and Plato, but was always betting a bit more on InkBox as a more “pure” full-blown FOSS OS as something I would eventually switch to.
Of course, I am using the venerable Calibre to manage my eBook collection. Lately instead of a local collection though, I have all my eBooks on my home server3 using the Calibre-Web for the whole family.
OK, with that brief introductory info dump over, here is how my first week (and at this stage, honestly, months) with KOReader + Wallabag went.
Day 1 – Braving up to flash my Kobo¶
At first, I was a bit scared and did not want to mess with setting up KOReader, as I heard it was very configurable and also I have had … mixed … experience with flashing devices so far.
So I decided this would be a weekend project and planned accordingly.
Long story short, after some searching and reading, I found on MobileRead forums the instructions for One-Click Install Packages for KOReader & Plato, so that is what I went with.
Honestly, it was pretty much as simple as it sounds! And it just installs alongside the official Kobo system too.
If you were even a bit curious, do not wait as long as I have – just go and try it. It really is dead simple!
I decided to use the archive that includes both KOReader and Plato, because I heard the former is very tweakable, but you need to put some effort into making it your own; and the latter has very pleasing defaults, but barely any options.
Day 2 – Install and first glance at KOReader and Plato¶
Perhaps unsurprisingly, the One-Click Install Packages was stupid-simple to do.
Essentially I ended up with an additional menu in the official Kobo firmware, where I can choose to launch either Plato or KOReader.
I later also had the opportunity to check that updating KOReader works from the device itself and is as simple as selecting “Update” from the main menu.
First, I tried Plato, and while I quite liked its æsthetics, the longer I used it, the more I wanted to tweak a few things here and there. I would say that if Plato does exactly what you want, it is a great option, though. Especially if you have a larger screen.
My very first exposure with KOReader turned out as expected – too many menus, too many options, too much stuff – I felt a bit overwhelmed. But after the inital shock, it took me just a few hours to get a good feel of everything. The KOReader user guide helped a lot here too.
At this point, I was hooked!
The previously overwhelming plethora of settings suddenly became a collection of options that I was looking forward to tame and make my eReader truly sing to my tune. A lot of hacks exist out there for Kobo’s official firmware – and I used a few already –, but what KOReader offered out of the box was on a different level.
What also helps a lot is that you can easily disable plugins and menu entries that you do not use or want.
By the end of the day, I essentially set up my KOReader to be like I wanted it to. Sure, it took some hours, but it was well worth it.
Day 3 – Renewed interest in Wallabag¶
Both Plato and KOReader include a Wallabag client, so that got rid of one of my main reason to continue using Pocket.
With that out of the way, I went ahead and installed Wallabag on my home server4.
Which, thanks to YunoHost, was, again, just a one-click install :)
The set-up on KOReader was a bit more involved than just entering the username and password, but nothing too taxing.
Once it was set up though, it was about as easy to use as the official Pocket app on the offical Kobo firmware. I was honestly positiely suprised!
The main difference is that KOReader stores Wallabag articles as ePUB in a separate folder and syncs (in both directions) those with the Wallabag server. Treating articles as any other book on the device has some benefits, like annotation support (more on that later) and being able to modify styles etc.
I did try WallabaKo – the hack that puts the Wallabag client into Kobo’s official firmware – before and it works in a similar way. But its method to sync the articles is (undestandably) a bit hacky and not as nice as KOReader’s and the integration is not quite as frictionless. That said, if you do want to simply continue to just use the official Kobo firmware, WallabaKo is a perfectly fine solution. I do recommend you use the NickelMenu launcher to trigger the sync in that case.
Day 4 – Advanced Wallabag use, some automation¶
Today felt like the right time to poke around my new Wallabag install a bit.
As I used Wallabag before, I was quite comfortable with its basics and decided to read about some more advanced features and try to make things easier for me.
One thing I quickly made use of was to “program” a few rules to automatically tag an article. This makes finding a specific article – especially month after I have added or even read it – easier.
For example5:
if « domainName matches "kde.org" OR content matches "KDE" » then tag as « KDE »
if « domainName matches "curia.europa.eu" OR content matches "CJEU" OR content matches "Court of Justice of the European Union" » then tag as « sodna praksa, eu »
Occasionally the automatic tags are not perfect. But those can be easily changed already when you add the new article either through the browser plugin or the mobile app. Of course, you can also do it through the main WebApp too.
Then I remembered having seen some RSS support existed. And since there are some feeds that I know I would always read through my eReader anyway, that was an awesome idea! Unfortunately it was not exactly what I remembered …
Wallabag does offer RSS feeds you can subscribe to, but is not what I was looking for.
This feature was requested before, but the core team decided against adding it. It seems that they did add this feature into their SaaS offering though, so that is a bit bitter. If you really want to easily get RSS/Atom feeds directly onto your eReader, you can either have an account on wallabag.it
or use KOReader’s News plugin.
Personally, I prefer having all my long articles in Wallabag, so I decided to just continue manually saving them.
Day 5 – Exploration, integration, interconnection¶
At this point, I had pretty much everything going well and was looking for improving my reading workflows.
Articles¶
When I find a new article/page online that I want to read later on my eReader there are two options:
- It is an article I found through the web browser.
- I save it using the browser plugin or the mobile app to Wallabag.
- In KOReader I sync with Wallabag and read the article on my eReader
- It is an article in a RSS/Atom feed I am already subscribed to through Nextcloud News.
- As I typically browse my feeds on my mobile phone, when I scroll through an article in the Nextcloud News mobile app that if find too long to read right now, I share it with the Wallabag mobile app.
- In KOReader I sync with Wallabag and read the article on my eReader
eBook libraries and collections¶
When it comes to eBooks themselves, I have a shared Calibre Web library with my family and can browse that directly from my KOReader.
How does this magic work?
Fairly simple really. On my home server I mount my Calibre folder in Nextcloud as external storage (with appropriate file system permissions) and then in turn use KOReader’s WebDAV plugin to browse directly from my device.
There is also OPDS support but it currently does not work for my server. You can use it to browse public servers perfectly fine though!
Notes and marginalia¶
Since I started using a Zettelkasten(-like) method of taking notes in MarkDown, I was very happy to see that KOReader can export highlights and notes to MarkDown. Even better! It can push them to Nextcloud Notes, which I use to sync my notes between my phone and laptop anyway!
And this is where the “Wallabag articles are just ePUBs” coolness kicks in – because this means you can also treat highlights and notes the same as in any other eBook, export to Markdown and all.
That made me super happy!
Day 8 – Surprise of the day night¶
Something I spotted early on, was Night mode.
When I tried it it seemed to just invert the text and background colours to be white on black instead. Which I thought was pretty wasted on an eInk display, since it does not emit light anyway.
But no! It does make sense.
When I was reading late at night, as I usually do, I turned on the front-light and set it to the minimum, just to see a bit better.
And that is when it hit me – if you use Night mode when your front-light is on, you get even less light, because the black ink blocks it. That was such a delight to find out.
Day 9 – MOAR AUTOMATION … or not (yet)¶
I guess at this point it is safe to say I fully made the switch …
After being completely flabbergasted at the usefulness of Night mode, I noticed you can automate when it should turn on and off! So I did! So many options too!
Then I found and read up on Profiles and immediately my mind went buzzing with ideas:
- when I close a book, automatically export the notes (and upload them to my Nextcloud Notes)
- when I open an ePUB from (the) Wallabag (folder), apply the HTML5 CSS style
- when I open an ePUB that I generated from a webpage that contains legislation, apply certain style tweaks in order to make the structured articles and paragraphs actually palatable to the eyes
Unfortunately, I seem to have gotten ahead of myself.
The first one works, but I could not figure out how to get it to actually trigger automatically on book close. I have that option enabled, but it just does not fire. The trigger actually triggers and the export works in general too. Just the combination does not work. (I will file a bug and link it here when I do.)
As for the other two, it seems KOReader does not allow for style and style tweaks to be set in a Profile yet. (I will file a bug and link it here when I do.)
Next few weeks – end of honeymoon¶
In the days and weeks after the honeymoon phase I did start noticing some small issues:
- It is annoying that KOReader(’s Wallabag client’s) highlights and notes and the Wallabag highlights and notes are two completely separate things that have no idea about each other. My current solution is to try and annotatate books and articles only through KOReader, and ignore the fact that Wallabag has this functionality.
- In Wallabag you cannot search/filter for several tags at the same time (e.g. ”AI” and ”data mining” and ”copyright”). – (I will file a bug and link it here when I do.)
- In KOReader Wallabag does not parse HTML
<abbr>
tags. – (I will file a bug and link it here when I do.) - Wallabag articles do not show their length in KOReader unless you open them, which is not major, but a bit annoying when you are trying to find something to read suitable to your time available. – (I will file a bug and link it here when I do.)
- When highlighting sentences in KOReader the end punctuation is not being included consistently. – (I will file a bug and link it here when I do.)
- Wallabag does not translate footnote anchors into internal anchors (i.e. strip the URL when it is the same as the article’s), so clicking on a footnote tries to load a new page instead of just scrolling down. – (I will file a bug and link it here when I do.)
- I have not figured out yet how to sync book descriptions and star ratings from KOReader to Calibre-Web (or Wallabag).
- At some point exporting margialia to Nextcoud Notes started crashing – this is a known bug and should be fixed soon
- I have suggested some issues and improvements when it comes to the Markdown export of marginalia. There is some pushback, but also some workarounds offered. I need to look into it a bit more.
- It would be great if Wallabag tags could be used on KOReader too.
But ultimately, if I am completely honest, these are all issues I could only dream of having before I went on this adventure.
I hope they get fixed at some point, as that would make my little old eReader ever so closer to being the wonderful box the Hitchhiker’s Guide to the Galaxy was imagined to be.
But even if not, this switch was well worth it!
Interesting related tidbits¶
When using a third-party WebDAV client (including your operating system’s built-in client), you should use an application password for login rather than your regular password. In addition improved security, this increases performance significantly. See Nextcloud documentation on Third-party WebDAV clients.
hook out → whelp, now to find a replacement batteries for Kobo Aura and Kobo Aura One
“la poche” being French for “the pocket” ↩
My first eInk reader was the lovely iRiver Story HD, which I unfortunately cracked the screen of. After that I have been an avid user of Kobo, since they are pretty good, Linux-based devices, that you can side-load books on and are in general quite open to hacks (and are now officially self-repairable too). I still use my Kobo Aura, while others in the family have already Kobo Aura One models. On the other hand recently Kobo seems to have started to use Secure Boot, which could make it much more difficult to run alternative software on them. Definitely things to watch out and see, before buying. ↩
I “recently” migrated to YunoHost – more on that in a separate blog post. ↩
I did use https://wallabag.it – the developer’s SaaS offering – before and was quite happy with it, I just wanted to host my own for me and my family. So I turned my previous subscription into a regular donation instead. ↩
In case you wonder about the
« »
brackets, the main developer(s) of Wallabag are French, and they use guillemets there. ↩