Start X at login

From ArchWiki
Revision as of 19:22, 26 October 2012 by Modal (Talk | contribs)

Jump to: navigation, search
Summary help replacing me
Starting X automatically at login to a virtual terminal.
Automatic login to virtual console
Display Manager

A display manager can be used to provide a login screen and start the X server. This article explains how this can be done using an existing virtual terminal.

To manually start X, startx or xinit are used. Both will execute ~/.xinitrc, which may be customized to start the window manager of choice as described in the xinitrc article.

Shell profile file

Note: This runs X on the same tty used to login, which is required in order to maintain the login session.
  • For Bash, add the following to the bottom of ~/.bash_profile. If the file does not exist, copy a skeleton version from /etc/skel/.bash_profile.
  • For Zsh, add it to ~/.zprofile instead.
case `tty` in
 /dev/tty1) VT=vt1 ;;
 /dev/tty2) VT=vt2 ;;
 /dev/tty3) VT=vt3 ;;
 /dev/tty4) VT=vt4 ;;
 /dev/tty5) VT=vt5 ;;
 /dev/tty6) VT=vt6 ;;
case 'tty' in
 /dev/tty1) exec startx -- $VT ;;
 /dev/tty2) exec startx -- $VT ;;
 /dev/tty3) exec startx -- $VT ;;
 /dev/tty4) exec startx -- $VT ;;
 /dev/tty5) exec startx -- $VT ;;
 /dev/tty6) exec startx -- $VT ;;


  • This method can be combined with automatic login to virtual console.
  • If you would like to remain logged in when the X session ends, remove exec.
  • To redirect the output of the X session to a file, create an alias:
alias startx='startx &> ~/.xlog'