💾 Archived View for gmi.osiux.com › 2014-04-28-semana-negra.gmi captured on 2023-03-20 at 18:46:10. Gemini links have been rewritten to link to archived content
-=-=-=-=-=-=-
#+ATTR_HTML: :width 640 :height 480 :title Semana Negra usando TMUX
[1]
Desde el 28 de Abril del 2014 y por **una semana completa** debía cumplir con el juramento propuesto desde el sitio elbinario.net[2] ^1[3]
Te deposito mi corazón junto al tuyo, para hacer que el nuestro sea uno más ancho y seguro. Hago compromiso ante ti, terminal. Seré tuya por una semana. Cuando me sienta débil, seré fuerte y no arrancaré las x, cuando el ascii de los vídeos me agobie, seré fuerte y veré la saga entera de starwars en ascii, seré firme cuando los ojos no aguanten, seré tu sombra cuando no sepa algún comando, seré sonrisa, seré llanto. Hasta que la interface gráfica nos separe.
A diario abuso de la terminal, de hecho practicamente la única aplicación gráfica que uso es *Firefox*, todo lo demás vive en un `screen/tmux` usando `terminator` y como siempre digo:
Que mejor ocasión para probar vivir sin `X`.
Tenía que lograr sobrevivir la semana en una desktop en el trabajo (trabajando) y en una notebook compartida en casa, en el primer caso coincidió justo con el cambio de distro, asi que directamente deshabilité `X` en mi nuevo **Huayra GNU/Linux 2.0** ^2[4].
En casa no pude deshabilitar `X` por tratarse de una compu compartida, asi que me mantuve en una `tty` usando `CTRL+ALT+F1` cada vez que necesitaba hacer algo.
Justo 2 días antes, participé del **FLISoL en la UNDAv** ^3[5] asi que tenía que comenzar la mañana escribiendo un post lo cual no representaba mayores desafíos porque uso **Org-mode** ^4[6] que es parte de **EMACS** ^5[7], pero me encontré con un primer problema, ver y editar las fotos que incluiría...
Probé de utilizar `cacaview` del paquete `caca-utils` ^6[8] y la verdad que hace honor a su nombre ;-), al menos para ver una foto en *ascii-art* no sirve de mucho, la imagen inicial a pantalla completa se ve así:
#+ATTR_HTML: :width 640 :height 360 :title Semana Negra cacaview
[9]
Haciendo un zoom se puede apreciar mejor pero, hay que scrollear mucho para entender toda la imagen:
#+ATTR_HTML: :width 640 :height 360 :title Semana Negra cacaview zoom x20
[10]
Por suerte contamos con la ayuda de `fbi` que utiliza el *Framebuffer* ^7[11] y se visualiza a la perfección:
#+ATTR_HTML: :width 640 :height 360 :title Semana Negra fbi
[12]
El resultado final, pude visualizarlo mediante `links2` agregando los parámetros `-driver\=directfb -g`
#+ATTR_HTML: :width 640 :height 360 :title Semana Negra links2
[13]
A diario uso `tmux`, sólo tuve que modificar la `statusbar` porque se redibujaba mal, en realidad no usaba muchas características, tiendo a un entorno minimamilista, y sólo para probar pude ver un video usando `mplayer` con la opción `-vo fbdev2` sin inconvenientes por sobre el `tmux`.
#+ATTR_HTML: :width 640 :height 360 :title Semana Negra fbi
[14]
No funciona correctamente el *UTF8* en la terminal, probé con `/bin/unicode_start` pero no se ve nada bonito, después vi que algunas fuentes no tienen todos los caracteres, usando `fbterm` mejora notablemente la experiencia.
Se realizó un resumen ^8[15] de la experiencia y se realizaron las siguientes preguntas, las cuales paso a responder...
Muy bien, confirmé que mi entorno esta preparado para una `tty` aunque algunas configuraciones tuvieron que ser adaptadas, en general no tuve inconvenientes.
Utilizar `tmux` en una `tty` no varía de un emulador de terminal, asi que rápidamente estaba operativo y podía también trabajar en remoto levantando mi `tmux` vía `ssh`. Sólo que `tmux` no se llevó bien con `fbterm` que aparenta ser una buen terminal que usa *framebuffer*
Navegar por la web, si bien en mi *Firefox* tengo *plugins* que deshabilitan *javascript* por defecto, algunos sitios fueron imposibles de navegarlos usando `w3m` y `links2`.
Usar el *Home Banking*, nuevamente *javascript* y un diseño para navegadores modernos impidió realizar movimientos, al menos pude ver el saldo de mi cuenta :-)
Las habituales, sólo tuve que reemplazar *Firefox* por `links2`. Se puede ver un ranking de los comandos más usados en la semana, de acuerdo al historial de `bash`.
cat ~/semana-negra.log | head echo cat ~/semana-negra.log | awk '{print $3,$4}' | sort | uniq -c | sort -nr | head -20 | barra
2014-04-28 08:27 clear 2014-04-28 08:27 df -h 2014-04-28 08:27 ps ax | grep -i x 2014-04-28 08:27 tls 2014-04-28 08:30 cd 2014-04-28 08:30 cdo 2014-04-28 08:30 cdo 2014-04-28 08:30 unicode_start 2014-04-28 08:31 cd 2014-04-28 08:31 cd /mnt/data/ 23.97 % 23.97 % 58 ████████████ ls 36.36 % 12.40 % 30 ██████ :q 46.69 % 10.33 % 25 █████ l 54.13 % 7.44 % 18 ███ cd 59.92 % 5.79 % 14 ███ sudo 65.70 % 5.79 % 14 ███ pwd 69.83 % 4.13 % 10 ██ mplayer 73.97 % 4.13 % 10 ██ for 76.86 % 2.89 % 7 █ telegramas 79.75 % 2.89 % 7 █ ps 82.64 % 2.89 % 7 █ clear 85.12 % 2.48 % 6 █ gst 87.60 % 2.48 % 6 █ cdh 89.67 % 2.07 % 5 █ tls 91.74 % 2.07 % 5 █ ln 93.39 % 1.65 % 4 █ reboot 95.04 % 1.65 % 4 █ mmi 96.69 % 1.65 % 4 █ cd 98.35 % 1.65 % 4 █ cdi 100.00 % 1.65 % 4 █ cd 242
El mejor de los mundos es que exista un comando que hace todo lo que necesitás, si con mil parámetros y luego una o varias *gui* que permitan usos simples y cada usuario podrá elegir su interfaz.
Para nada! mi `$TERM` esta seteada en `screen-256color` :-P, además no hay como el fondo negro y letras verdes para aclimatar los ojos, **la shell es mi amiga**
No hay duda que las aplicaciones gráficas son enormes y tienen varias capas de abstracción y niveles que no hacen más que gastar un montón de bytes para mostrar un pixel gris oscuro para tener un bonito sombreado. OjO no hay duda, si hacés diseño o necesitás alguna aplicación que verdaderamente aprovecha el entorno gráfico usala, para todo los demás existe una terminal liviana y ágil.
Muy productiva, pude poner a prueba mi entorno, corrigiéndolo para que se vea casi igual tanto en `X` o en una `tty`.
Lo mejor fue que logré sobrevivir toda la semana a la consigna, lo cual demuestra cierta disciplina, más allá de los tecnicismos.
Utilizar el modo gráfico sobre *framebuffer* debería estar más soportado por más aplicaciones aunque en cierto punto parecería que es hacer trampa, ya que nos estamos escapando de la salida a puro texto plano :-P
La destreza sobre una consola, sólo se consigue usándola a diario y puede ser vital tener dominio sobre ella, casualmente unos días después al realizar una entrega de un proyecto, un viernes a última hora, justo cuando estábamos terminando, se cortó la luz y pudimos continuar con los últimos minutos de la UPS desde una `tty` en el servidor, gracias a `screen/tmux` y unos bonitos túneles `ssh`, de otro modo, no hubieramos podido...
También para el usuario de notebook, mi experiencia demuestra que la batería rinde el doble trabajando únicamente desde una `tty`.
Asi que recomiendo a todos a tener una **semana negra** como entrenamiento para convertirse en un **console ninja**. :-)
1: file:img/semana-negra/tmux.png
3: http://elbinario.net/2014/04/21/semana-negra-sobrevivir-en-la-shell/
4: %5Bfile:2014-04-25-huayra-2.0.html%5D(2014-04-25-huayra-2.0.html)
5: %5Bfile:2014-04-26-flisol-avellaneda-undav.html%5D(2014-04-26-flisol-avellaneda-undav.html)
7: http://www.gnu.gmi/software/emacs
8: http://caca.zoy.gmi/wiki/libcaca
9: file:img/semana-negra/cacaview.png
10: file:img/semana-negra/cacaview-zoom.png
11: https://es.wikipedia.gmi/wiki/Fbdev
12: file:img/semana-negra/fbi.png
13: file:img/semana-negra/links2.png
14: file:img/semana-negra/tmux-mplayer.png
15: http://elbinario.net/2014/05/06/resumen-de-la-semananegra/
16: https://gitlab.com/osiux/osiux.gitlab.io/-/commit/bf3a61526ad2a73cecb77a18995f1d63494e3664
17: https://gitlab.com/osiux/osiux.gitlab.io/-/commit/e46ec52748a7ecc60f09c3b95e363e92eaa0bebc
18: https://gitlab.com/osiux/osiux.gitlab.io/-/commit/5c8643b83930c6269569c76602608bd33f93008b
19: https://gitlab.com/osiux/osiux.gitlab.io/-/commit/bbc3bbc728f2a3eeb4fe2e0a012ee5d8d613e3ef
20: https://gitlab.com/osiux/osiux.gitlab.io/-/commit/a2abb3b333c91e0d3c15ea9e93a21589bd4d86f7
21: https://gitlab.com/osiux/osiux.gitlab.io/-/commit/a5fa5b76cee7f57f7be005d4b8fd8d78726209df
22: https://gitlab.com/osiux/osiux.gitlab.io/-/commit/e43ef81dd85cb493fb64ad9cc3d2689e05e952b4