Summary: | sys-apps/portage --binpkg-respect-use should be the default | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Petr Polezhaev <NightNord> |
Component: | Binary packages support | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | dschridde+gentoobugs |
Priority: | Normal | Keywords: | InVCS |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 300071, 381649 |
Description
Petr Polezhaev
2009-12-19 17:43:58 UTC
s/--use-binpkg/--usepkg/g You can use --binpkg-respect-use for this (and --newuse also does it). I guess it couldn't be a perfect solution. At least, it should be screamed with big red letters before merging, as, I suppose, not much people reading ChangeLogs or checking man for new features for every new portage =). Or, default should be to _respect_ use flags, as I (personally) don't see much sense in merging software with wrong use-flags - it's just useless and may lead to unpredicted situations (I know about EMERGE_DEFAULT_OPTS, thanks). Also, this not solving problem with multiply rebuilded packages, if containers/hosts where this packages are build are not sorted manually in optimal order. Maybe it would be really better to some kind separate packages with different use-flags? This will also solve a problem with packages for non-native arches, for example, when building i686 packages on amd64 machine, as arch is also use-flag internally. (In reply to comment #3) > I guess it couldn't be a perfect solution. At least, it should be screamed with > big red letters before merging, as, I suppose, not much people reading > ChangeLogs or checking man for new features for every new portage =). Or, > default should be to _respect_ use flags, as I (personally) don't see much > sense in merging software with wrong use-flags - it's just useless and may lead > to unpredicted situations (I know about EMERGE_DEFAULT_OPTS, thanks). I'd prefer not to change the default behavior since that tends to upset users. > Also, this not solving problem with multiply rebuilded packages, if > containers/hosts where this packages are build are not sorted manually in > optimal order. Maybe it would be really better to some kind separate packages > with different use-flags? This will also solve a problem with packages for > non-native arches, for example, when building i686 packages on amd64 machine, > as arch is also use-flag internally. Yes, we would like to do that (bug #150031). (In reply to comment #4) > [...] > I'd prefer not to change the default behavior since that tends to upset users. Can we please reconsider this? The old default might have been a usable solution in the days when no such things as use deps existed. The complexity of today's ebuild dependencies confuses both the dependency resolver and the user often enough. We shouldn't add more confusion by letting it randomly ignore user's setting. (In reply to comment #5) > (In reply to comment #4) > > [...] > > I'd prefer not to change the default behavior since that tends to upset users. > > Can we please reconsider this? I still feel the same way about this. If a user specifies --usepkg, it's confusing if the package is silently rejected for some reason. If we make that the default, then at least we have to make it easily detectable in the user interface, and possibly suggest to use --binpkg-respect-use=n in cases when it would make a difference (similar to how we suggest --autounmask=n). > The old default might have been a usable solution in the days when no such > things as use deps existed. The complexity of today's ebuild dependencies > confuses both the dependency resolver and the user often enough. We shouldn't > add more confusion by letting it randomly ignore user's setting. I think it's still manageable. You can easily trigger similar conflicts when installed packages get pulled into the graph, since installed packages are also a form of binary packages. (In reply to comment #6) > (In reply to comment #5) > > (In reply to comment #4) > > > [...] > > > I'd prefer not to change the default behavior since that tends to upset users. > > > > Can we please reconsider this? > > I still feel the same way about this. If a user specifies --usepkg, it's > confusing if the package is silently rejected for some reason. If we make that > the default, then at least we have to make it easily detectable in the user > interface, and possibly suggest to use --binpkg-respect-use=n in cases when it > would make a difference (similar to how we suggest --autounmask=n). Maybe we can print something like the missed update messages in this case. > > > The old default might have been a usable solution in the days when no such > > things as use deps existed. The complexity of today's ebuild dependencies > > confuses both the dependency resolver and the user often enough. We shouldn't > > add more confusion by letting it randomly ignore user's setting. > > I think it's still manageable. You can easily trigger similar conflicts when > installed packages get pulled into the graph, since installed packages are also > a form of binary packages. It's not about conflicts, it's about confusion. Sure there are two different ways to confuse the user here, either by ignoring his binary packages or by ignoring his use settings. The first is already easy to detect as emerge prints them differently in the merge list and counts them in the summary below the merge list. The latter is really silent. Would you change the default, if we had a message like described above? (In reply to comment #7) > Would you change the default, if we had a message like described above? Sure, sounds reasonable. This is fixed in git: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=8111f07162a14674484fa3bbb21550cb927818ad http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=339b0ac7f3b1f5e82b427a3cde6c021c406d5b71 http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=c85965f6d0493bab84d6b7a615d39678df9d53ba This is fixed in 2.1.10.20 and 2.2.0_alpha60. |