Для старта CDE обычно используется dtlogin
. Однако с ним в Hyperbola GNU/Linux-libre есть небольшая проблема, если выставить его запуск в openrc, то почему-то он запускается раньше tty, соответсвенно переключения между tty и даже выключение компьютера становится затруднительным.
Можно запускать dtlogin
руками каждый раз от root, то есть каждый раз логинится в root. Но в этом случае dtlogin
подвисает при выключении компьютера, из-за чего fsck
ждет его каждый раз, то есть выключение компьютера растягивается на несколько минут. Плюс каждый раз запускать вручную выглядит утомительным.
Из-за этого был выбран запуск его через xinitrc
. Делается это так:
echo "/usr/bin/startcdesession.sh" >~/.xinitrc
И в ~/.bash_profile
записывается
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
if [ "x$(tty)" == "x/dev/tty1" ]
then
exec startx
fi
.bash_profile
, а не .bashrc
— чтобы это не выполнялось при старте графики.Таким образом, при логине через консоль в tty1 автоматически запускается startcdesession.sh
, который, собственно, и запускает CDE.