Ticket #490 (new enhancement)
set $ATHENA_USER everywhere
Reported by: | geofft | Owned by: | |
---|---|---|---|
Priority: | low | Milestone: | The Distant Future |
Component: | -- | Keywords: | |
Cc: | Fixed in version: | ||
Upstream bug: |
Description (last modified by geofft) (diff)
There are not-particularly-pathological circumstances under which $ATHENA_USER is unset for an account it is ordinarily set for. Since it's easier to use a single environment variable where we want an Athena username instead of making sure everything is capable of understanding the ${ATHENA_USER:-$USER} syntax (cf. #413), we should consider being more aggressive about setting $ATHENA_USER, either by doing it in different dotfiles or in PAM somehow.
(Besides, as #553 points out, ${ATHENA_USER:-$USER} is sometimes wrong; there are local accounts that don't actually have an Athena user that corresponds to them.)
As a specific example of when this might fail to be set:
dr-wily:~ geofft$ ssh kid 'echo $ATHENA_USER' dr-wily:~ geofft$ ssh kid [...] kid-icarus:~ geofft$ echo $ATHENA_USER geofft
So, for instance, X-forwarded applications without a shell around them won't see $ATHENA_USER (consider ssh kid thunderbird for instance), but they will if I start them from a shell, which is confusingly inconsistent.
The reason we use ${ATHENA_USER:-$USER} everywhere is that we don't and shouldn't require you to have bash-config/tcsh-config installed in order for any of our config packages to work.