Sobre Plasma

Ha habido varias cosas que cambiaron desde la última entrada. No voy a dar todos los detalles pero voy a ir contando entrada a entrada las cosas que he aprendido y he descubierto últimamente.

Uno de los cambios más grandes que he hecho es probar durante este último mes el escritorio Plasma. Digo más grandes porque siempre, siempre desde el primer momento que instalé GNU/Linux preferí Gnome a KDE. Pero los tiempos cambian, y a veces hay que ver que anda pasando en la vereda de enfrente.

Lo bueno

Una de las sorpresas más gratas que me llevé es que ahora KDE… o más bien “El Escritorio antes conocido como KDE” (porque ahora es Plasma) es el escritorio más liviano que hay en GNU/Linux. Sí, es bastante increíble, pero su uso de memoria esta cercano al de mi sesión en Fluxbox (super engordado con gestores de sesion y varios demonios extra obviamente).

fit-width

Fuera de eso noto una tendencia a simplificar la interfaz, sin llegar a los extremos. Entonces quienes encontrabamos en Gnome 2 una interfaz limpia y entendible podemos estar como en casa.

Por último los escritorios más modernos me acostumbraron a pequeñas cosas como el efecto tipo “Exposé” que es muy agradable, y demás efectos visuales. Llamenme frívolo pero a mi me gusta que mi escritorio diario se vea bien .

Lo malo

Algo que si he de decir, es que en algunas ocasiones se a portado algo inestable. Nada “rompedor de sesión” pero si tiene sus crashes, aunque no son tan frecuentes.

Lo feo

Plasma ha mejorado mucho en interfáz gráfica, pero todavía tiene un camino largo para recorrer en terminos de simplicidad.


Proceso secuencial

Me tope con un problema en el cual debía ejecutar un proceso en varias partes y ejecutarlo nuevamente si es que había finalizado antes de terminar la tarea que necesitaba terminar, por suerte con un poco de ayuda de germán armé este pequeño script salvaje que resuelve el problema:

#!/usr/bin/bash
COMMAND="process name";
    
$COMMAND &
PID=$!
FINISH=0

echo 0 > process_finished
while true
do
    if ! ps -p $PID >/dev/null;
    then
    FINISH=`cat process_finished`;
    if [ $FINISH -eq 1 ]
    then
        echo "batch finished running";
        break;
    else
        echo "running again";       
        $COMMAND &
        PID=$!
    fi
    fi
    sleep 1;
done

Básicamente el comando se ejecuta nuevamente si no esta siendo ejecutado a menos que se encuentre 1 en el archivo process_finished .

Quizás no es una solución elegante pero muy util y eficaz para resolver un problema puntual.


Instalando Octave 4.0 en Fedora 22

Algo con lo que me topé usando Octave es que la mayoría de los entornos de desarrollo (incluso el plugin de Emacs) no funcionaban muy bien con la versión actual en los repos de mi distro. Entonces vi que la versión 4.0 trae GUI por defecto, pero no esta en los repos de Fedora. Por lo tanto lo mejor es instalarlo desde un repo Copr, para esto hacemos:

sudo dnf copr enable orion/octave
sudo dnf update octave 
#o dnf install octave

y tenemos Octave 4.0 con un GUI muy bonito: fit-width


Mi escritorio de trabajo

Como para volver a escribir en el blog ( aunque sea un par de veces por semana) quería contar un poco sobre mi entorno de trabajo, aplicaciones y demás que utilizo a diario.

Window Manager

Estoy utilizando i3 que es un tiling window manager que me pareció genial, ya en su momento había utilizado ion3 que era un poco similar y Ratpoison pero nunca me convencieron. Una gran contra para mi de los tiling window manager es que algunas aplicaciones más orientadas al uso del mouse no funcionaban tan bien, y no es que tenga nada en contra de utilizar el mouse. Algo que me encanta de i3 es que podés ir organizando los escritorios al vuelo y no requiere un layout predefinido, separando en diversos contenedores horizontal/vertical, también poder cambiar los modos a pestañas o pila son geniales.

por ejemplo:

fit-width

Mi archivo de configuración esta un poco tuneado, pueden acceder aquí.

Ruby

Utilizo rbenv para manejar las versiones, luego de mucho pelear con RVM me pareció más entendible y un poco menos invasivo, hasta ahora funciona genial.

Editor de texto

Utilizo Emacs, sinceramente no he podido adaptarme nunca al uso de Vim (más allá de lo básico) los comandos me parecen más intuitivos y “recordables” (tengo pésima memoria). Ultimamente le he dedicado mucho a adaptarlo acorde a mis necesidades y las de mi trabajo ( estilo de código, lenguajes de programación utilizados, etc).

fit-width

Comparto mi .emacs

File Manager

A veces Caja (ex Nautilus), a veces Thuanr. Caja tiene más funcionalidades, Thunar es más ligero aunque esto no importa mucho en mi escritorio pero en mi laptop se nota más la diferencia

Algunos scripts

setwallpaper.sh es un script que te permite cambiar el wallpaper que estas utilizando, hace uso de fsetbg y zenity (para ser más amigable) , así que podes recuperarlo luego en el inicio de sesión con fbsetbg -l

mp4subtitles.sh esto es por una necesidad muy particular, a veces quiero ver videos con subtitulos en mi tele ( un Panasonic Viera) y por una de esas particularidades arbitrarias, solo se ven los subtitulos grandes si el formato es mkv con subtitulos embebidos ( en mp4 no se ven directamente y en divx + srt se ven chiquititos)

Curiosidad

Haciendo este post descubri que hay un paquete para emacs de gist, básicamente hay que hacer M-x package-install y luego gist, despues cada vez que querés subir el buffer actual a gist hacés gist-buffer y listo! Escribir ayuda a aprender :) .


Jugando con Fluxbox nuevamente

No he usado Fluxbox desde el 2007, la verdad lo utilizaba mucho en mis PCs (Pentium 3 o similar), y lo abandoné al comprar mi primera PC que ya podía ejecutar decentemente entornos más pesados.

Como mi hermano comenzó a utilizarlo de nuevo decidí darle otra oportunidad, y en poco tiempo ya lo tengo configurado para mi gusto:

No recordaba lo sencillo que es de configurar, a pesar de utilizar archivos de texto es algo muy intuitivo y simple y ya he subido a mi repo mi configuración para sincronizarla con la de mi laptop o cualquier otra máquina que utilice. Extraño el efecto tipo exposé de Gnome, y las sombras eran algo lindo, pero la verdad es que la velocidad que se gana utilizando este WM es impresionante.

 

Comparto un truquito para convertir fluxbox en un tiling WM básico (sacado del blog de Dale Swanson) , en su archivo keys agreguen:

Control KP_0 :Minimize
Control KP_1 :MacroCmd {ResizeTo 958  540} {MoveTo 00 00 LowerLeft}  
Control KP_2 :MacroCmd {ResizeTo 1920 540} {MoveTo 00 00 LowerLeft}  
Control KP_3 :MacroCmd {ResizeTo 958  540} {MoveTo 00 00 LowerRight}  
Control KP_4 :MacroCmd {ResizeTo 958 1060} {MoveTo 00 00 UpperLeft}  
Control KP_5 :Maximize
Control KP_6 :MacroCmd {ResizeTo 958 1060} {MoveTo 00 00 UpperRight}  
Control KP_7 :MacroCmd {ResizeTo 958  540} {MoveTo 00 00 UpperLeft}  
Control KP_8 :MacroCmd {ResizeTo 1920 540} {MoveTo 00 00 UpperLeft}  
Control KP_9 :MacroCmd {ResizeTo 958  540} {MoveTo 00 00 UpperRight} 

 


Beware of luddites

This is a nice tip for newcomers to the Linux world, beware of luddites and excessive passionate fanboys. Sadly the Linux community is the only one that offers it's users enough niche markets to build different identities, and when somebody feels like this niche might no longer exist to accomodate their self perceived personality he starts getting angry.

Latest years have been a very bumpy road for Linux, with new technologies emerging and people feeling attacked by these technologies. I'm talking about KDE4, Gnome 3 and now SystemD, what experience has taught me is that whenever this pointless wars emerge we better keep off of it. Also it's important to keep our egos uninvolved, since most of the time We Do Things The Right Way ™ and everyone else is wrong as usual.

But in all seriousness, we should have a realistic vision of our capabilities and those of others, I'm not talking about just nodding in approval, but being honest with ourselves. I'm a simple web developer, which excludes me from many many of these grounds, I still can make suggestions, but I really should question myself if I'm debating someone that has years of experience working in OS Design.

Another thing learned, is that experience is valuable, it's really valuable. It gives you the perspective of being really involved with the progress of a development project and involvement with the state-of-the-art methods and techniques; and that's something to respect in fellow developers.

In the end progress will inevitably come, and we better get used to it or get knocked off the road.

 

picture by Martha Soukup CC-Attribution License


On pomodoro, SSD and something something gnome

I'm starting to apply the Pomodoro Technique , thanks to this handy Gnome extension at least until I get one of those fancy real pomodoros (which I find really cool). Note that the author no longer support the extension at gnome.org, but you have to download it from github neverteless the extension still works and it's what I'm using until I can actually spend some time getting the extension from github.

 

I also got a SSD and installed my fedora desktop ( can't wait for Workstation 21, looks really promising) and boy, everything is so fast.

 

I've been switching back and forth from Gnome, cinnamon and Mate, and I ended up with a combo I really like. I can't now live without the exposé-like effect and edge snapping ( latest currently offered by all of these desktops). But I still don't really like the new nautilus, I mean, the headerbar thing is good looking but not being able to see the free space on my disks in the statusbar annoys the hell out of me. So in the meantime I've replaced it with Nemo, the Cinnamon file manager which looks a little uglier, but it gets the work done and has a TON of additional features.

I was wondering if it wouldn't be cool to offer Nemo as a replacement for Nautilus, like an "advanced" alternative for power users, I'm sure that it will never happen given the current direction and interest of the Gnome project but one can always dream.