Recentemente ho messo xset b offsul mio .bashrc. Ora sono infastidito dall'errore che viene visualizzato quando eseguo l'accesso tramite tty o tramite ssh, ovvero all'esterno della sessione X.
La prima cosa che mi è venuta in mente è stata [[ -z "$SOME_VAR" ]] && xset b off(beh, si scopre che la variabile test impostata su essere vuota è una domanda diversa). Ma quale SOME_VAR è quello corretto?
Quindi ho differito l' setoutput di tty e l' setoutput di urxvt per vedere quali variabili sono impostate in X e mancanti in tty. Come previsto, c'erano molte differenze (elencando solo quelle che mi sembravano rilevanti):
DESKTOP_SESSIONDISPLAYGDMSESSIONSESSION_MANAGERWINDOWIDWINDOWPATHXAUTHORITYXDG_SESSION_COOKIEXDG_CONFIG_DIRSXDG_DATA_DIRSXDG_MENU_PREFIX
Qual è il più corretto e universale da testare per rilevare se sono in una sessione X o no? Qualcosa che funzionerebbe su quante più distro e piattaforme e ambienti desktop possibili?
O esiste un modo persino migliore di testare le variabili di ambiente?
ssh -X; funziona bene!