All app-text/foliate versions are missing many runtime dependencies - at least the following: x11-libs/gtk+:3[introspection] x11-libs/pango[introspection] x11-libs/gdk-pixbuf:2[introspection] gui-libs/libhandy:=[introspection] net-libs/webkit-gtk:4[introspection] Additionally there is an optional runtime dependency on app-text/gspell[introspection] (if not there at runtime, it won't spellcheck or something). Any kind of imports call in the javascript source code will need the USE=introspection of the appropriate library. The above are what I found with a brief grep from src_prepare results (I don't use nor have foliate installed)
(In reply to Mart Raudsepp from comment #0) > All app-text/foliate versions are missing many runtime dependencies - at > least the following: > > x11-libs/gtk+:3[introspection] > x11-libs/pango[introspection] > x11-libs/gdk-pixbuf:2[introspection] > gui-libs/libhandy:=[introspection] > net-libs/webkit-gtk:4[introspection] I'm not a JavaScript expert. I use foliate nearly every day to read .epub and .fb2.zip books. It works fine without libhandy. Maybe, it is not really needed? (gtk+:3, pango, gdk-pixbuf:2, webkit-gtk:4 are installed with USE=introspection) > Additionally there is an optional runtime dependency on > app-text/gspell[introspection] (if not there at runtime, it won't > spellcheck or something). I also don't have it installed, but I never tried to spellcheck anything in foliate. I'll just add elog to inform the user about this optional feature.
(In reply to Mart Raudsepp from comment #0) > x11-libs/gtk+:3[introspection] > x11-libs/pango[introspection] > x11-libs/gdk-pixbuf:2[introspection] These are pulled in by webkit-gtk:4[introspection]. So, it's sufficient just to add [introspection] to the webkit-gtk dependency. Its only slot available in the tree is :4, so, :4 seems somewhat redundant.
libhandy is used optionally as well, hidden behind a wrapper in src/handy.js which falls back to gtk only stuff when libhandy[introspection] isn't available. libhandy there mainly makes it more dynamic and responsive when you make the window narrow (in width), but it also provides a different (better?) searchbar for example. As I already said, gspell[introspection] is optional as well. If there are non-zero slots defined, you are supposed to depend on the correct one, this is a QA thing. In addition, there WILL be a new slot once a parallel-installable gtk4 using webkit-gtk materializes. And that's why it's a QA thing - SLOTs being there signals there may be new ones in the future, so you HAVE to depend on the correct thing. You should also depend on all that you use directly - e.g. you can't predict whether suddenly webkit-gtk[introspection] doesn't need gdk-pixbuf:2[introspection] itself and gets dropped from the indirect deptree. Note that I'm the gjs, pango, gdk-pixbuf, gtk+, libhandy and webkit-gtk co-maintainer.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=afda95927ec161b2ddee8e08839426a811260cff commit afda95927ec161b2ddee8e08839426a811260cff Author: Andrey Grozin <grozin@gentoo.org> AuthorDate: 2020-07-20 14:33:50 +0000 Commit: Andrey Grozin <grozin@gentoo.org> CommitDate: 2020-07-20 15:16:08 +0000 app-text/foliate: correct dependencies Closes: https://bugs.gentoo.org/732366 Package-Manager: Portage-3.0.0, Repoman-2.3.23 Signed-off-by: Andrey Grozin <grozin@gentoo.org> app-text/foliate/foliate-2.4.2-r1.ebuild | 51 ++++++++++++++++++++++++++++++++ app-text/foliate/metadata.xml | 3 ++ 2 files changed, 54 insertions(+)