2024-08-27

Hello Rafiki

Rafiki means friend in Swahili.

'Hello Rafiki' is also a subtle nod to Andreas Kling of the Ladybug Browser project.
His work on Serenity OS is a huge inspiration for me.

Welcome to my stream of creativity.

I started this blog to practice my technical writing and communication skills. So this first post is here to make me cringe in future.

My blog setup.

This static site is built with Zola. I love how straight forward it is. It also gets bonus points for having an Alpine Linux package.

The interesting part is how the hosting works.

Codeberg

This site is hosted on Codeberg. Codeberg will be the de facto home for all my new projects. I am increasingly wary of the new AI coding wave where GitLab and GitHub train their code models with free software, GPL and all. However, I still plan on keeping both accounts open in order to contribute to projects I love.

One of the most frustrating things about Codeberg pages is how they are set up. You need a pages repository which is basically the public folder. You also require another repository that holds the SSG templates, themes, and markdown content.

Codeberg recommends using git submodules if you want to co-locate all the code. For the life of me, I could not figure out how to make submodules work. Having a submodule as a dependency to a project is very straight forward. Being able to work on code in both the parent module and submodule feels impossible.

Enter Pijul.

I have been dying to try out Pijul for the longest time. Pijul is a next gen distributed version control system. It has an interesting take on patches that frankly I am completely on board with.

Pijul solves the dual repo issue but allowing me to have the public folder as a git repo and the rest as a pijul repo hosted on the nest. I have been loving working with pijul and will definitely use it for more projects going forward.