On Fri, 20 May 2016 11:12:02 -0400 Michael Orlitzky <m...@gentoo.org> wrote:
> On 05/20/2016 10:01 AM, Michał Górny wrote: > > > > Please review the specification provided. The basic goal is to provide > > an ability to use INSTALL_MASK alike USE flags -- with path groups that > > are well-defined and described in the repository. > > > > [1]:https://wiki.gentoo.org/wiki/User:MGorny/GLEP:INSTALL_MASK > > > > I like the idea. INSTALL_MASK is currently pretty flaky, and that's what > we tell people to use to block e.g. systemd units. Here's what I gather: > > 1. The INSTALL_MASK-like feature should support fnmatch() wildcards. > > 2. Binary packages are not be affected (there's another feature for > that) > > 3. We can define groups of paths to make certain things (bash > completions, locales, etc.) easy to mask. > > All of those are good, but are the details of what actually goes in > INSTALL_MASK left up to the implementation? How would I mask all bash > completions (the bash-completion group) using INSTALL_MASK? Yes. Configuration and implementation is left to implementation. The spec only says that it should be possible to somehow enable inclusive/exclusive filtering of specific files, and the end result should be as if they weren't installed in the first place. Getting into implementation details, I'd probably go for: INSTALL_MASK="@bash-completion" but the exact syntax is left for various package managers. Paludis and pkgcore would probably prefer a proper configuration file. > Can you make the spec say that we should be able to mask files whose > names contain spaces? Or is that implicit in the fnmatch() clause? Well, this should be implicit in fnmatch() for repo-defined paths. However, we leave this undefined for INSTALL_MASK itself, so custom paths will probably have to be declared in install-mask.conf-alike in /etc/portage. > For the portage implementation, it may be time to ditch the variable and > move to something like /etc/portage/install.mask: > > $ cat /etc/portage/install.mask > [bash-completion] > /etc/logrotate.d > read me.txt > > With one pattern per line, the spaces thing is easy to deal with. But > this makes me wonder, how is portage supposed to know I want to block > the bash-completion group and not all files named "[bash-completion]"? I'd leave this for Portage people to decide. Though I'd prefer if /etc/portage had file with the same or similar syntax to repo file. -- Best regards, Michał Górny
pgpXxrRzb6_16.pgp
Description: OpenPGP digital signature