The current version of Bookworm (v1.1.2) supports eBooks in the following file formats
These are the views for library management and reading in Bookworm
1. Toggle between a grid view and a list view for the library. Editing the book metadata is possible in both views however the list view allows sorting of metadata. Filtering is possible using the search bar in the library view.
2. An easy, simple layout to read books irrespective of the ebook format (epub, pdf, cbr, fb2, mobi, etc). A preference menu  allows essential adjustments for text zoom in/out, margin increase/decrease and line width increase/decrease. Bookworm comes with three reading profiles of light, sepia and dark. Multiple pages of the book can be bookmarked [ ]. Full screen mode is supported on right click or with the shortcut F11.
3. The info button  provides the following tabbed information:
4. The preference button  on the header bar provides further customization options:
Bookworm has the following shortcuts
|Anywhere||Ctrl + Q||Close Bookworm|
|Anywhere||Ctrl + F||Focus the Search Bar|
|Library View||Ctrl + V||Switching between Grid View and List View|
|Reading View||Ctrl + L||Return back to Library View from Reading View|
|Reading View||Left and Right Arrow||Previous and Next screen navigation|
|Reading View||Ctrl + '-'||Decrease Font Size|
|Reading View||Ctrl + Shift + '+'||Increase Font Size|
|Reading View||F11||Enter Full Screen|
|Reading View||Esc||Exit Full Screen|
|Reading View||Ctrl + D||Add/Remove Bookmark|
Bookworm is currently developed for Elementary OS but the roadmap is to make it distro agnostic in the future
Bookworm is available as a PPA for Ubuntu (16.04 upwards) and other Ubuntu based systems. Open Terminal and run the following comands for installation
sudo add-apt-repository ppa:bookworm-team/bookworm sudo apt-get update sudo apt-get install com.github.babluboy.bookwormIn case of issues related to missing libgranite package, add the Elementary PPA as shown below and re-try. The Elementary PPA can be removed after Bookworm is installed.
sudo add-apt-repository ppa:elementary-os/stable sudo apt-get update sudo apt-get install com.github.babluboy.bookworm
Use this link to install Bookworm on openSUSE
openSUSE package for Bookworm
If you have Flatpak on your system, then install Bookworm as a Flatpak application by running the following command in terminal
flatpak install --from https://flathub.org/repo/appstream/com.github.babluboy.bookworm.flatpakref
If you want to build Bookworm from source on GitHub from the latest code base, then ensure the following binaries are installed
Ensure the following build dependencies are installed
Install the build dependencies above with the following command on Ubuntu and Debian distros
sudo apt-get install unzip unar python2 libgtk-3-dev libgee-0.8-dev libxml2-dev libgranite-dev webkit2gtk-4.0 libwebkit2gtk-4.0-37 libsqlite3-dev poppler-utils libpoppler-glib-dev html2text curl meson valac appstream gettext ninja
Then execute the following commands (in your home dir) to build Bookworm
git clone https://github.com/babluboy/bookworm.git cd bookworm meson build --prefix=/usr mkdir -p build && cd build ninja
Then execute the following commands to install Bookworm
sudo ninja install com.github.babluboy.bookworm
If you want to build Bookworm from source on Fedora, the same build commands are required but some of the libraries are named different
sudo dnf install gtk3-devel libgee-devel granite-devel sudo dnf install webkitgtk4-devel sqlite-devel poppler-glib-devel html2text curl
Bookworm uses Weblate translation. You can contribute by translating Bookworm to your favourite languages and make the user experience better. Use the badge below to navigate to the Weblate site for simple browser based translation.
Bookworm is open source on GitHub. If you can find your way around in Vala, GTK and WebKit then Pull Requests are welcome. Otherwise you can raise an issue for a feature request.
...Or you can buy me a coffee to keep me hacking away at Bookworm