Frontear / dotfiles

Configurations that power my NixOS systems
2 stars 0 forks source link

Restructuring and re-envisioning #3

Closed Frontear closed 1 month ago

Frontear commented 5 months ago

For the longest time, I've had a strange mental block where no code I wrote ever felt enough. It never felt right, it never felt good. I was plagued with these feelings, always desiring to do better, but never defining what better looked like, just this abstract idea created solely to diminish the value of my own code.

This project has felt much of the same, and always, my first reaction was to rm -rf it all. "Begin anew!" I thought, this time I'll write it different. spoiler: I would eventually feel the same.

I want to grow past this mindset, and it starts here. Instead of erasing the repo, I will meticulously pick out the things I want, the things I need, compare them to my old dotfiles especially, the archlinux ones, and create them in a way that I am proud of, that I won't diminish.

Make no mistake, this will not be easy, but I will try my best. Throughout, I will lay down some ideas that I have for how I'd like to shape this repo, and how I'd like to have it be.

Frontear commented 4 months ago

As a little update to this, I've begun trying to move things into dedicated modules. I reckon using modules is one of the best ways to pull this off. Part of me wanted to disable some of the internal modules and replace them with my own, but I haven't quite yet done that. Instead, I've only written some small modules and replaced them. My main goal will be to delete the entire programs folder and replace it entirely with modules.

Frontear commented 2 months ago

New update! We successfully isolated most things into their own dedicated modules. They can be accessed either via my.system or my.users.<name>. Currently they are a bit inconsistent in their front-end, and do not have many exposed options for configuration, but they are functionally quite nice!

Some cleanup regarding them would be better name-spacing, perhaps larger modules that will enable the various smaller modules as submodules, and more exposed configuration that can be set on a per-user or per-system basis. The latter point could help us modularly separate the modules out into their own repository, though I don't really know if I want to fragment my dotfiles like that.

Frontear commented 1 month ago

This issue is gonna remain hanging the way it is. Suffice it to say I've accomplished quite a lot, and I'm very proud of where I've come.