Tu peux afficher une fenêtre sur un ordinateur distant en lui transmettant l'ip en plus du display, c'est de
l'export display. Ça oblige à quelques paramétrages, mais ils sont simples et peuvent être automatisées, éventuellement en installant un driver spécifique pour l'imprimante (c'est une idée).
Pour faire le test:
sur le client (là où sera affichée la fenêtre), il faut désactiver l'option
no-listen-tcp du serveur X. Avec GDM, il faut aller dans
système/administration/fenêtre de connexion. Dans l'onglet sécurité, décocher
Refuser les connexions TCP au serveur X. Fermer et se reconnecter.
Ensuite, il faut autoriser le serveur (qui a l'imprimante) à utiliser l'affichage avec
xhost + ipduserveur.
Sur le serveur (qui lance la commande et qui a l'imprimante), il faut faire:
export DISPLAY=ipduclient:0.0 (pour le display 0)
ensuite, si tu lance gedit (par ex)
dans le même shell, c'est le gedit du serveur qui est affiché sur l'autre poste (un
fichier/ouvrir t'en convaincra).:lol:
Dans le cas qui nous concerne, tu affiche la fenêtre avec un programme qui définit le display à ":0". Donc, il n'exporte l'affichage que sur la machine locale. Si on pouvait passer aussi l'IP, ça s'afficherait sur le client.
En local, le display serait localhost:0, en distant ce serait 192.168.0.21:0.
C'est pour ça que je demandait qui appelait le programme cups2freefax.bash, pour savoir si et comment on purrait ajouter l'IP de l'appelant et ainsi obtenir l'affichage déporté.
A moi aussi, le C m'est inconnu, donc de ce côté là, c'est pas moi qui apporterait de l'aide sur le code.