On 5/16/21 12:53 PM, Andreas Fink wrote:
On Sun, 16 May 2021 12:49:26 +0200
n952162 <n952...@web.de> wrote:
On 5/16/21 11:28 AM, Neil Bothwick wrote:
On Sun, 16 May 2021 11:26:37 +0200, n952162 wrote:
There are no use flags defined for any of the packages I did a random
check for, either on the server or the client. I am worried that it
is as you say: that the ebuild has a change of USE flags, which, of
course, has nothing to do with me, the user.
As already stated, any USE flag changes would appear in the emerge
output, this is most likely caused by --changed-deps. Try with
--changed-use but without --changed-deps to see.
I have introduced that into my build script. But, if it's as you say,
the one is a subset of the other, it should have no effect on the
output, right?
--changed-use is a subset of --newuse. --changed-deps is separate.
Ah, I oversaw that.
Ah. why would I want to have --changed-deps anyway? That suddenly seems
silly.
It's unfortunate, if there's no explanatory display if a package got
disqualified for that reason.
Trying to comprehend here...
If you want to have a binhost, then --changed-deps will become
"necessary" at some point. Let me draw you a picture, where a binhost
would fail to provide the correct package:
- Binhost builds on day 1 package XYZ(i.e. server updates from internet)
- computer that would merge with packages from binhost is NOT updated(client
does NO emerge on that day)
- the dependencies are changed on day 2(i.e. XYZ is emerged onto server, with
changed dependencies in the ebuild)
- Binhost does NOT rebuild, because you do not have --changed-deps
enabled on day 2*(what is "Binhost" here? The --changed-deps is specified
on the client)*
- Computer that merges from the binhost is updated on day 2 but will
NOT use the binary package from binhost, because the dependencies do
not match
There are flags to ignore dependency mismatches, but the default would
just not use the binary package.
Cheers
Andreas
What does changed-deps mean, actually?
--changed-deps [ y | n ]
Tells emerge to replace installed packages for which
the corresponding
ebuild dependencies have changed since the packages were
built. ...
I presume it means that a package needed XYZ before, but now needs
XYZZ. If I don't specify --changed-deps, that I might get a run-time
resolution problem.
Or, does it mean that the package specified XYZ.1 in an excess of
precision and the new version specifies XYZ.3?
I just ran into this:
--binpkg-changed-deps [ y | n ]
Tells emerge to ignore binary packages for which the
corresponding ebuild
dependencies have changed since the packages were built.
In order to help
avoid issues with resolving inconsistent dependencies,
this option is auto-
matically enabled unless the --usepkgonly option is
enabled. Behavior with
respect to changed build-time dependencies is controlled
by the --with-bdeps
option.
But I haven't figured out what it means yet. In particular, what all
the stated implications mean.