Sostituzione del desktop con un'applicazione
Definire la sessione definita dall'utente
Per prima cosa dovremo definire una Sessione definita dall'utente che gestisca il caso speciale quando nessun desktop dovrebbe essere caricato. Definiremo questa sessione creando un file custom.desktop in / usr / share / xsessions / con un contenuto simile al seguente:
[Desktop Entry]
Name=Custom
Comment=Custom Session to run ~./.xsession
Exec=/home/<username>/.xsession
X-Ubuntu-Gettext-Domain=<gnome-session-3.0>
Questo dirà a GDM di eseguire lo script .xsession
situato nella HOME dell'utente <username>
.
Opzionale X-Ubuntu-Gettext-Domain
è necessario per una corretta traduzione della lingua nel caso in cui si carica il desktop Unity / GNOME in un secondo momento (sostituirlo con gdm
in 10.04).
Crea uno script per iniziare
Questo script ~ / .xsession potrebbe apparire così semplice:
#! /bin/bash
xterm
logout
Carica sessione personalizzata all'accesso
Se ora definiamo di caricare la nostra sessione "Personalizzata" durante il login dell'utente dato nella schermata di gdm, verrà avviato solo l'X-Terminal e torneremo a gdm all'uscita. La prossima volta che effettueremo l'accesso come utente questa impostazione verrà ricordata come predefinita.
Esegui l'applicazione che richiede la gestione di Windows
Ovviamente non siamo ancora in grado di eseguire un'applicazione che necessita di un gestore di Windows come GNOME. Per fare ciò, sostituire lo script .xsession con qualcosa del tipo:
#! /bin/bash
gnome-wm &
firefox
logout
Possiamo vedere che il gestore di Windows GNOME è ora caricato ma non sono presenti elementi desktop. Ciò consente l'avvio di un'applicazione (ad es. Firefox qui).
Ma fai attenzione a ciò che fai: se minimizziamo l'applicazione sul vassoio inesistente, finiremo con un bel sfondo da guardare. Per questo motivo è molto importante includere logout
alla fine dello script per disconnettersi dalla sessione al termine dell'applicazione. Non c'è davvero nessun altro programma in esecuzione per fare questo per te fino a quando non ne aggiungi uno al tuo script. Hai deliberatamente sostituito il desktop solo da Firefox (una cattiva idea).
Naturalmente saremmo anche in grado di iniziare gnome-desktop
o gnome-session
(risp. Opzioni) dallo script, ma questo è ciò che già facciamo di default.