web-dev-qa-db-fra.com

Comment détecter un programme distant que l'unité est en cours d'exécution

J'ai un programme hérité (depuis 1992) sur une machine distante dédiée en tant que client X qui, tout en démarrant, essayez de réparer toutes sortes de bizarreries à l'aide de xmodmap et similaire. À partir de 18.04, je note que beaucoup de ces correctifs ne fonctionnent plus.

Comment pouvez-vous (ou doit-il) que le client X-NUT détecte cette unité exécute sur le serveur X? Ou, pour la mettre différemment: quelles informations l'unité offre-t-elle aux clients X au-delà de XDPYINFO et similaires?

Les serveurs X connectés sont plus de 50 de diverses configurations (Xquartz, Ubuntu, Cygwin et de nombreux Linuxes que je n'avais jamais entendu parler auparavant). Ils se connectent indirectement au client X connu autrement appelé serveur.

5
false

Notez que vous pouvez avoir plus d'un gestionnaire de session disponible sur votre serveur. Voir par exemple https://unix.stackexchange.com/questions/288545/handling-multiple-window-managers-multiple-xsessrc-files . Je ne suis pas certain que si une combinaison de gestionnaires de session fournit un écosystème stable, cependant. J'ai même vu des commentaires mitigés à propos de disposer de 2 directeurs de session différents en même temps dans différents clients, même si je ne l'ai jamais essayé moi-même.

Je ne suis donc pas certain que si vous souhaitez vérifier si l'unité est disponible, elle est en cours d'exécution, ou si la session que vous vous connectez est gérée par l'unité.

Vous pouvez commencer à vérifier les valeurs de quelques variables d'environnement. Par exemple., XDG_CURRENT_DESKTOP, GDMSESSION, DESKTOP_SESSION.

Je suppose que vous n'êtes pas intéressé par la sortie de

ps -ef | grep -i unity