It sounds like you’ve looked into this before, so I’ll ask you: what is the use-case for per-user environment variables that can’t be achieved trivially through ~/.bashrc or /etc/profile ?
It sounds to me like the problem they want to solve is that there is some piece of information which needs to be present in the environment for every process that a user runs regardless of the context it was executed from (eg. $DBUS_SESSION_BUS_ADDRESS)?
In which case it would surely be served better by being contained in a config file in a standard location where it can be read by every process that needs that info instead of the executing process having to know the information and pass it in the environment, for every possible caller and calling context.
/etc/profile also needs root to edit. I agree that there should be a config file in a standard location, my issue is that using $(your local shell config) is barely a standard.
For this purpose PAM’s /etc/environment works great in the global context, but there’s no PAM equivalent for each user.
Systemd has global and per user environment stuff, but last I checked this only worked for systemd services
It sounds like you’ve looked into this before, so I’ll ask you: what is the use-case for per-user environment variables that can’t be achieved trivially through
~/.bashrcor/etc/profile?It sounds to me like the problem they want to solve is that there is some piece of information which needs to be present in the environment for every process that a user runs regardless of the context it was executed from (eg.
$DBUS_SESSION_BUS_ADDRESS)?In which case it would surely be served better by being contained in a config file in a standard location where it can be read by every process that needs that info instead of the executing process having to know the information and pass it in the environment, for every possible caller and calling context.
/etc/profilealso needs root to edit. I agree that there should be a config file in a standard location, my issue is that using$(your local shell config)is barely a standard.For this purpose PAM’s
/etc/environmentworks great in the global context, but there’s no PAM equivalent for each user.Systemd has global and per user environment stuff, but last I checked this only worked for systemd services