Recentemente eu coloquei xset b offno meu .bashrc. Agora eu estou irritado com o erro que aparece quando eu faço logon via tty ou via ssh, ou seja, fora da sessão X.
A primeira coisa que me veio à mente foi [[ -z "$SOME_VAR" ]] && xset b off(bem, acontece que a variável de teste sendo definida versus vazia) é uma pergunta diferente). Mas qual SOME_VAR é o correto?
Então, diferenciei a setsaída de tty e a saída de urxvt setpara ver quais variáveis são definidas em X e ausentes em tty. Como esperado, havia muitas diferenças (listando apenas as que me pareciam relevantes):
DESKTOP_SESSIONDISPLAYGDMSESSIONSESSION_MANAGERWINDOWIDWINDOWPATHXAUTHORITYXDG_SESSION_COOKIEXDG_CONFIG_DIRSXDG_DATA_DIRSXDG_MENU_PREFIX
Qual é o mais correto e universal para testar, a fim de detectar se estou em uma sessão X ou não? Algo que funcionaria em tantas distros, plataformas e ambientes de desktop quanto possível?
Ou existe uma maneira ainda melhor do que testar variáveis de ambiente?
ssh -X; funciona bem!