Добрый день! Я только-только начал осваивать linux,а именно arch, поэтому сразу извиняюсь, если вопрос глупый и сто раз обсуждался.
Пользовался я arch+openbox пару месяцев без проблем. И тут решил добавить в автозагрузку простенький скрипт на перебинд кнопок планшета через xsetwacom, прописал его в ~/.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
setxkbmap -layout 'us,ru' -option 'grp:alt_shift_toggle'
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
twm &
xclock -geometry 50x50-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
exec xterm -geometry 80x66+0+0 -name login &
exec openbox-session
Но это не помогло. Да, спустя день я разобрался, что вероятно twm и openbox конфликтовали, все заработало после правки ~/.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
setxkbmap -layout 'us,ru' -option 'grp:alt_shift_toggle'
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 openbox-session
Но остались вопросы про xinitrc:
- почему первый вариант успешно работал все это время?
- правильно ли прописывать смену раскладки по setxkbmap в этом файле?
- по арчевики вообще написано «Для запуска Openbox в качестве отдельного менеджера окон файл ~/.xinitrc должен выглядеть так: exec openbox-session», что вообще должно быть в этом файле? только одна строка про openbox?
- правильно ли прописывать запуск скриптов в этом файле? вроде проблема была не в них.
Посмотрев по форуму я так понял, что мой второй вариант вроде бы рабочий, но не хотелось бы опять весь день разбираться «почему оно все поломалось, я же ничего не сделал», ведь до этого и первый вариант работал несколько месяцев.