On 02/28/2014 8:28 AM, Samuli Suominen wrote: > It would be very helpful if INSTALL_MASK could be overriden from an > ebuild, if user hasn't > set otherwise. > So it could be configured like USE_ORDER which is > "env:pkg:conf:defaults:pkginternal:repo:env.d" > So INSTALL_MASK_ORDER like "ebuild:${user's own INSTALL_MASK}" > This would be very helpful in preventing people from shooting themself > in the foot > > The only problem is that I propably don't have enough python skills to > make that happen w/ > sys-apps/portage. But does the suggestion make sense? Should I open a > feature request bug?
Given the following points: 1. systemd is, for those who install it, a critical system-level component that, when its install is damaged in some form or fashion, can make booting very difficult (if not impossible). 2. Some users wish to explicitly override INSTALL_MASK for various reasons, some specifically to remove systemd-related files they feel aren't needed when they do not use this package. 3. Some profiles also override INSTALL_MASK, such as Gentoo/FreeBSD, because systemd does not apply there. 4. So far on this thread, there are varying degrees of contention on the correct path to take to handle this. 5. And, that Gentoo, as a whole, tries to be as flexible as possible, within various degrees of reason. Would it make sense to have the systemd/udev ebuilds check for the existence of an overridden INSTALL_MASK variable and then print a very *loud* warning to the user IF systemd is already installed OR if the user is installing it for the first time (possibly to test it out or actually switching to it)? The warning will also fire if packages containing unit files are installed/upgraded. Such a warning could include a link to a Wiki article explaining things in further detail, as well as stating bugs created as a result of ignoring this message will be automatically closed as RESOLVED::WONTFIX. If it isn't possible to display that warning based on the specified criteria, then I have another idea, but it's much more "hackish" in nature. That would be to always display the stern warning whenever any package that installs a unit file is installed, and provide some kind of an global environment variable that can be set in make.conf to suppress the warning. We used to do this for glibc at one point -- I think it was for those users who attempted to downgrade glibc. The variable had to be defined in the environment or in make.conf to allow emerge to downgrade glibc. I don't know if that var is still utilized or not. In any event, love it or hate it, systemd is a reality and we have to support it, along with other init systems and configurations as much as possible (within reason). Sam raises a good point, and I think it needs to be addressed. Pointing fingers and trading accusations isn't going to accomplish anything productive. I personally override INSTALL_MASK now for all systemd/udev folders, because I don't use it or udev, but who knows, I might switch to it one day down the road and forget that I have that var set. That'll definitely cause issues for me then, and I'll be major herp-derping when I finally remember to delete that line from make.conf. -- Joshua Kinard Gentoo/MIPS ku...@gentoo.org 4096R/D25D95E3 2011-03-28 "The past tempts us, the present confuses us, the future frightens us. And our lives slip away, moment by moment, lost in that vast, terrible in-between." --Emperor Turhan, Centauri Republic