On Fri, Apr 26, 2013 at 2:30 PM, Rick "Zero_Chaos" Farina <zeroch...@gentoo.org> wrote: > The user is distinguishing right from wrong by setting things like > USE=bindist, portage simply doesn't seem to be respecting that in the > case of RESTRICT=bindist.
I think what is missing is a clear set of definitions. USE=-bindist means build a package that the maintainer thinks isn't legal to distribute under some set of circumstances (which might or might not be the user's circumstances). RESTRICT=bindist in an ebuild means what? Let's look at the devmanual: RESTRICT - A space-delimited list of portage features to restrict. Valid values are fetch, mirror, strip, testand userpriv. See man 5 ebuild for details. man 5 ebuild: bindist - Distribution of built packages is restricted. And how does a user tell portage whether they intend to redistribute something in the first place? The fact that an ebuild sets RESTRICT=bindist does not have anything to do with whether it will in fact be redistributed. It sounds like we would need a FEATURES=bindist to go along with it. Oh, and it sounds like RESTRICT=bindist often should be conditional based on USE=-bindist, but you can't set RESTRICT conditionally, so that won't work. Also, isn't all of this somewhat redundant with ACCEPT_LICENSE? It is the license that allows you to redistribute something in the first place, though with some licenses it might be conditional upon how the package is built/branded. The last thing we need on any of this stuff is a hard error. What is needed first is for those who care about such things to cleanly specify a sane set of definitions and behavior. Rich