On Monday 14 Apr 2014 04:41:05 Tom Wijsman wrote: > On Sun, 13 Apr 2014 22:00:10 +0100 > Peter Humphrey <[email protected]> wrote: > > How is it possible for portage to emerge packages differently when > > it's installing from packages? > > The difference is mostly accountable to build-time dependencies; > without binpkg they need to be pulled in for the build, with binpkg > there is no build thus those build-time dependencies aren't needed. > > The rest (only a small few) are accountable to the recorded > dependencies in the binpkg being different from the dependencies of > the ebuilds in the Portage tree; as dynamic dependencies* don't work > entirely well with binpkgs and thus there is this small difference. > > * These propagate ebuild dependency changes to /var/db/pkg/. > > Here is a list of those that aren't installed along the binpkgs: > > $ diff -u list listk | sort -k4 | pcregrep -Mv '^\+\N*\n-' | grep '^-\[' --->8
Many thanks for that little bit of magic. I've incorporated it into a simple script to find all the missed packages and list their atoms in a form suitable for piping into emerge. I still think this is bad behaviour by portage. If portage's environment is identical in the two cases and I tell it to emerge -ek, the results should be identical to those if I tell it to emerge -e. I know that -e means "empty- tree" but that sounds to me exactly like "everything", so that's what I expect to get. Thanks again to both of you - at least I can now be sure that I've rebuilt everything when I think I have. I hate to think how many things I've missed in the past. -- Regards Peter

