Semana Negra - Sobrevivir en la shell
index | about | archive | charlas | docs | links
dot
|
git
|
img
|
plt
|
tty
|
uml
el juramento
Desde el 28 de Abril del 2014 y por una semana completa debía cumplir con el juramento propuesto desde el sitio elbinario.net 1
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.
motivación
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:
yo uso la consola sólo por si en algún momento no tengo X
Que mejor ocasión para probar vivir sin X
.
desafío doble
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.
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.
blog desde la tty
Justo 2 días antes, participé del FLISoL en la UNDAv 3 asi que tenía que comenzar la mañana escribiendo un post lo cual no representaba mayores desafíos porque uso Org-mode 4 que es parte de EMACS 5, pero me encontré con un primer problema, ver y editar las fotos que incluiría…
Probé de utilizar cacaview
del paquete caca-utils
6 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í:
Haciendo un zoom se puede apreciar mejor pero, hay que scrollear mucho para entender toda la imagen:
Por suerte contamos con la ayuda de fbi
que utiliza el
Framebuffer 7 y se visualiza a la perfección:
El resultado final, pude visualizarlo mediante links2
agregando los parámetros -driver\=directfb -g
tmux
y mplayer
problemas encontrados
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.
resumen y encuesta
Se realizó un resumen 8 de la experiencia y se realizaron las siguientes preguntas, las cuales paso a responder…
¿Cómo me he sentido en la consola?
Muy bien, confirmé que mi entorno esta preparado para una tty
aunque algunas configuraciones tuvieron que ser adaptadas, en
general no tuve inconvenientes.
¿Lo más sencillo?
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
¿Lo más difícil?
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
.
¿Qué necesidades no he podido cubrir durante la semana?
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 :-)
Herramientas que he usado:
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
Usos de la shell frente a X y viceversa
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.
El frío en la shell
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
¿Programas pesados?
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.
¿Cómo resumirías tu experiencia Alone in the shell?
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. :-)
ChangeLog
2023-04-30 07:13
agregar DESCRIPTION, KEYWORDS y actualizar OpenGrpah y links2022-11-13 20:39
agregar y actualizar tags OpenGraph2019-04-18 00:21
Agregar hora en header date2019-04-18 00:01
Corregir identación header #+INCLUDE:2015-07-03 04:31
@ 00:05 hs - elimino #+OPTIONS: de todos los archivos excepto header.org2015-07-03 03:59
@ 01:00 hs - reemplazo :alt por :title y cambios menores2014-08-11 14:29
@ 00:01 hs - Nuevamente Corrijo salida comandos mas usados2014-08-11 12:55
@ 01:29 hs - Agrego resumen Semana Negra