9 ms·
Foliate – A simple and modern GTK eBook viewer
- lulouie 7y agoI'm using Linux and trying to find a e-reader recently. Here is what I tested on Arch: Calibre: Failed to open Okular: Ugly, cannot modify margin bookworm: No two-page view, only scrolling-mode, and scrolling-mode cannot get the reading progress zathura: too simplify resulting in not know how to use lector: cannot recognize epub...... Buka: cannot open the book. (I don't get the logic flow, create a list first, then import the book, then crash) Until I found Foliate, it support two-page view w/ progress bar, it support epub will in different language (I test en_US and zh_TW), fast lookup (gtrans, Wiktionary, Wikipedia), good UI, ...etc
- pastage 7y agoFbreader is nice, I've only used Calibre for converting ebooks not sure you can read in it.
- 2rsf 7y agoyou can reader using Calibre, it's far from being a good reader https://news-cdn.softpedia.com/images/news2/calibre-ebook-reader-and-converter-gets-new-filters-for-the-library-501020-2.jpg https://news-cdn.softpedia.com/images/news2/calibre-ebook-re...
- iamnotacrook 7y agoIf you open a .mobi in Calibre it takes tens of seconds, on a reasonably fast system, to open small (<2meg) books. I'd agree with the other comments here - Calibre is great in terms of it being powerful (web server to serve up books directly to a kindle without having to plug it in, search is ok once you know how to use it) but has a terrible UI (I shouldn't have to google to discover how to search my local library).
- tomlong 7y agoI've been using Calibre-Web[1] as a frontend for the Calibre database, visiting it with my Kobo Auro H2O. It will do neat things like convert to Kindle & email to the Kindle address with a button press as well so I can give access to my mum and so she can seamlessly read the epub books I have in my library on her Kindle. It doesn't look great on the Kobo, but I can navigate pretty quickly to download a book, and I hardly ever have to touch calibre itself. It's pretty easy to get set up running headlessly on a server somwhere. [1] https://github.com/janeczku/calibre-web https://github.com/janeczku/calibre-web
- deleted 7y ago[deleted]
- abrowne 7y agoI liked FBReader until I realized it wasn't displaying the blank lines used by the book series I was reading to separate sections in a chapter. Undoubtably the ebooks' CSS was bad, but other readers, like my Sony e-ink device, displayed them OK.
- agumonkey 7y agofoliate seems a great thing, but /usr/bin/com.github.johnfactotum.Foliate .. come on
- ayoisaiah 7y agoThis scheme of naming binaries is popular amongst Elementary os apps. Maybe that's were the Dev took the idea from. I don't mind it, and if it bothers you, you can easily alias it to something else
- dmm 7y ago> Calibre: Failed to open Perhaps this says more about Arch than it does Calibre.
- bechampion 7y agodont you dare!
- lulouie 7y agoyep, is because Arch (basically because qt5 upgrade...), and with the issue on it: https://bugs.archlinux.org/task/63051 https://bugs.archlinux.org/task/63051 $ calibre Fatal Python error: PyQt5.QtCore: Unable to embed qt.conf [1] 13321 abort (core dumped) calibre At that moment, I didn't have time to workaround on it :(
- r3bl 7y agoAh, too bad. It's the crappiest of the bunch UX-wise, but nothing comes close to it feature-wise. I don't use it to read (I have an e-reader for that purpose), but I'd be lost without Calibre for ebook management.
- deleted 7y ago[deleted]
- crooked-v 7y agoI really wish there was a practical alternative to Calibre for general ebook organization purposes. It's extra-painful that Books.app on Mac could almost fit that role, except that it doesn't let you edit enough metadata for your own imported files to properly manage series/publisher stuff.
- qplex 7y agoI recently used Calibre to convert a pdf to epub. I agree the UX is lacking, but it works.
- dmm 7y agoAh, the joys and pain of a rolling release :) Sorry for the snarkiness in my previous comment, if you get the chance perhaps you can look into helping with this issue. Contributing to the distributions I use has taught me a lot about the tools I use every day.
- afranchuk 7y agoI've never personally used it for epub, but apparently mupdf works with epub files. It's my go-to PDF viewer at least. Just be sure to read the man pages as most operations are keyboard hotkeys.
- michaelmrose 7y agoMupdf is a better backend for zathura than it is a reader in its own right. It's UI is lacking most notably lacking the ability to access the index.
- deleted 7y ago[deleted]
- maskros 7y agoMake sure you use mupdf-gl rather than mupdf-x11; then press 'o' for toggling the outline/index/table of contents.
- michaelmrose 7y agoThank you.
- baybal2 7y agoEver tried Evince?
- lulouie 7y agoI test it on macOS, it can't work will with epub from Kobo :(
- johnfactotum 7y agoEvince doesn't support EPUB, and the request for support has been marked as WONTFIX (see https://bugzilla.gnome.org/show_bug.cgi?id=539347 https://bugzilla.gnome.org/show_bug.cgi?id=539347). However, Atril, which was originally forked from Evince, does support EPUB rather well.
- dsr_ 7y agoThe epubreader addon for Firefox is not perfect, but it is pretty good. It would be better if it would: - reflow on window size change - allow me to pick any system font to read in
- ayoisaiah 7y agoBookworm definitely has a two-page view. I'm using it on Elementary OS
- johnfactotum 7y agoTwo-page view in Bookworm is problematic. See https://github.com/babluboy/bookworm/issues/199 https://github.com/babluboy/bookworm/issues/199
- elagost 7y agoRunning Arch as well and I use the Calibre Flatpak to manage my Kindle. I plug it in every month or so and haven't had any failures in the last year. I've found that Flatpaks solve the problem of some older programs not working well on Arch or some programs not getting updated on Debian.
- michaelmrose 7y agoRegarding Zathura the most readily available resource can be found by running man zathura and man zathurarc. The same info is of course on the web. It does 2 page view, optionally shows progress, and with the mupdf backend supports epub and pdf and a few more. Now it doesn't support mobi but calibre can automatically create an epub from the mobi on import. Calibre is still useful in 17 different ways even if you don't actually use it to read the book.
- DyslexicAtheist 7y agoI switched to Zathura and don't look back. I now read my PDF in my own color scheme[1] and totally love the keybindings. [1] config: https://pastebin.com/raw/NwYB0JNf https://pastebin.com/raw/NwYB0JNf
- guide42 7y agoThanks. This is how it looks: https://i.imgur.com/7LVLJZQ.png https://i.imgur.com/7LVLJZQ.png
- ernst_klim 7y agoImpressive, you've tried so much e-readers except the right one: FBreader.
- loeg 7y agoCalibre's ebook-viewer is tolerable when your distro doesn't break Qt5/Calibre; I think that's an Arch problem, unfortunately.
- unixhero 7y agoWell you forgot FB Reader
- darkpuma 7y agopandoc+emacs. I also use the read-aloud package, which all together makes the best ereader+TTS experience. (However I run the TTS over the lan on a mac, because FOSS text-to-speech is awful.)
- reeves23423 7y agoI am currently using https://github.com/burtonator/polar-bookshelf https://github.com/burtonator/polar-bookshelf and its one of the amazing software i use daily.
- umvi 7y agoAre there any open hardware eink ebook readers?
- mswift42 7y agoI don't think there are any. However, you easily can install alternative readers on Kobo ereaders, see here for a list of some hacks: https://www.mobileread.com/forums/showthread.php?t=295612 https://www.mobileread.com/forums/showthread.php?t=295612
- PyroLagus 7y agoThere's the BQ Cervantes, which runs FOSS software, but Kobo's open source community seems much more active. https://github.com/bq/cervantes https://github.com/bq/cervantes https://blog.bq.com/es/bq-ereaders-developers-program/ https://blog.bq.com/es/bq-ereaders-developers-program/
- xvilka 7y agoWhy don't use the compilable language? Nobody think about resources these days.
- iamnotacrook 7y agoHow do you know they didn't consider resources? If you want to compile a language you're going to need a compiler and a linker. Do you know how much water it takes to compile a single executable? Water that's better used irrigating a field which could support hundreds of well-written python and bash scripts.
- richard_todd 7y agoIn this case, I don't know how much it matters--EPUB is basically HTML, so you are going to be based around a browser-like component anyway. Might as well code the UI in js.
- rhodysurf 7y agoThis isnt electron, GJS uses native GTK controls
- Guillaume86 7y agoREADME mentions a dependency on webkit2gtk, probably only for the ebook rendering but it's not far from electron in that case.
- djsumdog 7y agoYea, webkit2gtk is pretty heavy (or at least it seems that way when trying to compile it), but it might have been the easiest way to render epub files as their render is pretty similar to HTML. It's all about tradeoffs and I don't think this one is too bad. I'm glad it isn't a pure electron app. Now we just need decent open hardware for Linux tablets! I'd love to use this program to read books on one of those mythical open source tablets that can run KDE Plasma.
- tndl 7y agoCould OP or someone else give an overview of how web-based interfaces work on native apps like this, without using something like electron? Is there a full js interpreter, dom, css parser, etc in something like Foliate?
- lulouie 7y agoI think it is mostly done by: https://gitlab.gnome.org/GNOME/gjs https://gitlab.gnome.org/GNOME/gjs
- Guillaume86 7y agoIn the readme I see: The following are runtime requirements: gjs (>= 1.52) webkit2gtk So my guess is that it's just using webkit for the html rendering.
- JasonFruit 7y agoEcosystems are tough. I'd never used meson, so I installed it using apt-get. I tried to build Foliate, and got an error about wrong arguments to `project()`. Searching for the error brought results about a wrong version, so I uninstalled meson and reinstalled it using pip. The installation completed fine. I went to run Foliate (com.github.johnfactotum.Foliate, if that wasn't somehow obvious), and I got an error from GJS (JS ERROR: SyntaxError: invalid property id @ resource:///com/github/johnfactotum/Foliate/js/main.js:57 JS_EvaluateScript() failed). If it's obvious to anyone else what's wrong here, it's not obvious to me. Isn't one of the advantages of interpreting the code on the target platform supposed to be portability? If so, why is it I so seldom can can get anything written for GJS, or Node, or a Python program not my own, to install and run without a three-hour yak shave? I'm sure this is a great project, and I mean no disrespect to the author, who did a better job of installation instructions than most — but I'm tired of installation being such a pain. It's almost, but not quite, enough to make a guy run Windows.
- jgillich 7y agoThis is exactly what Flatpak solves. https://flathub.org/apps/details/com.github.johnfactotum.Foliate https://flathub.org/apps/details/com.github.johnfactotum.Fol...
- matthewbauer 7y agoBut then you can't make changes to the app! You're stuck with a read-only copy.
- johnfactotum 7y agoYou can build your own Flatpaks from source, too. In fact that's probably how a lot of development is done these days around GNOME and its wider community when using Gnome Builder. You make a change, and Gnome Builder builds a Flatpak and runs it for you so you can test it.
- JasonFruit 7y agoYes, I finally installed it via Flatpak. What a fun adventure! First, I had to install Flatpak with apt. Then, I downloaded the Foliate .flatpakref. I installed it with `flatpack install com.github.johnfactotum.Foliate.flatpakref`, which worked the first time! No, it didn't. Of course, Flatpak let me know that my user account didn't have the ability to configure the remote repositories the Foliate flatpakref specified. I could have searched for the right way to do it, but installing as root seemed to work, and it runs fine as a regular user, too! But, of course, it doesn't. It doesn't have the ability to open files from most folders. I see by searching that you set sandbox permissions in an application manifest file, but I'm not sure I'm that attached to doing any more of this.
- Santosh83 7y agoAny reason why this can't be cross platform? Seems to be mostly using supposedly cross platform libraries like GTK...
- hbbio 7y agoJust looking at the source and finding out it's JavaScript. Although I'm probably living in a cave and didn't use Linux often on the desktop since years, it is common practice now to write Gtk/Gnome apps in JS? I tought Vala was the cool language for that kind of apps...
- chrisseaton 7y ago> I tought Vala was the cool language for that kind of apps... I think you’re about ten years behind the trend.
- CameronNemo 7y agoNope, new applications are commonly being written in Vala. For example bookworm, a GTK eBook viewer.
- deleted 7y ago[deleted]
- chrisseaton 7y agoI didn't say all new applications were being written in JS, did I? So any number of counterexamples does not disprove what I said. We were talking about the trend of what people were looking at using now.
- makapuf 7y agoOk, please: what language are people using when they want to create gnome software ? Or the trend of what people are looking at using, if you prefer. Edit: switched two words.
- pratio 7y agoIt uses epub.js which i think is really cool for rendering the documents. The UI looks pretty impressive as well. For anyone coming from Calibre, this would look amazing
- cosarara 7y agoI'm glad to see hyphenation was taken into account, even if it requires some extra packages. On the Android epub readers I've tried it never seemed to work (maybe they only support English if at all?).
- johannkokos 7y agoDoes it support multiple tabs? It doesn't seem to from the screenshot.
- johnfactotum 7y agoCurrently there's no tabs support. But it does support multiple windows.
- DominoTree 7y agoThis will be great to use on the Librem 5 when it's released! (https://puri.sm/products/librem-5/ https://puri.sm/products/librem-5/)
- lngnmn1 7y agoWhy webkit and js is considered modern? I wonder it is not Electron-based.
- bborud 7y agoWhat makes it "modern"?
- lulouie 7y agoIn my case, the most competitive UI in desktop e-reader
- lottin 7y agoIt does look pretty and it's probably very usable on a tablet, but on a full-featured computer (i.e. one equipped with keyboard and mouse) it's inefficient and idiotic.
- jmiskovic 7y agoYour comment is overly hostile. The author is present, you could give some constructive feedback instead of insulting the design. I actually disagree with you, the UI seems elegant and very usable on desktop. Maybe smallish window size on screenshots give impression that it's more suitable for tablet?
- lottin 7y agoOk, idiotic was not the right word. I apologise.
- ZuLuuuuuu 7y agoI like how it gives an option for margin size. It even allows 0 margin! One of the most annoying things about Google Play Books is that it puts pretty big margins to left and right and you have no control over them, so my phone's screen is wasted on a lot of empty space. Amazon Kindle is better because it provides a narrower margin option but I would prefer just 0 margin on my phone. Also the app itself looks nice and native, good job.
- diehunde 7y agoLooks great! I've been looking for a good e-reader for Linux lately.
- navidr 7y agoWow, I didn't see this coming. I always had this problem in Linux to the point I am going to ditch Linux for windows the moment wsl2 becomes stable. But this app is literally awesome. I wish Gnome foundation would stop acting stupid as hell and start funding projet like this and make it official Gnome project. Thank you so much.
- phkahler 7y agoI think the problem is that funding probably comes from Redhat and/or FSF. One of those is interested in business uses and the other doesn't have a lot of money. I'm starting to think everyone who can write code should try to contribute what effort they can to an open source project. I'm starting to see how a lot of small individual contributions add up over time. A project still needs a good maintainer and vision though, and that's a lot of work for someone.
- deleted 7y ago[deleted]
- Improvotter 7y agoLooks really nice. I am wondering who is reading eBooks on their computer though. Isn't it annoying to be reading a whole book on your computer?
- dmix 7y agoI read programming ebooks on my computer while typing out the programs into Vim. As I learned from Zed in his C book that you must type out the code examples if you’re going to learn from them, which I’ve found extremely useful. Otherwise for long form reading sections I switch back to my Kindle, tablet, or paper book. The other times I read on my computer are shorter academic papers, reference, and sampling the first chapter of books before switching them to my Kindle or tablet.
- Shorel 7y agoI dual boot everyday. I want to have equivalent software for both Linux and windows, to not to change my workflow too much. I am using Freda in Windows to read ebooks. I was worried about what to use in Linux. The Calibre viewer simply doesn't have the same quality as Freda. Foliate is great, and I no longer worry about this. Thanks for the heads up.
- Jnr 7y agoVery cool! Lately I rarely see good new GTK applications coming out so this warms my heart. :)
- squarefoot 7y agoI wanted to give it a try, but attempting to build a Debian package fails. $ dpkg-buildpackage ... gpg: skipped "John Factotum <50942278+johnfactotum@users.noreply.github.com>": No secret key gpg: dpkg-sign.LHxm7FS6/com.github.johnfactotum.foliate_1.4.0.dsc: clear-sign failed: No secret key dpkg-buildpackage: error: failed to sign .dsc file edit: build does indeed work and I could use the viewer, building a Debian package fails though.
- wjbolles 7y agoI had the same issue and got it to work with dpkg-buildpackage --no-sign