I realized something today: I have been using Linux for 30 years this December, but I have never assembled a distribution from scratch. I have built tiny images for tiny embedded devices, using binaries from other distributions.
But I never built one from scratch. Maybe I should.
Except it will not be a Linux distribution.
So, the first few steps will be: reading Linux From Scratch, peeking under NetBSD's hood, and reading up on the theory behind Nix & Guix.
I will not be using neither Nix, nor Guix (the package manager), but I do plan to use a Lisp for the configuration language. Which Lisp? I don't know yet. Probably not Common Lisp (slop), not Clojure (Java is heavy).I'm considering Guile and Fennel at the moment, or - if I'm writing the package manager anyway - then one of the Schemes I can embed in Rust.
I have my reservations about Fennel... I love it, but... I do not love Lua and the Lua ecosystem all that much.
Guile is okay, I guess. I haven't worked with it much, I will have to tinker a little, and see if I like it, and if I can bend it to my will1.
It's a Lisp. Of course I can bend it to my will. ↩︎