Минимальный пример Buildroot
Мой любимый способ узнать, что что-то делает, это сделать минимальный пример, который его запускает.
На Ubuntu это сложно, так как второй startx может противоречить вашему текущему рабочему столу.
https://askubuntu.com/a/519164/52975 предлагает Xnest, но с помощью Buildroot мы можем пойти еще более минимально и создать микро-дистрибутив только с установленным X11 .
Таким образом, должно быть проще понять, что происходит.
Я описал создание дистрибутива по адресу: https://askubuntu.com/a/ 519164/52975
После того, как вы получили изображение, запущенное на QEMU, вы запускаете оболочку TTY.
Затем, когда вы выполните:
root
startx
он запускает графический интерфейс X11:
Теперь взгляните на источник для startx внутри этого дистрибутива, который является всего лишь сценарием оболочки.
Это простая оболочка над /usr/bin/xinit и что она проходит /etc/X11/xinit/xinitrc до xinit.
Если вы откроете /etc/X11/xinit/xinitrc, она содержит следующие строки:
[ f2]
, поэтому мы видим, что он запускается:
[d1 9] twm: очень простой и старый менеджер окон xclock и xterm, который мы видим на экране
Для /usr/bin/xinit мы можем сделать:
man xinit
[d23 ], в котором говорится:
Если в командной строке не указана конкретная клиентская программа, xinit будет искать файл в домашнем каталоге пользователя, который называется .xinitrc, для запуска в качестве сценария оболочки для запуска клиентских программ. Если такой файл не существует, xinit будет использовать следующее по умолчанию:xterm -geometry +1+1 -n login -display :0
Если в командной строке не указана какая-либо конкретная клиентская программа, xinit будет искать файл в доме пользователя каталог под названием .xinitrc для запуска в качестве сценария оболочки для запуска клиентских программ. Если такой файл не существует, xinit будет использовать следующее по умолчанию:
X :0
Если вы используете драйверы NVIDIA, вы должны изменить свои настройки там. Я бы рекомендовал использовать команду xrand для изменения ваших настроек, вы можете сделать сценарий автоматического запуска или комбинацию клавиш для переключения между настройками с помощью команды xrand. [ ! d0]
Изменить: исправить его IgnoreLid=true в файле /etc/UPower/UPower.conf!
Если вы используете драйверы NVIDIA, вы должны изменить свои настройки там. Я бы рекомендовал использовать команду xrand для изменения ваших настроек, вы можете сделать сценарий автоматического запуска или комбинацию клавиш для переключения между настройками с помощью команды xrand. [ ! d0]
Изменить: исправить его IgnoreLid=true в файле /etc/UPower/UPower.conf!
Если вы используете драйверы NVIDIA, вы должны изменить свои настройки там. Я бы рекомендовал использовать команду xrand для изменения ваших настроек, вы можете сделать сценарий автоматического запуска или комбинацию клавиш для переключения между настройками с помощью команды xrand. [ ! d0]
Изменить: исправить его IgnoreLid=true в файле /etc/UPower/UPower.conf!