manumateos.dev

Por qué mantengo mi propio fork del tema de mi blog

Hace unos días decidí pulsar el botón “Fork” del repositorio de GitHub del tema de Hugo que venía usando en mi blog personal, hugo-theme-monochrome. Ahora uso este repositorio en mi cuenta de GitHub. Mi principal motivación para hacerlo ha sido arreglar una serie de problemas de compatibilidad con Hugo que habían venido apareciendo y que no eran corregidos por su desarrollador original.

Yo no soy quién para exigir a nadie trabajo gratuito, partamos de esa base. Lo que he hecho ha sido literalmente arremangarme1, crear mi propia bifurcación del proyecto para arreglar los problemas que a mí me picaban, mantenerlos como código abierto por si alguien quisiera utilizarlos, y además abrir una pull request para que el desarrollador original estuviera al tanto y valorara incluir mi solución para que todos los usuarios actuales del tema puedan beneficiarse de ella. Entiendo que es uno de los mecanismos en que funciona el código abierto y es una de mis primeras contribuciones que han tocado la base de código.

Vi que en el proyecto original había ya dos pull requests arreglando dos problemas, uno con el tag cloud y otro con el nombrado de un shortcode interno de Hugo. Estos commits me los he traído a mi fork. Y de momento el otro cambio que he hecho ha sido mover una serie de ficheros. En Hugo 0.146.0 ha habido cambios de calado en el sistema de plantillas, y particularmente las rutas de algunos ficheros han cambiado. Yo estaba utilizando Hugo 0.142.algo, y hasta que no actualicé mi instalación local (y la GitHub Action) no me di cuenta de que el blog quedaba imposible de construir.

Mi fork desaparecerá en el momento en el que estos problemas desaparezcan. No tiene ninguna de las modificaciones específicas del tema que hice para mi blog, por lo que cualquiera puede utilizarlo si quiere. Y en todo caso mi pull request está aquí.


  1. Todo lo que se puede arremangar uno cuando hablamos de desarrollo de software y de trabajar delante de una pantalla, ya me entendéis. ↩︎