Forum Linux.gui Variable $DISPLAY

Posté par . Licence CC by-sa
Tags :
0
3
mar.
2016

Bonjour à toutes et à tous !

Est-il possible de récupérer l'affichage d'une application et d'interagir avec celle-ci via la variable $DISPLAY ?

Je m'explique : Admettons que je veux lancer l'application "Leafpad" sur le $DISPLAY : :7348, l'application ne sera pas visible à l'écran bien entendu, mais peut on récupérer son affichage ? Sous forme d'image par exemple ?

Merci d'avance.

Bonne journée.

  • # display

    Posté par . Évalué à 1.

    leafpad --display=:0

    si t'es en ssh distant ca lance leafpad sur l'affichage principal
    le probleme c'est que toutes les applis sont pas compatibles avec l'option, et aussi que tous les distrib ne sont pas compatibles vis a vis des utilisateurs

    ex sous fedora:
    user1 ets connecté en X
    tu te connecte en user2 sur un terminal X
    si tu fais user2~: leafpad --display=:0
    ca t'ouvrira le leafpad sur l'affichage X de user1, avec les droits de user2
    ce qui est assez pratique pour consulter les documents d'un autre user sans avoir à charger toute une interface graphique de l'autre user d'abord, mais aussi d'avoir des fenetres d'user différents en parallele

    ex sous slitaz:
    user1 ets connecté en X
    tu te connecte en user2 sur un terminal X
    si tu fais user2~: leafpad --display=:0
    ca te renverra un message d'erreur t'indiquant que user2 n'a pas les droits d'accéder à l'affichage principal

  • # Xfvb

    Posté par . Évalué à 4. Dernière modification le 03/03/16 à 14:43.

    Xfvb va te lancer un serveur X "virtuel". Tu pourras lancer tes applis graphique en spécifiant celui dans la variable DISPLAY. Tu pourras récupérer un screenshot de ce serveur X via import d'ImageMagick et le manipuler via un client VNC ou via xdotool.

    https://en.wikipedia.org/wiki/Xvfb

  • # Parfait

    Posté par . Évalué à 1.

    Merci beaucoup à vous deux pour vos réponse, j'ai réussit à réaliser ce que je voulais grâce à vous !

    Cependant il y'a un résultat que je ne comprends pas très bien :

    Quand je lance Leafpad sur mon desktop normal ( :0 )

    Cela donne :

    Leafpad normal

    Maintenant si je lance leafpad sur un display que j'ai ouvert précédement, et que je fais ensuite une capture d'écran, en tapant les commandes :

    Xvfb :211 &
    leafpad --display :211
    import -display :211 -window "(Sans titre)" screenshot_leafpad.png

    Le Leafpad que j'obtient est plus ou moins déformé :

    Leafpad deformé

    La seule erreur que j'obtiens au lancement de l'application est : Il manque l'extension RANDR sur l'affichage 211.

    Mais cela n'a pas l'air d'influencer le résultat.

    Merci d'avance,

    Bonne journée.

    • [^] # Re: Parfait

      Posté par . Évalué à 1. Dernière modification le 04/03/16 à 09:38.

      La fonction EDIT n'es pas accessible pour le moment,

      Je vous met les images en lien étant donné qu'elles ne s'affichent pas..

      Leafpad Normal

      Leafpad Deformé

      Bonne journée.

      • [^] # Re: Parfait

        Posté par . Évalué à 1.

        j'ai l'impression que kwin n'est pas supporté par cet utilitaire

      • [^] # Re: Parfait

        Posté par . Évalué à 2.

        juste parce que ton DISPLAY=:0 dispose d'un gestionnaire de bureau, qui maquille tes fenetres, utilise de belles polices…

        alors que ton display=:211 utilise juste X11/Xorg, sans decoration

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.