Exécutez une interface graphique sans le bureau


12

Je voudrais exécuter un navigateur Web ou une interface graphique simple sans exécuter tout le bureau. Je veux utiliser mon Raspberry Pi comme un simple serveur Web, mais j'ai toujours une interface graphique très simple pour contrôler mon imprimante 3D avec quelques boutons et graphiques. Je ne veux pas exécuter tout le bureau, car cela ralentira le Pi. Comment pourrais-je y parvenir?



@goldilocks veuillez proposer une réponse afin que je puisse l'approuver. Merci aussi!
TheCodeGeek

Réponses:


6

Le problème de base est de contourner tout gestionnaire de fenêtres, etc., qui s'exécute par défaut après le démarrage de X. Si vous utilisez un gestionnaire d'affichage (cela fournit un écran de connexion graphique), vous devriez pouvoir continuer à l'utiliser.

Dans tous les cas, créez un fichier dans votre répertoire personnel appelé .Xclients(avec le premier point) qui ressemble à ceci:

#!/bin/sh

lxterminal  

J'utilise lxterminalcomme exemple, et parce qu'il est livré avec raspbian. Rendez maintenant ce fichier exécutable:

chmod 750 .Xclients  

Puis, sans X en cours d'exécution: 1

startx

Vous devriez vous retrouver avec un simple terminal à l'écran, pas de barre de titre, pas de bordures et le curseur de la souris X. Vous pouvez démarrer d'autres applications et vous déplacer avec le curseur mais il n'y a pas de menus, etc.

Si vous remplacez le nom de la seule application que vous souhaitez exécuter lxterminal, vous commencerez par cela à la place.


1. Vous pouvez tuer X de l'intérieur avec ctrl-alt-backspace, mais si vous utilisez un gestionnaire d'affichage, vous reviendrez à la connexion à l'interface graphique. C'est bon.


Étonnamment, cela n'a pas fonctionné pour moi :( quelque chose que j'ai mal fait et cela démarre simplement le gestionnaire de fenêtres normal
Piotr Kamoda

@PiotrKamoda Je ne suis pas au courant de toutes les possibilités ici - et votre commentaire laisse beaucoup d'ambiguïtés - mais je recommanderai de rechercher cela comme une question linux générale .
goldilocks

@goldilocks Je suis fatigué sans succès, personne n'explique le problème aussi complètement que vous. Je l'ai essayé avec raspbian frais, seulement PiTFT et wxPython installés. Il semble qu'il ignorerait .xclients (ou .Xclients, tous les autres fichiers sont en minuscules?) Cela fonctionnerait-il avec le fichier .xinitrc? J'ai également essayé de mettre .xclients dans / etc / X11 / xinit où se trouvent les autres fichiers .xsomething.
Piotr Kamoda

wiki.archlinux.org/index.php/… est une solution utilisant .xinitrc, cela pourrait fonctionner pour ceux que .xclients n'a pas aidés
Piotr Kamoda

@PiotrKamoda En fait, j'utilise ~/.xinitrcsur Raspbian, et cela devrait fonctionner n'importe où car il s'agit d'une fonctionnalité X - mais notez que je n'utilise pas de connexion graphique. Cela peut gâcher des trucs. Si vous le faites, le DM par défaut (= gestionnaire d'affichage, qui fait la connexion) sur Raspbian est lightdm, c'est donc ce que vous voulez rechercher dans la configuration.
goldilocks

1

Une option possible consiste à utiliser le transfert X à partir d'un autre ordinateur. Cela chargera l'application GUI et l'exécutera comme elle le ferait sur le RaspPi mais "l'affichage" sera sur l'ordinateur distant.

Par exemple, à partir d'un autre bureau Linux qui exécute X, vous devez saisir ce qui suit dans le terminal "ssh -X pi@xx.xx.xx.xx" (où xx correspond à l'adresse IP). Une fois connecté, vous pouvez exécuter l'application GUI à partir de la ligne de commande RaspPi telle que le navigateur Web "midori". Dans ce cas, Midori fonctionnerait comme s'il était sur le RaspPi mais l'interface graphique s'afficherait sur l'ordinateur distant, un peu comme un mini bureau distant qui n'affiche qu'une seule fenêtre.

Cela peut également être configuré sur un ordinateur Windows à l'aide de Putty. Google putty x-forwarding et vous trouverez de nombreuses options pour le configurer.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.