As specified here: https://www.recoll.org/usermanual/webhelp/docs/RCL.INSTALL.EXTERNAL.html Recoll should have a dependency on these packages: perl-Image-ExifTool antiword wv poppler-utils unrtf Not sure about the strength, probably it should be recommends. Otherwise it does not process a lot of files (RTF, doc and docx, images), which I can attest on my system. On my system, antiword and poppler-utils were already installed but they should still be a dependency. Reproducible: Always
Actually, the proper up-to-date list of dependencies is here: https://www.recoll.org/pages/features.html#doctypes There are additional packages: djvulibre ghostscript python-rarfile python3-mutagen python3-icalendar python-chardet libwpd-tools info chmlib (this is for microsoft help file, so strength of the dependency should probably be lower, but I can imagine some people have those on their disks so should still be installed probably) texlive-detex (this would pull a lot of tex so probably the dependency should be weaker)
Maybe add these reqs. in a recoll-helpers subpackage?
Hm, I just read this (new to Fedora): https://docs.fedoraproject.org/en-US/packaging-guidelines/WeakDependencies/ and based on that, I think all but texlive-detex (which should be suggests) should be "recommends". If there is a virtual intermediate package that is recommended by recoll that recommends them, I am ok with that.
also, there should probably be optional dependencies on krunner and kio (and the gnome integration), so something like Recommends: (recoll-krunner if krunner) etc. (should I check the names of the packages?)
Hmm, installing desktop environment to run the recoll app, that sounds drastic, but the opposite might make sense, let krunner have optional dep. on recoll-krunner?
Hm, I am kind of new to Fedora. There is not capability in RPM to specify conditional dependencies? When I wrote the comment above I seemed to have found that but now it seems I was halucinating. What I meant a dependency ion the form "also install recoll-krunner if krunner is already installed, otherwise do not install recoll-krunner". Is something like that possible?
I found it, this: https://rpm-software-management.github.io/rpm/manual/boolean_dependencies.html I think that should do optional dependency. Though that documentation is a bit cryptic.
Thanks for links, I will have a look
I was not sure if I pointed you in the right direction (the documentation is in my opinion really badly written, but maybe RPM is too low level as opposed to dnf or dunno) so I asked on the Forum and if I got answers right, it is indeed correct: https://discussion.fedoraproject.org/t/how-do-conditional-boolean-rpm-dependencies-work-in-fedora/164434 There are also links for mor humanreadable explanations and examples.
Hi, I got side tracked, however issue is not forgotten.
FEDORA-2025-10dc1ff53b (recoll-1.43.5-3.fc42) has been submitted as an update to Fedora 42. https://bodhi.fedoraproject.org/updates/FEDORA-2025-10dc1ff53b
FEDORA-2025-65d06022a9 (recoll-1.43.5-3.fc41) has been submitted as an update to Fedora 41. https://bodhi.fedoraproject.org/updates/FEDORA-2025-65d06022a9
Hi, added -helpers subpackage (with suggests from main) which will pull in various helpers as decribed above. Also added weak conditional deps between kf6-krunner and recoll-krunner.
FEDORA-2025-07fb7c383a has been pushed to the Fedora 43 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-07fb7c383a` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-07fb7c383a See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-2025-65d06022a9 has been pushed to the Fedora 41 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-65d06022a9` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-65d06022a9 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-2025-10dc1ff53b has been pushed to the Fedora 42 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-10dc1ff53b` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-10dc1ff53b See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
Hello, Thank you! I can confirm 'sudo dnf install recoll --enablerepo=updates-testing' pulls in recoll-krunner. (I do not have access to installation without KDE to test that it does not get installed when KDE is not present). When I manually also add 'sudo dnf install recoll recoll-helpers --enablerepo=updates-testing', it pulls in: djvulibre info libwpd However: 1) Should not recoll-krunner also pull in "recoll-kio"? 2) Should not recoll itself weakly pull in "recoll-helpers"? (just installing recoll did not) 3) Just semantically, I think recoll-helpers should weakly depend on recoll, but dependencies of recoll-helpers maybe should depend on it strongly, as it makes no sense to install the "recoll-helpers" package without pulling the helpers. But then I am not sure if one wanted to remove just one such dependency, whether it would remove all of them, in such a case a weak dependency is indeed better. 4)recoll-helpers should also depend on these additional packages: perl-Image-ExifTool unrtf wv untex libwpd-tools antiword python3-chardet python3-mutagen python3-rarfile untex (these only pull in very little dependencies) These pull in more dependencies: poppler-utils python3-chardet ghostscript chmlib poppler-utils is something one would really expect as it provides access to PDF files, the other ones are more niche. So not sure what to do about htem, on my system most of the dependencies were already installed anyway apart from tex-live.
1) ack 2) It's a Suggests: which dnf5 will ignore, how GUI package manager might consider it a hint to install -helpers package 3) recoll have Suggests on -helpers. 4) in next build the list in recoll-helpers will be: Recommends: antiword Recommends: djvulibre Recommends: ghostscript Recommends: info Recommends: libwpd-tools Recommends: perl-Image-ExifTool Recommends: poppler-utils Recommends: python-chardet Recommends: python-rarfile Recommends: python3-mutagen Recommends: unrtf Recommends: wv Suggests: chmlib Suggests: texlive-detex
2) I think Recommends relation between recoll and recoll helpers would be better as I think the helpers are generally something you want and they are not that big - meaning they should be opt-out even with dnf. (when I speak of weak dependency, my understanding is that both Recommends and Suggests are weak dependencies). I 4) For tex support, untex does not pull any other dependencies. I tried researching now on the internet but could not find a clearcut recommendation of untex over detex or the other, so I cannot really recommend anything.
2) ok, let's try Recommends 4) I can' find untex in fedora
Thanks, it looks much better now! A) I noticed that recoll-krunner depends on recoll-kio. That is wrong, I think as they are independent. recoll-kio enables you to type (after deleting everything) "recoll:/" in Dolphin (and some other KDE software) and search with Recoll. recoll-krunner is a krunner plugin. I manually installed the RPMs one without the other and tested that they both work without the other installed. So both should be conditionally (on presence of KDE packages) recommended by recoll, but should not depend on each other. B) I noticed by running "dnf repoquery --providers-of=depends recoll --enablerepo=updates-testing" that recolls depends on chmlib. I think it should not, only recoll-helpers should depend on it. C) Recoll should conditionally recommend recoll-gssp if gnome-shell is installed, like it now does with krunner for KDE. 4) oh yeah about untex, now I realize I had it from RPMSphere. So texlive-detex :-)
a) in comment #17 you suggested: 1) Should not recoll-krunner also pull in "recoll-kio"? Which now turns out wrong, right? However, I have now added Supplement in recoll-kio to kf6-kio-core b) The chm dep is from $ ldd /usr/lib64/python3.13/site-packages/recollchm/_chmlib.cpython-313-x86_64-linux-gnu.so linux-vdso.so.1 (0x00007f00612e3000) libchm.so.0 => /lib64/libchm.so.0 (0x00007f006129a000) libc.so.6 => /lib64/libc.so.6 (0x00007f00610a8000) /lib64/ld-linux-x86-64.so.2 (0x00007f00612e5000) and is added by rpmbuild automatically, not much we can do about that. c) forward and backwards weak deps between gnome-shell and recoll-gssp add d) ack
Ad a) Yeah, my bad, I think I meant "should not recoll-kio also be pulled in if recoll-krunner is being pulled in" buteven if I meant that, I wrote it in a way that said something completely different :-D. Is there any reason why recoll-kio uses supplements and does not use conditional dependencies like recoll-krunner and recoll recoll-gssp? Though I guess they function the same so it is not a difference. Ad b) Aha! I guess that the super-correct way to deal with that would be splitting recoll's chmlib integration into a separate package, something like recoll-pychmlib or something, that would be a dependency of the helpers package, but I know too little about packaging to know if it is a lot of work or even possible and even if it is not, I guess it is something that is not at all necessary :-). I tested the latest update and I think everything works well, I even tried to install gnome-shell and it then pulled in recoll-gssp, perfect and thank you!
FEDORA-2025-07fb7c383a (recoll-1.43.5-6.fc43) has been pushed to the Fedora 43 stable repository. If problem still persists, please make note of it in this bug report.
FEDORA-2025-10dc1ff53b (recoll-1.43.5-6.fc42) has been pushed to the Fedora 42 stable repository. If problem still persists, please make note of it in this bug report.
FEDORA-2025-65d06022a9 (recoll-1.43.5-6.fc41) has been pushed to the Fedora 41 stable repository. If problem still persists, please make note of it in this bug report.