LINUX.ORG.RU

Как организовать работу иксовых приложений в контейнерах lxc

 , ,


1

4

Как вы можете догадаться, это неттоп-домашний сервер, присоединенный к телевизору по hdmi. Задумка была держать на нем несколько контейнеров с иксовыми приложениями: steam, firefox, kodi.

Собственно, на хост машину поставил xserver и всю обвязку, запустил xinit. На контейнере:

$ export DISPLAY=:0
$ firefox

Лиса запустилась - правда без звука, но, как я понял, там нужно прокидывать пульсу - но меня смущает сама такая организация.

Во-первых, xinit сразу же открывает xconsole. Не вдаваясь в подробности, я бы предпочел видеть login prompt хост машины, в случае если ни один «иксовый» контейнер не запущен. Если же такой работает - хочу видеть результат его работы. Иными словами, можно ли запустить иксы в фоне и выводить картинку только если появляются какие-то приложения, типа браузера?

Во-вторых, правильно ли вообще использовать одни иксы на все контейнера?

Готов выслушать и всякие остроумные, но аргументированные, советы, чем вообще можно заменить иксы.

Звук, наверное, придется тоже как-то так же разводить, потому что хочу выводить вконтактик и интернет-радио и mpd всякие на старенький (в плане интерфейсов) музыкальный центр.

На момент запуска X-приложения (firefox) X-сервер уже должен работать. Единственное, что это может быть не настоящий X-сервер, выводящий на монитор, а Xvnc или Xpra или ещё что.

Во-вторых, правильно ли вообще использовать одни иксы на все контейнера?

Смотря для чего у вас контейнеры, если для разделения по соображениям безопасности, то один иксы неправильно.

mky ★★★★★
()
Ответ на: комментарий от mky

На момент запуска X-приложения (firefox) X-сервер уже должен работать.

это-то понятно, но можно ли перенаправить/подавить вывод видеопотока икс сервера до того момента?

Смотря для чего у вас контейнеры, если для разделения по соображениям безопасности, то один иксы неправильно.

ну мне для домашнего использования. Какая-никакая безопасность, но больше, наверное, «незахламление» основной системы.

Nicholass ★★★
() автор топика
Ответ на: комментарий от Nicholass

Подавить вывод можно, толькое если приложение будет взаимодействовать с промежуточным x-сервером, типа Xpra, X2go или x11vnc, к которому когда нужно можно подключаться. Но я не знаю что там будет с dri/opengl и пр. расширениями, насколько хорошо это будет для игр/видео.

При этом, вам в любом случае нужен какой-то механизм, который бы при появлении нужного окна (приложения) запускал X-сервер, и клинета (типа VNC) подключающегося к этому промежуточному серверу.

Наверное, можно сделать скрипт, постоянно проверяющий вывод xlsclints, и запускающий vnc-клиента или просто переключающий виртуальную консоль на ту, где запущен X-сервер. Или может вам просто запускать контейнер и X-сервер одним скриптом.

mky ★★★★★
()
Ответ на: комментарий от mky

Или может вам просто запускать контейнер и X-сервер одним скриптом.

да, скорее всего так и сделаю.

Nicholass ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.