En el trabajo, tengo un escritorio con un monitor y algunas sesiones de tmux en ejecución. En casa, frecuentemente ingreso a ese escritorio e ingreso a mis sesiones tmux en ejecución. Cuando ssh desde casa, no quiero usar X11, así que no uso la -Xbandera. Cuando vuelvo al trabajo (después de enviar algo desde casa) y uso esas sesiones de tmux en el escritorio, ya no puedo hacer nada que genere una GUI. No puedo abrir archivos en evidencia. Cuando intento usar matplotlib, recibo un : cannot connect to X servermensaje.
Después de abrir y abrir una sesión tmux existente desde casa, ¿cómo puedo volver a conectar la capacidad de abrir cosas de GUI en el escritorio?
El ssh'ing desde casa parece hacer que la sesión tmux olvide que puede generar cosas de GUI.
EDITAR:

-Xbandera ahora o no? Solo puede hacer cosas X11 a través de SSH si está configurado.Respuestas:
Todo lo que necesito hacer es establecer la variable de entorno DISPLAY en: 0.0. Creo que el problema es que estoy usando el shell de pescado, y necesito usar la bandera -x para configurarlo al hacer esto:
fuente
DISPLAYpodría ser diferente de:0.0. Una forma rápida de averiguarlo es crear una nueva ventana tmux yecho $DISPLAYallí.echo $DISPLAYvolvílocalhost:10.0y corriendoset DISPLAY localhost:0.0hice el truco.bashequivalente, o una versión cross-shell?set -xsolo aumenta la verbosidad para mí enbash. @ Isaac, ¿tuvo queset DISPLAY localhost:10.0hacerlo en su lugar olocalhost:0.0trabajó para usted?export DISPLAY=:0.0.$DISPLAY?Tuve el mismo problema. Normalmente lo uso
tmuxcomo parte de un entorno de escritorio X11 de múltiples monitores, y a veces ssh desde un Chromebook, que no es compatible con X11 o set$DISPLAY. La respuesta de @chrisdembia funciona, pero requiere cambiarDISPLAYen cada nueva ventana para el resto de la sesión de tmux, lo cual es una molestia.Una solución permanente es eliminar
DISPLAYde laupdate-environmentvariable tmux en la configuración de tmux. Puede ver su valor actual con este comando:Para eliminarlo, agregué esta línea a mi
~/.tmux.confarchivo, incluyendo todo menosDISPLAY:Esto se explica con más detalle en Restablecer la variable DISPLAY de shell en una sesión tmux a través de ssh , lo que explica por qué
DISPLAYexiste de forma predeterminada, para un caso de uso común diferente.fuente