Project Talk:Portage/Changed dependencies
From Gentoo Wiki
This discussion is still ongoing.
wish to have a quick little definition/note about
"packages with stale dependencies" / "stale dependencies"
ex from emerge manpageː installed packages for which the corresponding ebuild dependencies have changed since the packages were built.
Thanks — The preceding unsigned comment was added by Jms (talk • contribs) 04:22, January 30, 2018
- This doesn't make it clear to me yet. It seems to be not simple enough to fit in a single sentence. Occasionally I run into this issue with binary packages (--buildpkg/ quickpg, not the -bin-variants). According to https://devmanual.gentoo.org/general-concepts/dependencies/ a variety of dependencies exists. For example libreoffice depends on icu and glibc. Many atoms in the tree of dependencies of libreoffice also depend on glibc. What exactly causes a change follows complex rules. This does not only involve slots but also ABI changes and major upgrades.
- This section also omits emerge option --rebuilt-binaries. I couldn't find an enlighting description. It has various effects depending on host (world set) and other options like -g. Also repeated execution yields the same list of packages to be rebuilt.
- I assume that the entire topic of dependencies in conjunction with the plethora of emerge options does not fit on a single wiki page. And there are even cases where emerge cannot cross the street without human assistance, e.g. bug #372005 (so called pinned version) or User:Sam/Portage_help/Circular_dependencies And sometimes even the tools show white spots on the map. For example qlist – the most capable of all query tools – cannot decode all atoms correctly. (This is my personal opinion and maybe I'm only doing it wrong. But qlist -IRv '>=sys-apps/dbus[X]' yields a result whereas omitting the operator does not: qlist -IRv 'sys-apps/dbus[X]'. But exactly this atom pops up in DEPENDS for example of libreoffice and is absolutely valid evaluating to »any version of dbus as long as USE=X is given«. And I also assume that the operator-variant is broken, too as it should not evaluate at all lacking the version part.)