<p><em>Réponse courte :</em></p>
<p>Essayez d’exécuter :</p>
<pre><code class="lang-auto">export DISPLAY="$(hostname).local:0"
</code></pre>
<p>Cela devrait permettre à <code>xmgrace</code> et <code>gnuplot</code> (et tout autre client X) d’utiliser Xming.</p>
<p><em>Explication :</em></p>
<p>Vous devriez toujours pouvoir utiliser Xming avec WSL2 même sous Windows 11, mais vous devrez définir la variable <code>DISPLAY</code> de manière appropriée pour vous assurer que les clients X (par exemple <code>xmgrace</code>, <code>gnuplot</code>) s’affichent sur le bon serveur X.</p>
<p>Par défaut sous Windows 11 avec WSLg, <code>DISPLAY=:0</code>, ce qui envoie le trafic vers <code>localhost:0</code> où le socket X dans <code>/tmp/.X11-unix</code> est lié symboliquement au socket X de WSLg (qui, comme vous l’avez remarqué, utilise RDP avec RAILS).</p>
<p>Puisque WSL2 fonctionne dans un réseau virtuel qui est <em>séparé du</em> réseau Windows, vous devrez pointer <code>DISPLAY</code> vers une interface sur le réseau <em>Windows</em>. Cette interface peut être trouvée en utilisant le nom mDNS de la machine Windows, qui est typiquement le « nom de l’ordinateur » + « .local ». Sous WSL, c’est typiquement <code>"$(localhost).local"</code>.</p>
<p>Si cela échoue pour une raison quelconque, essayez la version plus compliquée :</p>
<pre><code class="lang-auto">export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf 2>/dev/null):0
</code></pre>