On Thu, 2024-05-09 at 14:03 +0200, Michał Górny wrote: > > @ECLASS_VARIABLE: _OVERRIDE_NAME > > This is not prefixed correctly. >
ACCT_USER_OVERRIDE_NAME has an entirely different meaning, but I could use _ACCT_USER_OVERRIDE_NAME if that's what you're suggesting. > > +# @INTERNAL > > +# @DESCRIPTION: > > +# A version of the user name suitable for use in a bash variable. This > > +# is used to construct the names of the make.conf override variables and > > +# it will always be uppercase $PN with the hyphens replaced by > > +# underscores. It is defined once, here, so that in an overlay the > > +# ebuild may set ACCT_USER_NAME to something other than $PN without > > +# affecting the name of the override variable. This is necessary if the > > +# username in question would lead to an invalid bash variable > > +# name. Doing so does violate expectations with respect to the override > > +# naming convention, but (a) your warranty is already void if you are > > +# changing ACCT_USER_NAME or using make.conf overrides, and (b) you > > +# shouldn't need make.conf overrides in an overlay. > > +_OVERRIDE_NAME=${ACCT_USER_NAME^^} > > +_OVERRIDE_NAME=${_OVERRIDE_NAME//-/_} > > Any reason not to just use PN directly below? After all, you need to > sanitize it anyway. > I started out with that, but I had to copy & paste the same comment explaining why it uses $PN to each site. Then I had the idea to factor it out. I don't really care though if you think it's preferable.