Desktop starten ohne Loginmanager

Aus wiki.archlinux.de

Wenn man X ohne Login-Manager starten möchte, so kann man dies mittels xorg-xinit machen. Nach installation des Pakets, kann man dann nach dem einloggen an der Shell mittels startx X gestartet werden.

Hierzu muss zuvor der zur GUI passende Eintrag in der xinitrc Datei gemacht werden. Standardmäßig wird dabei die Datei /etc/X11/xinit/xinitrc geparst und X anhand der Angaben in dieser Datei konfiguriert und die dort hinterlegten Anwendungen gestartet.

Man kann sich diese Datei entweder nach ~/.xinitrc kopieren und nach eigenen wünschen anpassen, oder sie dort erstellen und ganz individuell Befehle dort hinterlegen.

Ausführliche Informationen zur ~/.xinitrc sind im entsprechenden Wiki-Artikel zu finden: xinitrc. Will man X nicht direkt konfigurieren, sondern alles über den Fenstermanager oder die Desktopumgebung machen, reicht es, wenn man lediglich den entsprechenden Aufruf in einer leere ~/.xinitrc schreibt.

Einige Beispiele für gängige Desktopumgebungen.

Name Inhalt der .xinitrc
Budgie export XDG_CURRENT_DESKTOP=Budgie:GNOME
exec budgie-desktop
Cinnamon exec cinnamon-session
Deepin exec startdde
GNOME (Xorg) exec gnome-session
GNOME (Classic) export XDG_CURRENT_DESKTOP=GNOME-Classic:GNOME
export GNOME_SHELL_SESSION_MODE=classic
exec gnome-session --session=gnome-classic
LXDE exec startlxde
LXQt exec startlxqt
MATE exec mate-session
Plasma-(kwin)) exec startplasma-x11
Plasma-(openbox)) exec openbox-kde-session
Xfce exec startxfce4
Xorg exec xterm

Beispiele für einige gängige Fenstermanager:

Name Inhalt der .xinitrc
Awesome exec awesome
Enlightenment exec enlightenment_start
dwm exec dwm
Fluxbox exec startfluxbox
FVWM exec ck-launch-session fvwm
i3 (mit Log) exec i3 -V >> ~/.i3/i3log-$(date +'%F-%k-%M-%S') 2>&1
Openbox exec openbox-session

Automatischer start nach Anmeldung

Will man, dass nach der Anmeldung an der ersten TTY (das ist standardmäßig die, deren Login-Prompt man ohne Loginmanager nach dem start sieht) X automatsich gestartet wird, kann man seine bashrc entsprechend anpassen.

if [ "$(tty)" = "/dev/tty1" ]; then
    startx
    logout
fi  

Dies startet X über startx, und wenn X beendet wird, findet automatisch ein logout statt. Weitere Informationen dazu siehe auch den Hauptartikel zu X.

Siehe auch

  • xinitrc für mehr Details zur Datei
  • bashrc für Informationen über die Shell-Konfiguration
  • X für allgemeine Informationen über X