Système basé sur Debian, un seul programme gui, rien d'autre

23

J'aimerais créer un système Debian où vous ne pouvez ouvrir qu'un seul programme GUI au démarrage, aucune autre interface graphique, aucune minimisation, ou tout X en dehors de ce programme, existe-t-il un moyen de le faire sur Debian si possible, ou tout autre distribution personnalisée? Je veux juste ouvrir le programme et permettre à l'utilisateur de ne voir et d'utiliser que ce programme.

Zaxuhe
la source
2
L'exécution d'une seule application s'appelle un kiosque; utilisez ce mot dans vos recherches, y compris ici .
Gilles 'SO- arrête d'être méchant'
Récemment, je rencontrais des problèmes similaires et j'ai publié une solution - non basée sur Debian, mais qui fonctionnerait exactement de la même manière avec Debian. unix.stackexchange.com/questions/344374/… La beauté est - seules 2 combinaisons de touches fonctionnent (pour redémarrer ou pour arrêter), le système est rapide et n'a accès qu'au navigateur, à la saisie de texte normale et à la souris. Pas d'autres applications.
r0berts

Réponses:

13

Je l'ai fait avec Ubuntu (basé sur Debian), bien que je pense que la technique s'applique également à d'autres distributions. Je vais simplement résumer les étapes ici avec quelques explications, voir " Exécuter Linux avec un gestionnaire de fenêtres nues " pour les scripts.

  1. Ajoutez une session personnalisée en créant un fichier sur /usr/share/xsessions/metacity-session.desktop. Ce fichier informe le gestionnaire de connexion de votre session.
  2. Créer le fichier à exécuter par la session ajoutée en (1) /usr/local/bin/metacity-session
  3. Créez le fichier de configuration spécifique à l'utilisateur ~/.metacity-session. Ce fichier sera exécuté par le fichier ajouté en (2). Le contenu doit être le programme que vous souhaitez exécuter, suivi d'une esperluette, par exemple

    firefox &

  4. Facultativement, définissez la connexion automatique de l'utilisateur et définissez la session personnalisée comme session par défaut pour l'utilisateur.

Ici, j'utilise Metacity comme gestionnaire de fenêtres pour sa simplicité, vous pouvez utiliser Compiz si vous le souhaitez.

Il existe des outils pour verrouiller le système. Une recherche donne des outils tels que le sabayon et le pessulus . Je n'ai utilisé aucun d'entre eux pour faire une recommandation.

Il existe également des distributions spécialisées sur le mode kiosque, le plus prometteur semble être le mode Fedora Kiosk , bien qu'il ne soit pas basé sur Debian.

phunehehe
la source
Webconverger semble intéressant dans le département de distribution spécialisé et est basé sur Debian.
sr_
1
Le Run Linux with a bare window managerlien utilise maintenant une définition de nu différente de celle que vous vouliez!
Peter M
@PeterM: D lawl
111 ---
@PeterM mon ancien blog, il est mort </ 3 remplacé par dans le lien archive.org jusqu'à ce que je le ramène
phunehehe
5

Je sais que c'est un peu vieux mais j'ai écrit un simple comment sur cela qui fonctionne sur les PC et le Raspberry PI:

    Creating a Debian Chromium Kiosk (PC or Raspberry PI)

  - download and install debian
    - PC x64 or i386 : download "standard" iso from debian.org
    - raspberry pi 2/3 : download "raspbian lite" from raspberryip.org
      - use Win32DiskImager to write img to SD card

  - after install use apt to install packages
apt install --no-install-recommends xorg openbox lightdm chromium pulseaudio
    - on raspberry pi chromium package is chromium-browser
    - installing packages is slow on raspberry, get a FAST SD card (class 10 or better)

  - configure lightdm for autologin
    - edit /etc/lightdm/lightdm.conf goto [SeatDefaults] section, uncomment "autologin-user"
[SeatDefaults]
autologin-user={USER}
    - {USER} is defined during debian installer for PC
    - {USER} is 'pi' for raspberry pi

  - configure openbox to start chromium automatically
    - edit /etc/xdg/openbox/autostart or create ~/.config/openbox/autostart and add these lines:
xset -dpms
xset s off
chromium --kiosk http://google.com
    - change google.com to whatever you need
    - the xset commands disable screen savers
    - on raspberry pi chromium is chromium-browser

  - to auto connect to Wifi
    - edit /etc/network/interfaces and write:
auto wlan0
iface wlan0 inet dhcp
  wpa-ssid {ssid}
  wpa-psk  {password}
    - replace {ssid} and {password} with your respective WiFi SSID and password
Peter Quiring
la source
Vous pouvez également modifier xserver-commandle /etc/lightdm/lightdm.confsi vous voulez souris cacher le curseur. xserver-command=X -bs -core -nocursor
EFernandes