On Sun, Apr 24, 2011 at 2:58 PM, William Hubbs <[email protected]> wrote:
> All,
>
> I know a decision about this type of use flag was made in the past, but
> especially now with the --newuse option in portage, that decision
> bothers me, so I would like to re-open the discussion.
>
> I will use logrotate as my example, but what I'm saying also applies for
> xinetd.

In general having use-flags control the *config* that we ship with
packages is a silly idea.  Ideally we should ship whatever upstream
ships.  If they don't ship a logrotate config but we want to ship one,
awesome!  There is no way we can make enough unique packages to
support everyone's configuration...that is why users can configure
things to their liking themselves.

In the end there are really only a few ways this ends up:

1) We install logrotate but the user doesn't use it because they do
not have logrotate installed. This is not a big deal.  For example we
install headers all the time that the user *may* not never use to
compile against.  I don't see users complaining about that.  The
logrotate file is small and it only has 1 directory in /etc.
2) We install logrotate but the user does not like the defaults.  In
that case they should modify the defaults.  They have plenty of
options (puppet, cfengine, chef, bcgf2, a post install hook for the
package mangler...) to change the content of the logrotate file.
3) We install logrotate and the user uses the default.

>
> I feel that the current approach (using INSTALL_MASK) to control whether
> these configuration files are installed or not is not well documented.
> We tell people about it on the mailing lists, but I do not know of a
> place where it is documented.
>
> Also, it seems to be an all or nothing arrangement. If I do not want
> logrotate support, I have to set the INSTALL_MASK then if I decide later
> I want it, I have to unset the INSTALL_MASK and run "emerge -e world" to
> get the files installed.

I would argue that this is an edge case.  How many users actually use
install mask in this manner?  I imagine most users who don't care
about logrotate just don't have the package installed and leave the
files in /etc

>
> If we use a "logrotate" or "xinetd" use flag, it gives the users better
> control of which packages have this support, and the --newuse option in
> portage can be used to rebuild only the affected packages.

I don't want to get into the habit of having use flags for run-time
package configuration.

>
> I guess the argument against the use flag was that packages were being
> rebuilt just to install configuration files. I can see how that could be
> a pita for big packages. Did anyone ever bring up using pkg_config to
> un/install these files based on the use flags?
>
> Comments?
>
> William
>
>

Reply via email to