Tras la debacle de Google Reader instalé en mi servidor personal un Tiny Tiny RSS para poder tener un lector de RSS que no dependiese que una empresa externa1. Llevo años usándolo y estoy contento, pero cada vez tiene más cositas que me resultan molestas. A saber:

  • Día tras día me da la sensación de ser una mole lenta y pesada. No hace honor al nombre. Desde hace unos meses, por el motivo que sea, le cuesta horrores cargar la página inicial. Concretamente, esperar a que se vayan cargando los favicon es un suplicio.
  • La única vez que mi hosting me ha llamado la atención por un uso desmesurado de recursos fue porque la base de datos asociada a mi instalación ocupaba más de un giga. En algún momento se habían dejado de borrar artículos antiguos.
  • Oficialmente, la única forma de ejecutar esto ahora es usando docker. Yo estoy en un hosting compartido y todo lo que puedo hacer es copiar archivos PHP a una carpeta. Por ahora funciona, pero cuando deje de funcionar estoy vendido.
  • Necesito una app en el móvil para usarlo desde ahí. No tiene interfaz móvil nativa. Hay algunas alternativas pero se han quedado viejas rápidamente.

El otro día me puse a buscar algún reemplazo y encontré FreshRSS, que tenía bastante buena pinta, y es lo que he estado usando desde entonces. He mantenido los dos sistemas en paralelo por si me arrepentía, pero no parece que se vaya a dar el caso.

La instalación es bastante sencilla. Las instrucciones la complican más de la cuenta; basta con descomprimir todo en la carpeta raíz de nuestro servidor y ya. A partir de ahí, abrimos la dirección en un navegador y seguimos las instrucciones. En mi caso, estoy usando sqlite como base de datos. También he activado la autentificación HTTP, que siempre me deja dormir más tranquilo. La actualización de los feeds funciona como uno podría esperar, mediante un cron.

En mi Tiny Tiny RSS exporté mis suscripciones en formato OPML y luego las importé en FreshRSS sin problemas. Este archivo contiene la dirección de los feeds y las categorías a las que corresponden, así que todo me vino ya bien ordenado. Los pocos filtros que tenía los repliqué a mano usando la sintaxis propia del nuevo sistema.

El sistema de backup es bastante simple. En el servidor tengo un par de líneas que van más o menos así:

@daily php cli/export-sqlite-for-user.php --user rinzewind --filename 
$HOME/freshrss_backup.sqlite &>/dev/null && gzip -f $HOME/freshrss_backup.sqlite

@daily php cli/export-opml-for-user.php --user=rinzewind &>/dev/null | gzip 
> $HOME/freshrss_backup.opml.gz

Y luego en mi portátil tengo otro cron que copia los archivos a mi Dropbox diariamente.

Por ahora estoy usando el tema Pafat. Me gustaría algo con un poco menos de color, pero es algo muy secundario. Se ve bien tanto en el escritorio como en el móvil y la sensación es que es bastante más ligero que Tiny Tiny RSS.

Con esto, mi montaje actual se completa como sigue:

  • Blog: Pelican, un generador de sitios estáticos. Se escribe en Markdown, se compila localmente y los archivos generados se copian al servidor mediante rsync.
  • Marcadores: Shaarli (aunque cada vez lo uso menos). Usa como almacenaje un archivo local.
  • Wiki: DokuWiki, que es más que de sobra para llevar un puñado de notas personales. También usa almacenaje en forma de archivos.

Como la instalación de FreshRSS, ya comenté arriba, usa sqlite, ahora mismo no estoy usando ninguna base de datos (MySQL, Postgres, etc) de las que me ofrece mi proveedor de hosting. Esto me viene muy bien, porque estoy mirando cómo mudarme de Dreamhost a suelo europeo, y he visto por ahí ofertas bastante baratas de planes muy básicos que no ofrecen ninguna base de datos, y en realidad no me harían falta.


  1. Bueno, depende de mi empresa de hosting, pero eso es fácil de reemplazar. 

No tengo sistema de comentarios. Si quieres decirme algo sobre este artículo, puedes ponerte en contacto conmigo mediante e-mail o Mastodon.