jueves, 4 de octubre de 2012

Guake y problemas con la variable de entorno XTERM

Actualmente utilizo CentOS 6.3 en mi estación de trabajo y estoy bastante contento. Es estable, ligero, etc.

Uno de los programas que más utilizo es Guake, una terminal desplegable muy cómoda. El problema con este programa es que en CentOS lo han empaquetado de forma que el ejecutable es el mismo programa (escrito en Python).

Si lanzamos Guake y consultamos la variable de entorno $TERM nos devuelve "dumb". Este valor no es adecuado para la mayoría de las utilidades en línea de comandos, debería ser "xterm". Los less, vim  y compañía se confunden y no son capaces de pintar bien la pantalla y el cursor.

 En otras distribuciones hay un shell script que ajusta las variables de entorno antes de llamar al ejecutable "guake", pero parece que no es el caso de CentOS, así que la solución (una línea) es editar el propio ejecutable (es un programa Python, como decía).

Sólo hay que poner una línea como esta:

os.environ['TERM'] = 'xterm'

justo al terminar la sección de imports. 

Problema solucionado.

Otra solución sería lanzar guake con la variable de entorno ajustada previamente:

~$ TERM=xterm /usr/bin/guake

O hacer un sencillo script:

#/bin/bash
export TERM=xterm
/usr/bin/guake