Difference between revisions of "Start X at login"

From ArchWiki
Jump to: navigation, search
(it's supposed to work as a proper display manager, so logging out should go back to a login prompt)
(have to send stderr to /dev/null or it prints an error for every login shell inside of X)
Line 29: Line 29:
* For [[Zsh]], add it to {{ic|~/.zprofile}} instead.
* For [[Zsh]], add it to {{ic|~/.zprofile}} instead.
  <nowiki>(( $(fgconsole) == 1 )) && exec startx -- vt1</nowiki>
  <nowiki>(( $(fgconsole 2>/dev/null) == 1 )) && exec startx -- vt1</nowiki>
== Tips ==
== Tips ==

Revision as of 17:36, 14 October 2012

zh-CN:Start X at Login Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary end

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.
(( $(fgconsole 2>/dev/null) == 1 )) && exec startx -- vt1


  • This method can be combined with automatic login to virtual console.
  • If you would like to remain logged in when X is killed, remove exec.
  • To redirect the output of the X session to a file, create an alias:
alias startx='startx &> ~/.xlog'
  • Alternatively, you can use xinit instead of startx (since startx is an extension anyway).