Bad Daemons

XMPP en móviles: mentiras habituales y cómo mejorar tu servidor

La primera parte está basada en el gran articulo de Daniel Gultsch, “The State of Mobile XMPP in 2016”, muy recomendable. Pasa cada vez menos, pero sigue habiendo aún el mito de que XMPP o jabber no sirve para usarlo en el móvil. Hay varios motivos por los que se dice esto, comentaré tres. El primero es que usa conexiones síncronas, es decir, conexiones en las que o estás conectado o no, por lo tanto si pierdes cobertura por el motivo que sea, no estás conectado.

Cómo montar un planet

Primero de todo, que es un planet? La definición aproximada que nos da Planet Venus, que es el programa que usaremos, es un increíble rio de noticias. En sinsillo, lo que hace este programa es coger una cantidad indefinida de feeds y crear uno único. También se le podría llamar agregador de noticias. La cosa es que, en este caso, se suele usar con blogs o webs con una temática concreta, pero bueno, eso ya queda a elección de quien lo use.

Usar urxvt en modo demonio

Cómo ya sabrá quien haya leído otros articulos, yo uso i3-wm en mis ordenadores. No lo dice anteriormente, pero uso urxvt, que es la terminal cuyo renderizado falla menos a menudo y es de las más ligeras, algo importante para un escritorio tiling. Pues bien, hasta ahora he estado usando urxvt a pelo sin más, asignando a META+RET a urxvt sin más. Pero descubrí que hay un modo daemon del que se puede colgar distintos clientes, con lo que se reaprovecha la memoria usada.

Nuevo planet de emacs-es

Esto es un anuncio, poco hay que decir. Entre @maxxcan y yo hemos montado un planet de emacs-es. Con suerte, esto facilitará encontrar nuevos sitios webs y blogs sobre emacs en castellano. Incluso alguna persona que suela escribir en inglés tal vez se anime a hacerlo en castellano. La web es http://planet.emacs-es.org. Varias personas andamos en #emacs-es de freenode, por si eso. También hay un grupo en GNU social, en https://quitter.

Editar archivos de un contenedor docker desde emacs

Fiate tu la cosa más tonta que es, y yo iba tirando de ssh y tramp, lo que es muy incoḿodo. Pero de casualidad, buscando otra cosa en la wiki de emacs, encontré un pequeño snippet que facilita las cosas. (push (cons "docker" '((tramp-login-program "docker") (tramp-login-args (("exec" "-it") ("%h") ("/bin/sh"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-i") ("-c")))) tramp-methods) (defadvice tramp-completion-handle-file-name-all-completions (around dotemacs-completion-docker activate) "(tramp-completion-handle-file-name-all-completions \"\" \"/docker:\" returns a list of active Docker container names, followed by colons.

Weechat en android cómo cliente irc, xmpp y de GNU social

En un post anterior comenté cómo instalar weechat y cómo usarlo unto a bitlbee, para tener de este modo tanto xmpp cómo irc en el mismo cliente, por lo que esa parte ya está cubierta. Lo que pasa es que se me olvidaron un par de cosas, la primera que bitlbee puede ser también un cliente de GNU social y la segunda, que hay un cliente muy molón en Android

Cómo sacar el código de un apk

Una de las cosas buenas que tienen las aplicaciones para android, es que permiten que se examine el código fuente, sin que la licencia que tiene importe demasiado. Evidentemente, de hacerlo y querer modificarlas, no se podrían distribuir (supuestamente), ya que esto iría, de ser privativas, en contra del copyright. Es posible que ni siquiera sea legal examinarlo, ya se sabe cómo son con estas cosas. Pero cómo no pueden evitarlo, al lío.

Escapar símbolos al usar marcado en org-mode

Un caso que puede sonarle a alguien, es usar rutas. Si se escribe en org-mode las palabras /home/drymer/, por ejemplo, pasará que al exportar o en el mismo buffer si tenemos activado org-hide-emphasis-markers, veremos que /home/drymer/ pasa a ser home/drymer, en cursiva y sin la primera y última barra. Por suerte, hay una manera sencilla de escapar estos carácteres usando entidades org (org-entities). Las entidades de org son parecidas al latex.

Actualizar el contenido de una web mediante un hook de git

git mola mucho. Tiene mucha más potencia que la de compartir archivos, y lo de ahora apenas será rascar la superficie. Hoy veremos los llamados hooks de git, uno en concreto llamado post-update. Primero un resumen, que son los hooks de git? Son scripts que se ejecutan en función a eventos. Unos ejemplos son el pre-commit, pre-receive, post-commit o post-update. Los nombres son bastante lógicos, no tiene sentido dedicarle más tiempo.

Buscar en el buffer de emacs

El siguiente paquete es de los buenos. Para buscar en un buffer, se suele usar isearch, que se ejecuta con C-s. Con esto se puede buscar una palabra o varias siempre que estén en orden. Yo echaba en falta el poder buscar mediante expresiones regulares, cómo hace helm. Entonces encontré helm-swoop. Este permitía hacer justo lo que andaba buscando, sólo habia que bindejarlo a C-s y a volar. Pero entonces perdía el comportamiento por defecto de isearch, lo cual no quería hacer, de poder evitarlo.

Introducción a Helm

Helm es un paquete cuya descripción tiene cojones. Yo no soy capaz de traducirlo literalmente. Lo más cercano que puedo decir es que helm es un framework de completado y reducción de selección. Ole. Otra descripción que parece medio humana: Helm es un frontend para otras funciones que modifica su uso e incluso une varias. Técnicamente, los paquetes de helm pueden ser usados por otros frameworks cómo ivy o ido, siempre que o unos o otros se adapten.

Pasarela de XMPP/jabber y Telegram.

No tiene mucho misterio, sirve para hablar desde una sala de jabber a un grupo de Telegram. A continuación pego sin más el README del programa. Para el futuro, recomiendo mirar el repositorio git directamente. Se puede ver aquí. Se aceptan sugerencias y pruebas. Acerca de Con este programa es posible utilizar una sala XMPP para hablar con un grupo de Telegram y viceversa. El obetivo de este programa es el de ser sólo una pasarela sencilla, sólo tiene que pasar el texto de un lado al otro.

Funcionamiento de Faircoin 2.0

Lo siguiente son unos apuntes/resumen/traducción del paper de la nueva versión de FairCoin, la 2. Hasta ahora se funciona con PoS, el cual no es justo, ya que el poder lo tiene quien tiene poder de computación. En esta nueva versión se pasa a PoC (Proof of Cooperation). Esto quiere decir que las usuarias no minarán más. Los encargados de generar bloques serán los CVN (Certified Validation Nodes). En el futuro, estos nodos funcionaran con un método de reputación.

Un par de funciones útiles de emacs

No tengo ni idea de elisp, pero aún así me las he apañado para hacer un par de snippets medio útiles para un par de cosas que me hacían falta. Las he hecho basándome en dos articulos, este y este. Seguro que se pueden optimizar. La primera de ellas sirve para insertar cabeceras típicas en org-mode. Le he puesto sólo tres tipos, ya que son los que uso para exportar. Después de evaluar el código y ejecutar la función, mediante ido aparecerá una pregunta que nos dará a escoger entre los distintos tipos.

OnionScan - Escaneando onions

Ya tocaba dejar un poco emacs. Hoy veremos OnionScan. Este es un programa que, cómo su nombre indica, escanea onions (servicios ocultos de Tor). Tiene una desventaja, y es que está hecho en go-lang, el lenguaje de programación de Google. Aún sin gustarme, habitualmente, los productos de Google, no es ese el motivo de ser una desventaja, es simplemente que habrá que instalarlo únicamente para este programa. Pero bueno, para eso están los binarios compilados, para la puta gente vaga.

Poniendo bonito org-mode

org-mode, cómo ya se ha comentado antes, es de lo mejor que hay en emacs y con mucha diferencia. No ya tiene sentido comentar para que sirve, para ver sus posibilidades, se puede mirar en articulos anteriores. Al lío. Los asteriscos son feos Más claro el agua. Para cambiarlos, se usará org-bullet. Esto hace que las cabeceras no empiecen por un asterisco cutre, sinó que empiezan por una bola utf-8. Instalarlo es muy fácil, se puede tirar de elpa y ejecutar M-x package-install RET org-bullet RET.

Escribir prosa en emacs

Hoy inauguro una sección del blog que se llamará cómo el título, “Cosillas de emacs” seguido de un guión y un nombre descriptivo de lo que sea de lo que se habla. A título de curiosidad, nikola crea RSS de las diferentes etiquetas que se usan en el sitio, por lo que si sólo interesa subscribir se a, por ejemplo, la etiqueta emacs, se va abajo del todo, etiquetas, emacs y se verá un índice con todos los articulos y el link al RSS.

GNU social en Emacs

Los que somos usuarios de Emacs solemos estar encantados de usar nuestro programa preferido siempre que podemos. La comodidad y la tranquilidad de estar en un sistema completo y muy bien integrado es uno de los motivos de ese bienestar aunque hay muchos más y cada uno además tiene los suyos propios. Para los que no lo sepan Emacs es mucho más que un editor o un IDE de programación, es un intérprete de elisp (Emacs lisp), por lo que ejecuta todo tipo de programas realizados en este lenguaje.

Limpiando mierda en Android

Cuando alguien está pensando en comprar un móvil, lo primero que debería hacer es mirar en la wiki de Cyanogen Mod para ver que el que le interesa tiene posibilidad de usar esa ROM. Eso es lo que hice yo, me llegó el móvil y al mirar más en profundidad vi que dentro del propio móvil habían sub-categorías, en las cuales algunas soportaban CM y otras no. La mía fue la que no.