Запуск окружения рабочего стола Xfce без DM

Как то я задумался, а зафига мне вообще display manager и как обойтись без него, как обычно немного погуглил и нашел отличное решение, пользуюсь им уже 1.5 года наверное, но было лень делать заметку.


Для начала создадим файл .xinitrc в домашней директории
~/.xinitrc:
#!/bin/sh
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap

# merge in defaults and keymaps

if [ -f $sysresources ]; then
    xrdb -merge $sysresources

fi

if [ -f $sysmodmap ]; then
    xmodmap $sysmodmap
fi

if [ -f "$userresources" ]; then
    xrdb -merge "$userresources"
fi

if [ -f "$usermodmap" ]; then
    xmodmap "$usermodmap"
fi

# start some nice programs

if [ -d /etc/X11/xinit/xinitrc.d ] ; then
 for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
  [ -x "$f" ] && . "$f"
 done
 unset f
fi

exec startxfce4
А теперь укажем в .bash_profile на каких виртуальных терминала стартовать X сессию.
~/.bash_profile:
#start X
[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && startx 1>~/.xsession-errors 2>&1
Здесь указано если переменная DISPLAY не объявлена и терминал = 1, то произойдет запуск графической оболочки командой startx все ошибки будут писаться в .xession-errors

Если используете fish добавьте следующее в ~/.config/fish/config.fish:
# start X at login
if status --is-login
    if test -z "$DISPLAY" -a $XDG_VTNR -eq 1
        exec startx -- -keeptty
    end
end

Не забудьте отключить или выпилить DM.

Если нужен автологин то создаем файл
/etc/systemd/system/getty@tty1.service.d/override.conf:
[Service]
ExecStart=
ExecStart=-/usr/bin/agetty --autologin username --noclear %I 38400 linux

Комментарии ()

  1. Alex 01 октября 2019, 18:42 # 0
    Очень хорошее и годное решение. Тоже пользуюсь. Спасибо!
    Есть вопрос или предложение пиши в Telegram @cloudsv

    MTProto прokси для Telegram

    Прямой эфир

    cloudsv 01 октября 2019, 11:00
    Arch Linux Локальный редирект порта в Linux 0
    cloudsv 25 августа 2019, 19:14
    О жизни Социальная сеть от Яндекса Aura 0
    cloudsv 31 июля 2019, 00:34
    О жизни 33 year old 0
    cloudsv 25 июня 2019, 21:29
    Telegram Полезные боты в Telegram 0
    cloudsv 24 октября 2018, 00:27
    О жизни Обновление Scala Rider G4 11
    cloudsv 21 октября 2018, 23:16
    Arch Linux Памятка по основным утилитам Linux 0