Bad Daemons

el-get: Otro instalador de paquetes

Alguien se podría preguntar, para que queremos otro, si ya tenemos package.el, que además viene por defecto en emacs? Pues es simple, no todos los paquetes están en melpa, elpa o marmalade. O igual si que están pero queremos usar una rama concreta del repositorio. Hasta ahora yo maneaba esto instalándolo desde terminal con git y ale, a volar. Pero también tenia algún paquete que habia copiado directamente de la wiki de emacs, con el tiempo se me podría haber olvidado de donde lo he sacado.

use-package: Aislar la configuración de cada paquete

Llega el momento en el que en emacs, como buen sistema operativo que es, te das cuenta de que tienes muchos paquetes. Y si no te organizas mínimamente, acabas con la configuración dispersa por todo el fichero. Para evitar esto se puede usar org-babel, como se puede ver en mi configuración. Aún así se puede rizar el rizo con use-package, que además de ayudar a aunar la configuración hace que se configure más rápido, ya que compila todos los archivos lisp que puede.

Qutebrowser: un navegador ligero manejable por el teclado

Ya comenté en el primer articulo de Neomutt que hay dos tipos de programas que usaba que consumen mucho. Expliqué como cambiar el primero, el cliente de correo. Hoy toca cambiar el navegador. Antes usaba Firefox, cómo la mayoría. Tiene muchos plugins y cosillas interesantes. Pero incluso cuando tenia mi querida torre funcionando, me planteé cambiarlo. Es un navegador muy, muy pesado, pero sobretodo lo que quería era depender menos del ratón.

Programación literaria para sysadmins / devops

Mencioné de pasada el concepto de programación literaria en el articulo de mi configuración de emacs, ahora voy a explicar en que consiste este y cómo usarlo con emacs y org-mode. La definición de la wikipedia al rescate. El paradigma de programación literaria […] permite a los programadores desarrollar sus programas en el orden fiado por la lógica y el flujo de sus pensamientos. Los programas literarios están escritos como una exposición lógica no interrumpida en un lenguaje humano, de forma similar al texto de un ensayo, en el cual se incluye el código fuente tradicional oculto tras macros.

Cliente de GNU social para emacs

En un articulo de @maxxcan ya vimos como usar identica-mode como cliente de emacs. Como su propio nombre indica, está pensado para el entonces centralizado servicio que era Statusnet, cuyo servidor principal era identi.ca. Sin embargo @bob, alias @bashrc, lo ha actualizado, cambiando nombres de funciones y creando otras. Así que procedemos a instalarlo. De momento está en github. igual en un tiempo se anima a meterlo en Elpa. mkdir -p ~/.

Evitar ataques de fuerza bruta en Prosody

Este es un tema muy obvio, pero la verdad es que no había caído en investigarlo hasta hace poco. Me fié en como intentar hacer seguras las conexiones SSL con su FPS y sus cosas, y no pensé en que alguien me puede robar la cuenta. No me suele preocupar este tema, mis contraseñas suelen pasar de los 20 caracteres. Pero aún así, si no hay ningún tipo de control en los intentos y los fallos al intentar loguearse, un proceso que se podría alargar años con las medidas adecuadas, podría tardar un mes o dos solamente.

SimpleUpload: Usar HTTP Upload cómo hosting

HTTP Upload es ese XEP de los servidores XMPP que permite subir archivos al servidor y compartir la dirección en una conversación, ya sea en grupo o una conversación privada. Algo muy útil y que recientemente he implantado en Jabbergram, aunque aún está en fase de testeo. Pero el soporte en Jabbegram vino después de hacer SimpleUpload, que es el nombre del programa que sube archivos desde la terminal. Esto es muy cómodo por que podemos compartir cualquier tipo de archivo y se verá correctamente en el navegador, desde un archivo de texto plano a una imagen pasando por audio o vídeo.

Añadir automáticamente símbolos de marcado en org-mode

Quien use org-mode sabrá de la existencia de los símbolos de marcado. Me refiero la cursiva, el subrayado, negrita y el resaltado. Yo, como soy muy vago, he buscado la forma de que al presionar una vez cualquiera de los carácteres de marcado anteriores se inserte el segundo, del mismo modo que electric-pair-mode cierra los paréntesis o los corchetes. Para ello hay que modificar la tabla de sintaxis de org-mode:

Hybridbot: Bot pasarela irc - abber

Hace un tiempo me enteré de que había una comunidad de emacs en castellano en Telegram y pensé que seria buena idea intentar linkearlo con la sala de #emacs-es de freenode. Al principio busqué un programa que linkease irc con un grupo de telegram directamente, pero como no me convenció lo poco que vi, decidí usar abbergram y linkear la sala xmpp con la del irc, teniendo así tres sitios posibles en los que la gente pueda entrar.

Hybridbot: Bot pasarela irc - Jabber

Hace un tiempo me enteré de que había una comunidad de emacs en castellano en Telegram y pensé que seria buena idea intentar linear con la sala de #emacs-es de freenode. Al principio busqué un programa que linkease irc con un grupo de telegram directamente, pero como no me convenció lo poco que vi, decidí usar Jabbergram y linkear la sala xmpp con la del irc, teniendo así tres sitios posibles en los que la gente pueda entrar.

Funciones básicas de emacs

A medida que he ido usando Ivy a lo largo de esta semana he visto algunas funciones que vale la pena mencionar aunque no son propias de Ivy cómo tal. Todas las que mencionaré están tanto nativamente cómo en Helm. Hay que recordar que en realidad Ivy no es más que un frontend, se puede poner por delante de cualquier función. Estas funciones les irán especialmente bien a quien no tenga demasiada experiencia en emacs:

Migrar de helm a ivy

Ya hablé hace un tiempo sobre helm. Helm es uno de los paquetes más potentes que tiene emacs y me sigue encantando por ello. Pero tiene un pequeño problema y es que consume demasiado para mi ordenador. ivy, en cambio, está a medio camino de ido y helm, manteniendo los atajos más típicos de emacs. Me refiero al uso del tabulador, que seguramente es a lo que más cuesta acostumbrarse cuando se empieza a usar helm.

Soporte de múltiples cuentas en Neomutt + encfs

En el anterior articulo expliqué como configurar neomutt con programas accesorios. Hoy toca hacerlo multicuenta y más privado. Esto se gestionará con un simple script y moviendo todos los archivos configuración a un contenedor cifrado. Poco habrá que cambiar en la configuración ya hecha. Partiremos de la base de que los archivos de configuración están en las localizaciones que se establecieron en el anterior articulo. Primero de todo, instalaremos y configuraremos encfs:

Neomutt + offlineimap + notmuch + abook: Sustituyendo a los gestores de correo monstruosos

Creo que ya lo comenté en algún otro articulo, pero se me odió la torre hace unas pocas semanas y desde entonces estoy funcionando con un Pentium M con 512 MB de RAM. Evidentemente he tenido que cambiar un poco mi flujo de trabajo, no puedo usar algunos programas que antes usaba. Por suerte hace ya más de un año estoy usando i3-wm, por lo que ya había muy poquita cosa que usase con interfaz gráfica o fuese demasiado pesado para este ordenador.

Usar ZeroNet desde un ordenador remoto

Como pasa a menudo, no hay una sola solución a un problema. Raito encontró la siguiente, que implica usar una contraseña para acceder al ZeroNet remoto, nginx y algo más. Para mi tiene un problema y es que la mayoría de enlaces de ZeroNet que te puedan pasar estarán apuntando a la IP local, es decir, 127.0.0.1. Por ello yo uso otra solución, que es simplemente usar socat desde el cliente.

Mostrar un aviso únicamente a las visitas de ZeroNet

Ya comenté en el primer articulo sobre ZeroNet que hablaría de como mostrar avisos sólo a las visitas de ZeroNet, así que ahí va. Mi motivo para querer usar esto es que en la versión de la web de ZeroNet no se puede comentar, por lo que quería que se avisase sólo a ellas. Para ello modifiqué un poco el script que se da en el articulo de como crear una web en ZeroNet.

Como replicar una web de HTML estático en ZeroNet

Leyendo el articulo de @zorro acerca de ZeroNet me dio curiosidad por esa plataforma y me puse a probar y leer un poco sobre el tema. Para quien no lo sepa, ZeroNet es una darknet estricta que permite tener webs (y otros servicios) resistentes a la censura, ya que se distribuyen en todos los ordenadores que visitan esas webs. Funciona con la tecnología de Bitcoin (los blockchains) para firmar las webs y la red BitTorrent para distribuirlas.

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.