Home > codice, guide > xttydm (aka lanciare X dopo il login da tty)

xttydm (aka lanciare X dopo il login da tty)

non so voi ma io nutro una particolare avversione verso tutti quei login manager (gdm, kdm, xdm) che reputo pesanti e poco funzionali, soprattutto perché utilizzando un laptop ritenevo un inutile spreco di risorse (leggasi batteria) avviare tutto l’ambaradan per (ad esempio) modificare qualche piccolo file o effettuare qualche piccola operazione.
E poi voglio far vedere a tutti il mio favoloso issue :)

da sempre quindi disattivo questo tipo di applicativi preferendo un più semplice login da terminale (tty) e poi (all’occorrenza) avviare x tramite il comando `startx`.

Per vari motivi ho deciso di muovere un ulteriore passo dato che iniziavo a digitare ad ogni avvio quel comando:
pe
rchè non posso avviare X automaticamente dopo aver effettuato il login ad esempio dalla tty1?

Bene, la soluzione è tutto sommato semplice, ho creato uno scriptino che effettua dei controlli (se eventualmente il server X è già attivo e se è tutto ok allora lancio X tramite startx appunto.
Eccolo qui:

#!/bin/bash
 
function check {
if [[ -f /tmp/login ]]; then
if [[ ! -f /tmp/.X0-lock ]]; then
rm /tmp/login
return 0
else
return 1
fi
else
touch /tmp/login
return 0
fi
}
 
check
 
if [[ $? -eq 0 ]]; then
 
startx 1>/dev/null 2>/dev/null
 
fi

Successivamente c’è da modificare .bashrc e metterci un ulteriore controllo e richiamare lo script:

case "$TERM" in
linux) ~/bin/startx.sh & ;;
*) ;;
esac

ovviamente ~/bin/startx.sh è il path completo allo script precedentemente creato.

Infine non ci resta che editare (da root) il file  /etc/X11/Xwrapper.conf settando come allowed_users=anybody

Ecco fatto ora tutto funziona alla perfezione.

Francesco Apollonio codice, guide , , , , ,