Whatsapp en Ubuntu! Cómo instalarlo y configurarlo súper fácil.

Hola a todos y todas!

Bueno, hoy vamos con una que queríamos todos. Les voy a mostrar cómo instalar Whatsapp en su escritorio linuxero, de forma súper fácil. Ahí vamos!

Corto y al grano: todos conocen Whatsapp

Whatsapp no necesita introducción así que poco es lo que voy dedicar a hablar de la aplicación más usada del mundo android. La compatibilidad que este cliente de mensajería tuvo con el escritorio de Ubuntu fue muy baja hasta el momento (prometió hace algún tiempo con un pluggin para pidgin que murió súbitamente tras modificaciones en la aplicación general). Hay varias propuestas que subsanaron la falta de compatibilidad, como el uso de PushBullet indicator para saber cuándo nos mandan mensajes y cosas por el estilo.

Esto es una solución alternativa. Propone una lindísima aplicación que básicamente es una webapp “tuneada” del servicio web de whatsapp. Si bien la idea es simple, el resultado es potente, útil y viene a cubrir un área de vacancia importante en el escritorio de Ubuntu.

No se emocionen demasiado, no es una aplicación full full basada en una API sino, como dije, una aventura no oficial (probablemente offline en poco tiempo) que permite acceder a los whatsapp web. Es muy estable, se integra con el sistema de mensajes de nuestro escritorio y tiene una estética fina y bien terminada. Vamos a instalarlo.


Captura de pantalla de 2015-06-27 14:43:15

Ninja-Install de Whatsapp para Ubuntu

En principio, esto debería funcionar con cualquier versión de Ubuntu superior a 12.04. Si tienen un sistema de 64 bits, corran el siguiente código:

cd /tmp/ && clear ; wget https://github.com/Aluxian/WhatsApp-Desktop/releases/download/v1.1.0/UnofficialWhatsApp_linux64.deb -O whatsapp.deb && sudo apt-get install gdebi -y ; sudo gdebi -n whatsapp.deb ; cd ; clear

Si tienen un sistema 32 bits, corran este código:

 cd /tmp/ && clear ; wget https://github.com/Aluxian/WhatsApp-Desktop/releases/download/v1.1.0/UnofficialWhatsApp_linux32.deb -O whatsapp.deb && sudo apt-get install gdebi -y ; sudo gdebi -n whatsapp.deb && cd ; clear

Listo! ahora podemos buscar el programa en nuestro launcher favorito:

Una vez instalado, la aplicación nos va a pedir que pasemos el teléfono para poder habilitarse. La contra es que el teléfono tiene que estar encendido sino la aplicación no funciona jaja. El resto, va como piña.

Captura de pantalla de 2015-06-27 14:47:20

Eso es todo muchachos y muchachas! Que disfruten de Whatsapp en Ubuntu!!!

Captura de pantalla de 2015-06-27 14:41:13
Salú!

Whatsapp en Ubuntu! Cómo instalarlo y configurarlo súper fácil.

[MegaPost] Spotify gratis y sin anuncios en Ubuntu 14.04 o superior

Hola a todos y todas, hoy vengo con una bomba. :)
Vamos a instalar la última versión de Spotify gratuito y nos liberaremos del yugo opresor de los anuncios de audio… y no sólo eso! también nos vamos a emancipar de los anuncios visuales. Manos a la obra. Todo automático, sin interacción del usuario. Una verdadera pasada como dirían los amigos ibéricos :P

 

Para los caídos del paracaídas: Spotify, sin dudas el mejor

A esta altura del partido creo que todos conocen Spotify, aplicación para reproducción de música online que cuenta con casi todo lo que se nos ocurra escuchar (épocas, generos, nuevo, viejo, discos que salieron ayer literalmente, colecciones, playlists, fuuuuuu). Si no conocen la aplicación y les gusta la música, no lo duden, es lo mejor que le pasó al mundo del musica-adicto en los útlimos años (además, off-the-record, spotify es un tiburon que se comio a Last.fm y que se transformó en el “quasi verdugo” de grooveshark, sólo para poner algunos puntos más en el currículum de este/a gran programa/empresa).

Captura de pantalla de 2015-06-25 12:02:52

Spotify cuenta con una versión premium y una versión gratis. La versión gratis cuenta con un cliente nativo que podemos instalar en Ubuntu, permitiéndonos acceder a toda la música. Todo muy lindo, pero como bien se dice, nada es gratis en la vida. Spotify pone publicidad, en Europa la verdad es que se pasan un poco ya, en latinoamérica la cosa es más moderada y al menos los políticos no hacen campaña en Spotify… (espero no haber avivado a alguno) pero igual rompe las bolas. Sin embargo, la publicidad es algo que siempre molesta. A mi al menos. Entre los servicios premium, se encuentran múltiples ventajas como poder disponer offline de la música que escuchamos, mayor calidad de audio (que en la versión gratis es excelente, pero que en la premium es impecable) y obviamente, cero publicidad. Si les gusta Spotify, esta bueno tener la versión premium, si la pueden pagar.

Captura de pantalla de 2015-06-25 12:01:50

La magia sin magia

La cosa es así. En lo que vamos a ver no hay crackeo, no hay hack, no hay alteración del software original. Esto es importante de remarcar, dado que, como cada usuario hace con su máquina lo que quiere, con la instalación del script que les voy a mostrar no estamos infringiendo ninguna regulación.

Desde un punto de vista técnico, vamos a a instalar un script que monitorea la actividad de spotify y la del servidor local de pulse-audio. Identificamos algunos patrones que spotify declara y básicamente le decimos a pulse-audio que deje de reproducir sonido cuando se detecta un patrón de publicidad. O sea, en criollo, es una automatización de darle “mute” al control de volumen cada vez que escuchamos una publicidad. Lo mismo hacemos con las publicidades gráficas, las cuales bloquamos desde limitaciones al tráfico DNS.

Los entremeses de cómo se hace esto y el código vienen de larga historia. Hace más de un año que hay un grupo de gente excepcional trabajando en este asunto con la cual colaboro con lo que puedo como puedo (en general reportando errores, haciendo pruebas y tirando ideas… capas alguna línea de código por aquí y allá). El proyecto inició acá https://gist.github.com/pcworld/3198763 y tuvo varias ramificaciones, una de ellas es Spotify Ad-Killer que es en la que estuve colaborando.

Puntualmente, lo que vamos a instalar es una versión simplificada de Spotify Ad-Killer en la cual armé una configuración genérica capaz de funcionar en cualquier sistema y activé por defecto el bloqueo de publicidades gráficas (sólo disponible en uno de los tantos branchs de testing).

Basta de cosas aburridas, a los postres. :)

Ninja-Install: Bloqueando la publicidad en Spotify

Antes que nada, tienen que tener instalado Spotify. Si tienen Ubuntu 14.04 o 14.10 sigan esta guía o usen el siguiente comando para instalarlo:

Paso 1: Ninja Install de Spotify en Ubuntu 14.04 o 14.10 (actualizado 22/10/15)

cd /tmp/ && wget http://ur1.ca/o5alh -O spotify-install.sh && sh spotify-install.sh

Si tienen Ubuntu 15.04 (o superior) van a tener que hacer algunas cositas diferentes, sigan esta guía. Si alguien tiene algún problema con la instación me avisan en los comments.

Una vez instalado Spotify, ya podemos proceder con la instalación del bloqueador de publicidad. Abrimos una terminal y pegamos el siguiente código:

Paso 2: Ninja Install del Bloqueador de Publicidad de Spotify

cd /tmp/ && wget http://ur1.ca/mx6nu -O spotify-sinpublicidad.sh && sh spotify-sinpublicidad.sh

Eso es todo. :)

Ahora simplemente busquen el nuevo ejecutable que se llama “Spotify (Ad-Killer)”.

Detalles y pormenores

Bueno, esta pequeña sección es para desmistificar un poco y contarle, a quien quiera saber, algunas cositas más acerca de esto que hicimos.

Lo primero que me viene en mente es que la instalación del Paso 2 no requiere que hayan corrido el paso 1 tal como lo puse yo. Basta con que tengan instalado exitósamente Spotify para poder instalar el bloqueador. Si tenían Spotify ejecutándose deben matar el proceso antes de ver los cambios. Pueden hacerlo con el siguiente comando: killall spotify. Luego, al lanzar nuevamente la aplicación, podrán disfrutar de Spotify sin publicidad.

Luego creo que vale la pena dedicarle dos segundos a saber cuáles fueron las modificaciones que realicé a la versión que viene por defecto en el Ad-Killer. Como les comenté Ad-killer es un script que articula spotify con pulse audio, dando órdenes de ante eventos específicos. En la versión de default, la orden no es un mute (como en la versión que publiqué yo) sino que nos permite reproducir archivos (y subcarpetas) con mp3 ubicados en nuestra carpeta de música cada vez que una publicidad se dispara. La razón por la que elegí la opción de mute es que la verdad es que es muy difícil que haya coherencia entre lo que escuchamos en spotify y la amplia lista y variedad de temas que tengo en mi carpeta de música (pudiendo saltar de bomba estéro al chaqueño palavecino a megadeth, depende del día jaja). Por eso elegí el modo mute.

Todas las modificaciones que se pueden hacer en el script están situadas en un archivo de configuración en $HOME/.config/Spotify-AdKiller/Spotify-AdKiller.cfg. Pueden explorarlo y manipularlo a su antojo. Si hacen lío, simplemente corran el Paso 2 nuevamente que resetea todas las configuraciones retornando al modo en el que, para mi gusto, es el mejor.

Además de esto, lo que hice en el script es:

  • Instalación automática de dependencias
  • Reseteo de configuraciones previas ente un nuevo install
  • Instalación de todas las configuraciones y archivos auxiliares en la carpeta oculta ~/.installer-spotify-ad-killer
  • Instalación de los ejecutables en /usr/local/bin (en lugar de $HOME/bin, que me resulta más que molesto)
  • Alteración del modo de bloqueo a MUTE (en lugar de reproducir todo lo que haya en ~/Música)
  • Instalación automática del bloqueo de publicidad gráfica (vía DNS, disponible sólo en branch testing del proyecto)

Una última cosa a aclarar son los detalles en torno al bloqueador gráfico basado en DNS. Hay algunas publicidades que vienen directamente dentro del programa Spotify, por lo que son locales, por lo que el programa no intenta buscarlas en su servidor externo. Estas publicidades no serán bloqueadas, pero la mayoría de las que aparecen regularmente sí.

Captura de pantalla de 2015-06-25 12:00:35

Otra cosa que noté es que en el primer arranque puede ser que Spotify “piense” un poquito de más, tratando de conectarse a los servidores. Se soluciona cerrando el programa con killall spotify y volviendo a lanzarlo (o sea que a veces hay que iniciar el programa dos veces).

Una cosita más. El bloqueador también se basa en la detección de señales d-bus y de notificaciones del sistema. Así que tienen que tener activadas las notificaciones (pop-up del sistema con cartelito nuevo por cada canción)  para que los bloqueos funcionen.

Bueno, eso es todo por ahora, espero les haya gustado este mega post y la seguimos en la próxima.

Salú!

Edit: Para desinstalar, corran el siguiente comando:

rm -Rf ~/.installer-spotify-ad-killer ; sudo rm -Rf  /usr/local/bin/dns-block ; sudo rm -f /usr/local/bin/spotify-wrapper.sh ; sudo rm -f /usr/local/bin/spotify-adkiller.sh ; rm -f ~/.local/share/applications/Spotify\ \(AdKiller\).desktop
[MegaPost] Spotify gratis y sin anuncios en Ubuntu 14.04 o superior

A instalar y probar Atraci! Cada vez mejor.

Hola a todas y todos! Hace poquito les comenté de HipHop, un programa que buscaba canciones y permitía hacer playlists estilo spotify, pero gratis. Bueno, no se si se pasaron por el post de HipHop, pero la cosa es que 1) el proyecto murió sin embargo 2) el script de instalación todavía funciona (y refiere a un mirror del programa cuando estaba activo). Esto no es todo! El proyecto renació como Atraci, una versión mejorada desde el punto de vista legal, nuevo aspecto y con nuevas funcionalidades.  Multiplataforma y más rápido. De diez!
Hoy vamos a instalar Atraci en Ubuntu o en cualquier distro linux. :)

Atraci continúa la tradición de HipHop. Ambos vienen a ser como una alternativa a Spotify sin anuncios, ni de audio, ni visuales. Lo mejor, tudu completamenchi legau (mucho mundial, sorry). Mientras que Hiphop se basaba en torrents de aquí y de allá para su funcionamiento (igualmente legal, aunque muy en el ojo de la tormenta) Atraci acude a iTunes, Last.fm y SoundCloud para buscar las canciones, haciendo uso de una base de datos de más de 50millones de archivos (más del doble de itunes).

Además agregaron una linda cosita: videos!!!. Ahora Atraci busca en Youtube el video de la canción que esté sonando y si queremos nos deja agrandarla. Realmente cómodo y muy útil. :)

Como hiphop, aún está en sus primeras fases, entonces no esperen funciones avanzadas. La construcción de las playlists sigue siendo canción a canción. Si HipHop les pareció una buena alternativa para “buscar y escuchar música” en tonces Atraci no los va a desilusionar. Para usarlo, nada de cosas raras, metemos el artista (o artista – disco ) y play.

No tan tan bueno: el lado oscuro del corazón
Dentro de las cosas que no me convencieron de la última versión, puedo decir que la interface hizo un retroceso enorme. Los colores y distribución del contenido no ayudan en la funcionalidad del software. También es bastante triste ver que no hay un lindo instalador para Linux, ni ícono tampoco.

Podría ser infinitamente mejor. De hecho, está todo por mejorar. Pero lo que más me da pena es que la interface de hiphop no tenía estas falencias. El colmo de este rediseño son los botones de ventana, que están embebidos en la interfaz, y que parecen un botón de menú “muy grande”. Bueno, esos tres puntos pretenden ser un combo de control de ventana alla mac, tipo “min,max,close”. Una cagada a mi parecer. Como concepto, pobre, pobrícimo. Como ejecución… peor.

Por último, el borde de ventana. Claramente es un bug ya que los controles de ventana están embebidos. Ya lo reporté en github. De cualquier forma sacar esos cosos redondos de adentro del programa debería ser la única prioridad de los developers, jajaja. :)

Cómo instalar Atraci en tu distro Linux

Se trata del instalador para HipHop que renace y se aggiorna a esta nueva versión de Atraci. También va con ícono de yapa porque la app no tiene aún (también mandé mi sugerimiento a github).
:P

Ninja-Install:

El script necesita permisos de super usuario para borrar installs previos y copiar los archivos de ejecución a /usr/bin y a /usr/share/applications, así como el ícono a la carpeta /usr/share/icons).

Abran su terminal y peguen esto según la arquitectura de su sistema:

fix 12/07/14: resuelto problema del icono y error 404

64 bits:

wget bit.ly/1mrEXCO  -O install-atraci.sh && sh install-atraci.sh

32 bits:

wget bit.ly/1mIEYBU  -O install-atraci.sh && sh install-atraci.sh

Instalación manual:

  1. Descargan el programa desde acá: https://github.com/Atraci/Atraci
  2. Descomprimen el archivo descargado
  3. Se meten en la carpeta resultante y le dan permisos de ejecución al archivo Atraci
  4. Ejecutan con ./Atraci desde una terminal (tienen que estar en la carpeta donde está el archivo Atraci)
    Nota: van a ver que el ícono se ve medio cochino. Además cada vez que quieran ejecutar el programa van a tener que abrir la terminal. Ambos asuntos se solucionan si usan el instalador que hice y compartí arriba.

Espero les guste este programita. Open Source baby! :)
A escuchar música con Atraci se ha dicho. _
Salú!

//

//

A instalar y probar Atraci! Cada vez mejor.

Cómo instalar la última versión de Dropbox [Ubuntu 64bits]

Hola de nuevo, volví! :P. Anduve exponiendo mi trabajo de tesis en un congresito, preparando la presentación y trabajando mucho en lo que hago en el mundo real. Ya está. Luego de dormir hasta tarde lo primero que hice fue empezar a escribir este post. Tengo muchas cosas sobre las que me gustaría explayarme un poco, pero como todavía estoy medio drogui por el rush, para entrar en calor prefiero hacer un post corto y conciso.

Hoy voy a contarles cómo instalar dropbox (o cómo yo instalo dropbox), de forma de disfrutar de la última versión sin mayor esfuerzo que un copy-paste. La idea es ir actualizando el post cada vez que los muchachos de dropbox saquen una nueva versión de su software. Veremos como va. “:)”

Sin más, no creo que tenga que explicar qué es dropbox. Así que abran sus terminales y peguen el pedazo de código de la próxima sección para disfrutar de esta escencial herramienta. Funciona de Ubuntu 12.04 en adelante. O sea, en prácticamente todos las versiones modernas de 64bits.

Ninja-Install de Dropbox

(Versión 2.11, qt, julio 2014)

Como siempre: abran una terminal y peguen (sólo para 64 bits!):

sudo apt-get install libappindicator1 -y && cd ~ && rm -R ~/.dropbox-dist ; wget https://d1ilhw0800yew8.cloudfront.net/client/dropbox-lnx.x86_64-2.11.0.tar.gz && tar -xzvf dropbox-lnx.x86_64-2.11.0.tar.gz && cd .dropbox-dist/ && sudo sh -c 'echo "alias dropbox=~/.dropbox-dist/dropboxd" >> ~/.bashrc' && source ~/.bashrc && cd && dropbox start &

Y listo! Cuando termina pueden cerrar la terminal. Para verificar podemos abrir dropbox :)

Y eso es todo por ahora,
Salú! :)

Cómo instalar la última versión de Dropbox [Ubuntu 64bits]

[Rapidito] Cómo solucionar “E: No se pudo abrir el fichero de bloqueo «/var/lib/dpkg/lock» – open (13: Permiso denegado)”

Editado1: agregada la advertencia de paquetería

Editado2: agregada la razón del problema

Hola de nuevo a todos y todas. En esfuerzos incomunables por hacer posts más cortos voy a tratar de ir al punto. Hoy me meto con un error de terminal que todos tuvimos y tendremos. Se bloquea el dpkg y no nos deja hacer updates o instalar paquetes desde la terminal de Ubuntu.

Es algo relativamente usual que cada tanto Ubuntu se empaque y cuando hacemos un update nos tire el mensaje en cuestión E: No se pudo abrir el fichero de bloqueo «/var/lib/dpkg/lock» - open (13: Permiso denegado). Este mensaje bloquea todo tipo de instalación y upgrade del sistema, hacíendolo realmente molesto. Las razones son cosa’e mandinga para mi, pero la solución se las comparto a continuación.

La solución. Pim pam pum (o en 2 patadas)

En corta, abran una terminal y peguen:

sudo rm -Rf var/lib/dpkg/lock ; sudo apt-get dist-upgrade -y

Un segundito… que páaaaare la música!: Si agregaron un nuevo PPA o instalaron un paquetón que no funciona bien, entonces la línea de arriba fuerza a que el paquete se instale. Si ese es el caso, saquen el “-y” del final y controlen que la instalación vaya correctamente. Agradezco a +Javi en guglplás por la señalación.

Listo!

La razón del error, como dije, me es completamente ajena es simple (gracias +Héctor!): se debe a que cancelamos manualmente el proceso apt-get update. Luego de la cancelación, dpkg se empaca y bloquea esa carpeta impidiendo el acceso al sistema de paquetes. Así que si quieren prevenir este error, nada de ctrl+c o de killall apt-get durante el proceso `sudo apt-get update`.

Esta solución que les presenté se deriva directmente del mensaje que nos devuelve apt-get. Cuando dice que «/var/lib/dpkg/lock» está bloqueado, entonces sabemos que el problema está ahí. Lejos de tratar de “desbloquearlo”, el camino fácil es borrarlo ya que dpkg debería regenarlo por cada paquete que instala y, en efecto, es lo que sucede. Una vez que forzamos la eliminación del directorio todo vuelve a la normalidad. Para terminar de curar el sistema, debemos reiniciar.

Wow, eso fue corto. Me siento raro. :P

Espero les sirva y hasta la próxima! :D

Salú!!

//

[Rapidito] Cómo solucionar “E: No se pudo abrir el fichero de bloqueo «/var/lib/dpkg/lock» – open (13: Permiso denegado)”

[Ninja] Cómo instalar Spotify 0.9.10 con nueva interfaz. Pero en 2 segundos.

Hola a todos y todas. Voy a intentar hacer un post corto. :)

Les muestro cómo instalar la última versión del archi-conocido programa Spotify. Spotify, por si no lo sabían, sirve para escuchar música, descubrir nuevos artistas en base a nuestros gustos y algunas cosillas más. Es gratis, aunque te mete publicidad de audio luego de algunas canciones. Tema que atacaremos en otro momento.

Por ahora les muestro cómo hice el ninja install de la última versión de Spotify, que incluye el fix que reconoce el rediseño (muy pituco) que hicieron de la interfaz.

Ninja-Install de Spotify 0.9.10 en Ubuntu 14.04

Como siempre, abran una terminal, peguen esto y “vualá”. :P (SÓLO SISTEMAS 64 BITS!!!)

sudo sh -c 'echo "deb http://repository.spotify.com/ stable non-free" > /etc/apt/sources.list.d/spotify.list' && sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 94558F59 && sudo apt-get update && sudo apt-get install spotify-client -y && sudo sed -i 's/ec=spotify \%U/ec=spotify --ui.track_notifications_enabled=false/g' /usr/share/applications/spotify.desktop

Lo ejecutan buscando “Spotify”, obviamente. :)

Felices canciones!

Ninja-Install de Spotify 0.9.10 en Ubuntu 12.04 ~ 13.10

También SÓLO SISTEMAS 64 BITS ^_^

sudo sh -c 'echo "deb http://repository.spotify.com/ stable non-free" >> /etc/apt/sources.list' && sudo apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv-keys 94558F59 && sudo apt-get update && sudo apt-get install spotify-client -y && sudo sed -i 's/ec=spotify \%U/ec=spotify --ui.track_notifications_enabled=false/g' /usr/share/applications/spotify.desktop

Gracias por compartirlo en los comentarios Halil! :)

Y Salú!

PS. salió bastante corto _

logo: https://dribbble.com/shots/1048329-Spotify-Logo?list=searches&tag=spotify&offset=74
fuente: http://www.webupd8.org/2014/05/spotify-for-linux-gets-refreshed-user.html

[Ninja] Cómo instalar Spotify 0.9.10 con nueva interfaz. Pero en 2 segundos.

Atacando otro bug de gnome 3.12: forzar la distribución del teclado en español

Hola a todos y todas. Gracias por la buena onda con el asunto del tema y los íconos. _

HAY UN POST MEJORADO DE ESTO, CON UNA MEJOR SOLUCIÓN. PÁSENSE POR AĆA.

Les cuento que hay otro bug que me molesta mucho de gnome 3.12 y me refiero a que el idioma se cambia a inglés sólo. Ahí vamos.

El bug: me cambia a idioma inglés el teclado

Qué es lo que pasa? Bueno, es bastante simple. Si instalamos algo en gnome-shell y queremos ver cómo es, una nueva extensión por ejemplo… o como me pasa a mi cada vez que toco algo en el tema de la shell tengo que reiniciar todo el entorno para que me tome bien los cambios. Las teclas de la injusticia: alt+f2, r.

Luego de apretar alt+f2, r, la shell se reinicia pero el idioma del teclado se cambia a inglés. No importa si no tenemos el idioma instalado. No importa si seleccionamos español por defecto con las herramientas que se les ocurran. No importa nada, el hijo de putasss se cambia al inglés. _

Para cambiarlo al español, nada, hay que seleccionar con el mouse (arriba a la derecha) el lenguaje “en” y luego volver a seleccionar “es”. Un dolor de bolas.

Lo atamos con alambre: crónicas de cosas que no funcionan.

Antes que nada, debo disculparme por la no elegancia de esta cosa que hice. De hecho lidié con ella desde el inicio de 3.12, pensé que en algún momento se iba a solucionar, pero acá estamos: 3.12.2 estable y todavía a todo developer le chupa un huevo o todos usan su fakin teclado en inglés, no sé… algo raro pasa. En fin…

Dadas las limitadísimas “habilidades programativas” que tengo, todo lo que pude hacer es una script en bash, jeje, como siempre. El script ejecuta el comando “setxkbmap es“, que es el salvavidas que nos retorna el teclado a nuestro idioma. Lo ridículamente arcaico del script es que ejecuta setxkbmap regularmente, o sea una vez cada cierta cantidad de tiempo, así no tengo que hacerlo manualmente nunca más. La contra es que ejecuta el comando regularmente, incluso cuando el idioma no es inglés.

Un poco más de detalle (la historia de un incomprendido): la estrategia de repetir como loro el comando que nos cambia el idioma es lo que en economía se llama un “second best”, o sea, no es lo ideal, pero de algún modo funciona. Lo ideal sería que cada vez que gnome-shell se reincia luego de apretar alt+f2, r lea un archivito en el que le podamos meter nuestros scripts… lamentablemente no pude hacer eso. En el proceso que recarga el tema y las extensiones activadas, debería leer ese archivito y ejecutarlo. Si alguien sabe cómo hacerlo, por favor, ayuda. _ ( porque .profile, .scripts, .bashrc… aplicaciones al inicio, nada… nada se recarga nuevamente luego de apretar alt+f2,r…). Entonces. La alternativa ideal no funcionó. Empecé a ejecutar el comando manualmente luego de reiniciar. Como habrán visto es una cosa muy cortita y no tarda absolutamente nada en aplicarse. Luego dije, ok, esto se tendría que poder repetir, basta de hacer esto cada vez que reinicio la shell (porque por ejemplo, cuando hago un tema, esto es básicamente… bueh… cada vez que modifico una línea -lo cual hace muy inconveniente cambiar a la terminal luego de cada reinicio-). Así que busqué en gugul y me encontré con “cron” y todas las herramientas “cronianas”… bueno. No me funcionó ninguna. Todavía no entiendo por qué. Tampoco me funciona “alias”, pero es claramente otro tema para quejarme otro día jajaja. Sigo: entonces como con el puto cron el comandito no se repetía ni se ejecutaba, tuve que encontrar otra forma (se supone que la función de cron es repetir comandos). La solución que encontré es “bien cabeza” como decimos en los suburbios de buenos aires _, porque loopeo (léase: lupéo) al infinito una condición y ejecuto el comando en cada vuelta del loop. Más simple que eso, no essiste papá. Y esa es la forma arcaica de hacer un parrot-command :P (hoy estoy on fire!).

Soluciones de menor a mayor.

Solución 1: ejecutar el comando manualmente

Lamentablemente esta es una opción. Si no reiniciamos la shell todo el tiempo por algún motivo, hasta la recomiendo. Simplemente abran una terminal y peguen:

setxkbmap es

Así de simple.

Solución 2: cron (no me funcionó)

A mi no me funcionó, pero lo pueden hacer. La idea es que hay que editar crontab y meter el comandito de arriba para que se repita. Para eso ejecutamos:

crontab -e

Y luego, al final, agregamos una línea que rece:

*/10 * * * * setxkbmap es

Para ejecutar el comando cada 10 minutos.

Solución 3: Script lupeáo cavernoso (cron sin cron)

Abrimos un gedit y pegamos esto:

#!/bin/bash
mkdir -p ~/.forzar-teclado-español
cd ~/.forzar-teclado-español
while true ;do
if [ -f teclado-español ] ;then
sleep 10;
setxkbmap es;
else
touch teclado-español;
fi
done;

Guardamos el archivo como teclado-es.sh en nuestro home. Yo tengo los scripts en una carpetita en el home que se llama .scripts. O sea que los guardo en ~/.scripts pero ya es cosa de gustos. _. Metanlo donde quieran. Luego lo ejecutamos como aplicación de inicio. Abrimos otro gedit y pegamos:

[Desktop Entry]
Type=Application
Exec=sh /home/XXXtu_nombre_de_usuarioXXX/teclado-es.sh
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=false
Name=teclado-es
Comment[es_ES]=
Comment=
Icon=preferences-desktop-launch-feedback
StartupNotify=true
Terminal=false
Categories=GNOME;GTK;

Reiniciamos y todo tendría que correr. Acuérdense de cambiar XXXtu_nombre_de_usuarioXXX por su nombre de usuario jeje. Si pusieron el .sh en otro lado deben editar esa línea con la localización (absolute path, nada de símbolos).

Solución 4 = Solución Buena!: se me ocurrió mientras escribía el post.

Ok, así se trabaja. :P

Resulta que repasando el script me dije “y qué pasa si puedo recuperar el valor de la distribución del teclado y aplicar el script quirúrugicamente sólo cuando el teclado tiene un idioma que no sea español?”.

El truco: setxkbmap -query nos devuelve el lenguaje del teclado. Todo gracias a man setxkbmap. Un poco de bash-no-jutsu, sed, awk, if-else y la mar en coche, y podemos aislar el asunto. El script escupe todo el día el lenguaje del teclado. Si devuelve “es”, no hace nada. Si no, ejecuta el comando para cambiar la distribución a español. La cosa viene así:

#!/bin/bash

while true ;do
if [ -f /tmp/teclado-español ] ;then
sleep 3;
rm /tmp/current-keyboard ; 
setxkbmap -query | grep layout > /tmp/current-keyboard
sed "s/.*,//" /tmp/current-keyboard
value=`sed "s/.*,//" /tmp/current-keyboard`

if [ $value = "us" ]; then
       sleep 3;
else
    setxkbmap es;
fi

else
touch /tmp/teclado-español;
fi
done;

Este es el output del script. En la línea 3 reinicié la shell. Cada línea tarda 3 segundos en aparecer. :)

Esta opción es excluyente de la anterior. Guardamos el archivo como teclado-es.sh en nuestro home. Yo tengo los scripts sueltitos en el home pero ocultos. O sea que empiezan con un punto. Pero esas ya es cosa de gustos. _. Metanlo donde quieran. Luego lo ejecutamos como aplicación de inicio. Abrimos otro gedit y pegamos:

[Desktop Entry]
Type=Application
Exec=sh /home/XXXtu_nombre_de_usuarioXXX/teclado-es.sh 
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=false
Name=teclado-es
Comment[es_ES]=
Comment=
Icon=preferences-desktop-launch-feedback
StartupNotify=true
Terminal=false
Categories=GNOME;GTK;

Guardamos el archivo en ~/.config/autostart con el nombre teclado-es.desktop. Luego ejecutamos en la terminal chmod +x ~/.config/autostart/teclado-es.desktop para darle permisos de ejecución.

Reiniciamos y todo tendría que correr. Cualquier cosa comentan abajo.

Eso es todo. Como siempre, un post de 5 minutos termina siendo un chorro de cosas. Será. :)

Salú!

//

Atacando otro bug de gnome 3.12: forzar la distribución del teclado en español