doug-x07 wrote:TI take it from the comments that /etc/make.profile/packages has become the main place for pinning system configuration. Not sure that I quite understand how to use package.mask in that context now though.
The way I think of it is that /etc/make.profile/packages is positive. It tells what software must be installed by "emerge system". packages.mask is negative. It says "even though this software is available, please don't install it".
So if understand custom right,
The normal state of affairs is that /etc/make.profile is a symlink to one of the profiles in /usr/portage/profiles. What I meant by "custom" is "if you break the symlink and maintain your own profile".
I could write a script that modifies the line for the version of perl in etc/make.profile/packages after a sync.
That would certainly do it. I've also seen some comments from other posters suggesting that appending lines to these files might be sufficient. IOW, you could just tack another perl line, even if there is one in there already. The last one would win. Even if this works, I don't know that it's a good idea to rely on it, so modifying the line seems like a more reliable solution. And your concerns about losing the benefit of other changes upstream are valid.