On Mon, 2018-03-19 at 15:59 -0700, Zac Medico wrote:
> On 03/15/2018 12:22 PM, Michał Górny wrote:
> > Hi,
> >
> > Here are three of four INSTALL_MASK updates I've sent long time ago
> > which were not really reviewed. The fourth patch added support
> > for repo-defined install-mask.conf and I'll do that separately.
> >
> > Those patches focus on smaller changes. What they change, in order:
> >
> > 1. Removes explicit file removal code for FEATURES=no*. Instead, those
> > values are converted into additional INSTALL_MASK entries
> > and handled directly via INSTALL_MASK processing.
> >
> > 2. Rework INSTALL_MASK to filter files while installing instead of
> > pre-stripping them. In other words, before: INSTALL_MASK removes
> > files from ${D} before merge. After: ${D} contains all the files,
> > Portage just skip INSTALL_MASK-ed stuff, verbosely indicating that.
> >
> > 3. Adds support for exclusions in INSTALL_MASK. In other words, you
> > can do stuff like:
> >
> > INSTALL_MASK="/usr/share/locale -/usr/share/locale/en_US"
> >
> > I have been using this via user patches since the last submission.
> > Guessing by 'git log', this means almost 2 years now.
> >
> > --
> > Best regards,
> > Michał Górny
> >
> > Michał Górny (3):
> > portage.package.ebuild.config: Move FEATURES=no* handling there
> > portage.dbapi.vartree: Move INSTALL_MASK handling into merging
> > portage.dbapi.vartree: Support exclusions in INSTALL_MASK
> >
> > bin/misc-functions.sh | 30 ----------
> > pym/portage/dbapi/vartree.py | 104
> > ++++++++++++++++++++++-------------
> > pym/portage/package/ebuild/config.py | 11 ++++
> > 3 files changed, 77 insertions(+), 68 deletions(-)
> >
>
> As mentioned in #gentoo-portage today, the rationale for including the
> INSTALL_MASKed files in CONTENTS is to that we can detect collisions
> that would have occurred had people not been using INSTALL_MASK.
>
> Since people can use INSTALL_MASK to intentionally prevent collisions,
> in cases where COLLISION_IGNORE is not appropriate (this is common
> practice at my workplace), we'll need a new FEATURES setting to trigger
> the new behavior where INSTALL_MASKed files still trigger file collisions.
Are we going to see this in Portage soon? And PKG_INSTALL_MASK too ?