Jak mogę uruchomić X11 tylko dla jednej aplikacji?

22

Planuję używać mojego RPi tylko do jednej aplikacji, która wymaga uruchomienia serwera X.

Ta aplikacja to chrom, który już wymaga DUŻO zasobów.

Chciałbym uruchomić tylko absolutne minimum (serwer X), aby wyświetlić chrom w --kiosktrybie (pełny ekran, nie można wyjść, nie pokazuj pulpitu ani niczego innego)

Czy to możliwe, a jeśli tak, to w jaki sposób?

DrakaSAN
źródło
Czy zamiast Chromium, który zamienia pamięć na szybkość, akceptowalny byłby iceweasel (firefox w przebraniu)?
Thorbjørn Ravn Andersen

Odpowiedzi:

13

Możesz zastosować sugestię Hildreda na stałe, tworząc ~/.xinitrcplik:

#!/bin/sh

exec chromium --kiosk

Zostanie to zastosowane, jeśli używasz graficznego logowania, abyś nie musiał uruchamiać się na konsoli. Aby przetestować to z konsoli, spróbuj startxbez argumentów.

Złotowłosa
źródło
1
aby być bardziej oszczędnym z pamięcią, użyj exec w ostatnim wierszu .xinitrc, abyś nie miał dodatkowej powłoki leżącej w pobliżu za pomocą pamięci / swap
hildred
1
@hildred - po prostu ciekawy, ile w przybliżeniu pamięci wymaga powłoka?
cwd
1
@cwd Możesz mieć pomysł z ps -o pid,rss,cmd -C bash. RSS jest w KB, to prawdopodobnie 3-4000, ale jeśli spojrzysz na to, top -p [pid]gdzie pid jest jednym z tych zgłaszanych przez ps, prawdopodobnie zobaczysz, że 75% z nich jest udostępnionych (RSS vs SHR). Tak więc dodatkowa powłoka zajmuje MB lub dwa RAM. W odpowiedzi zredagowałem sugestię Hildreda.
złotowłosa
11
startx chromium --kiosk --

startx to opakowanie dla xinit, które uruchamia xserver i jeden program kliencki. Powinien robić dokładnie to, co chcesz.

Hildred
źródło
[1: 1: 13070520614: BŁĄD: nss_util.cc (692)] Nie można załadować bibliotek NSS. (chrom: 3191): Gtk-WARNING **: nie można otworzyć wyświetlacza:
DrakaSAN