# Start X at Login (Italiano)

Articoli correlati

- systemd/User (Italiano)
- Automatic login to virtual console (Italiano)
- Display Manager (Italiano)
- Silent boot
- Xinitrc (Italiano)

Questo articolo spiega come avviare automaticamente il Server X dopo il login in un terminale virtuale attraverso l'utilizzo del comando `startx`, il cui comportamento può essere modificato come riportato nella pagina relativa a xinitrc, ad esempio per scegliere quale window manager avviare.

In alternativa, è possibile utilizzare un display manager per avviare automaticamente X e fornire un login grafico.

## Avviare X automaticamente dopo il login in un terminale virtuale

Nota: Il comando di cui sotto avvia X nella stessa tty dal quale si effettua il login, condizione necessaria per mantenere la sessione di login.

- Se si usa Bash, aggiungere il comando al proprio `~/.bash_profile`.

Se il file non esiste lo si copi da `/etc/skel/.bash_profile`. Se si usa Zsh aggiungere il comando al file `~/.zprofile`

      [[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && exec startx

  Nota:
  - È possibile sostituire `-eq 1` con `-le 3` (per i vt dal 1 al 3) se si desidera avvalersi del login grafico su più di un terminale virtuale.
  - X deve essere sempre avviato dalla stessa tty dove si è effettuato il login, in modo che la sessione di logind venga mantenuta. Questo comportamento è garantito dal file `/etc/X11/xinit/xserverrc`.

- Se si utilizza la Fish shell, è necessario aggiungere quanto segue in fondo al proprio `~/.config/fish/config.fish`

      # start X at login
      if status --is-login
          if test -z "$DISPLAY" -a $XDG_VTNR = 1
              exec startx
          end
      end

## Suggerimenti

- Il metodo appena presentato può essere combinato con il login automatico da console virtuale.

Attenzione: Se si utilizza PulseAudio ricordarsi di impostare in modo corretto le dipendenze per il servizio di autologin di systemd affinchè dbus sia avviato prima che `~/.xinitrc` sia letto. (Si veda BBS#155416).

- Se si desidera mantenere il login su TTY quando la sessione di X viene terminata, si rimuova `exec`.
- Per redirigere l'output della sessione di X su un file, si crei un alias:

      alias startx='startx & > ~/.xlog'

- Se si dispone di un file di configurazione del profilo (`~/.bash_profile` o `~/.zprofile`, ecc.) si inserisca il comando di cui sopra in questi files, in modo che venga eseguito solo se il login avviene correttamente

Categories:

- X Server (Italiano)
- Boot process (Italiano)