TTYREC + TTYGIF: Creando GIFs de la terminal de Linux

por | enero 16, 2017

Recientemente estuve buscando diversos métodos para generar GIFs a partir de la actividad de la terminal para utilizarlos en tutoriales y artículos. En la mayoría de casos me encontré con procedimientos que se basaban en coger como base una serie de imágenes PNG/JPEG para después parsearlas con algún programa (como ImageMagick) y generar de esta manera un GIF. En otras ocasiones también se echaba mano de ffmpeg para ello. Quería algo más sencillo y que fuera al grano.

Entonces encontré una combinación perfecta: TTYREC para realizar grabaciones en formato mp4 de la actividad de la terminal y TTYGIF para pasar esa grabación a GIF. El primero está en los repos de las principales distros, y el segundo tiene el proyecto subido a GitHub con instrucciones sobre su instalación y uso.

Hablando de Debian y derivadas, la instalación de TTYREC es tan sencilla como sigue:

apt-get install ttyrec

Para TTYGIF, también en esas distros, procederemos de la siguiente manera:

apt-get install imagemagick ttyrec gcc x11-apps
git clone https://github.com/icholy/ttygif.git
cd ttygif
make
make install

Para el fin que busco, su uso es muy sencillo. Primero iniciamos grabación con:

ttyrec ejemplo 

Una vez hayamos terminado, introducimos Ctrl+D en la terminal. También podemos hacerlo con la orden exit, con el inconveniente de que se grabará ese último comando en el GIF generado.

Ahora, para pasar a formato gif:

ttygif ejemplo

Y ya lo tenemos. Nuestro gif se habrá guardado en el fichero tty.gif. Aquí algunos ejemplos:

Recordad que en el repo del proyecto tenéis instrucciones de instalación para RedHat/Fedora, Arch y MacOS.