Как я могу запустить X11 только для одного приложения?

22

Я планирую использовать мой RPi только для одного приложения, для которого требуется запуск X-сервера.

Это приложение хром, который требует много ресурсов уже.

Я хотел бы запустить только минимальный (X-сервер) для отображения хрома в --kioskрежиме (полноэкранный режим, не может выйти, не показывать рабочий стол или что-то еще)

Возможно ли это, и если да, то как?

DrakaSAN
источник
Будет ли приемлема iceweasel (скрытый firefox) вместо Chromium, который обменивает память на скорость?
Турбьерн Равн Андерсен

Ответы:

13

Вы можете навсегда применить предложение hildred, создав ~/.xinitrcфайл:

#!/bin/sh

exec chromium --kiosk

Затем это будет применяться, если вы используете графический вход в систему, чтобы вам не приходилось загружаться с консоли. Чтобы проверить это с консоли, попробуйте startxбез аргументов.

Златовласка
источник
1
чтобы быть более бережливым с вашей памятью, используйте exec в последней строке вашего .xinitrc, чтобы у вас не было лишней оболочки, лежащей без дела, используя memory / swap
hildred
1
@hildred - просто любопытно, примерно, сколько памяти требуется оболочке?
cwd
1
@cwd Вы можете получить представление с ps -o pid,rss,cmd -C bash. RSS находится в килобайтах, это, вероятно, 3-4000, но если вы посмотрите, top -p [pid]где pid является одним из тех, о которых сообщает ps, вы, вероятно, увидите, что 75% этого общего ресурса (RSS против SHR). Таким образом, дополнительная оболочка занимает 1 или 2 МБ ОЗУ. Я отредактировал предложение Хильдред в ответ.
Златовласка
11
startx chromium --kiosk --

startx - это оболочка для xinit, которая запускает xserver и одну клиентскую программу. Он должен делать именно то, что вы хотите.

hildred
источник
[1: 1: 13070520614: ОШИБКА: nss_util.cc (692)] Не удалось загрузить библиотеки NSS. (хром: 3191): Gtk-WARNING **: не могу открыть дисплей:
DrakaSAN