Background

I’m spending most of my long vacation reorganizing my github repositories, archiving some old repos (mostly android stuffs that I don’t use anymore). And when I’m looking into my dotfiles repos I remember once I’ve tried to use literate programming to manage them. I think one of the difficulties I had was editing the source code block inline.

1
2
3
4
This is how shell code block looks like in /Emacs/
#+begin_src sh
  echo true
#+end_src

Editing code blocks inline has many disadvantages, for one, indentation is quite tricky. You’ll never know the whitespaces until you tangled them. I’m sure there are solutions for this problems, but for now I just org-edit-special (bound to C-c ').

Figure 1: using org-edit-special

Figure 1: using org-edit-special

Reorganizing my repositories

Right now, I’m doing my dotfiles1 one by one, and I’ve come to realize how unmaintainable they are now. Basically, dotfiles are user-specific configuration files. While reorganizing them I saw configuration that are outdated, unneeded, or just plain wrong. I keep small configuration together in one repository (e.g. if it’s X11-related, or wayland-specific, or just shell init files). Some of them have grown big enough to have their own separate repository.

Using github-action to create each page on github

My goal is to have a self-documenting page for each repositories. Not too detailed to be a wiki, just a reminder for me, or anyone who happens to see it. Another nice thing is that the about section in the github repository page can automatically link the page.

Figure 2: Github Pages

Figure 2: Github Pages

What I’ve done

Emacs

The first thing I did. It give me the opportunity to rework my configuration, and the github workflows I use in this repository is going to be my worfklow template for other repository2.

Figure 3: the page generated by github-action

Figure 3: the page generated by github-action

My Todo List

TODO My GNU Guix configuration

This distribution always have a special place in my mind. And Guile scheme is such an elegant language. I’d like to use it someday if I got the time.

DONE Shell initialization files

Done migrating all the files3.

PROG Miscellaneous Applications

Still migrating, some application(s) may need its own separate repository4.

DONE Xorg files

Various X11 related files, done migrating5.

PROG I3-wm configuration

Still in progress, took some time because at the moment I’m using Hyprland in wayland. But the repository is already migrated6.