Récemment, j'ai mis xset b offmon .bashrc. Maintenant, je suis ennuyé par l'erreur qui apparaît lorsque je me connecte via tty ou via ssh, c'est-à-dire en dehors de la session X.
La première chose qui m'est venue à l'esprit était [[ -z "$SOME_VAR" ]] && xset b off(eh bien, il s'avère que tester la variable définie par rapport à être vide est une question différente). Mais quel SOME_VAR est le bon?
J'ai donc différencié la setsortie de tty et la sortie d'urxvt setpour voir quelles variables sont définies dans X et manquantes dans tty. Comme prévu, il y a eu beaucoup de différences (en ne listant que celles qui me semblaient pertinentes):
DESKTOP_SESSIONDISPLAYGDMSESSIONSESSION_MANAGERWINDOWIDWINDOWPATHXAUTHORITYXDG_SESSION_COOKIEXDG_CONFIG_DIRSXDG_DATA_DIRSXDG_MENU_PREFIX
Laquelle est la plus correcte et la plus universelle à tester pour détecter si je suis en session X ou non? Quelque chose qui fonctionnerait sur autant de distributions et de plateformes et d'environnements de bureau que possible?
Ou existe-t-il un meilleur moyen que de tester les variables d'environnement?
ssh -X; fonctionne bien!