Just an FYI for anyone who is following my NixOS journey, I'm trying to keep all of my system configuration in the open.
You can find my dotfiles on GitHub: https://github.com/maxdeviant/dotfiles
Maybe they'll spark a desire within you to start on your own NixOS journey :wink:
@maxdeviant This seems complicated. What benefit does this way of doing things have compared to other Linux systems?
I LOVE Linux. I first started playing around with it when I was like 9 or 10. I distro hopped a lot and was always searching for the "perfect" distro.
In 2015 I finally decided to try out Arch Linux so that I could set up my system the way I wanted to. That's when my dotfiles repo dates back to.
After having spent so much time configuring my system and "ricing" it out to the way I wanted it, it was a real anxiety that I would mess it up and have to start from (mostly) scratch.
I also have OCD tendencies when it comes to my Linux installs. I know that whenever I remove a program it's probably leaving cruft somewhere on the system.
@dualhammers @neauoire The combination of these factors led to a sort of paralysis where I would be too afraid to make changes to my system once it got to a certain point, which ultimately made it not very useful as my daily driver.
Recently I installed Linux again, this time going with elementary OS because it has a nice experience right out of the box. But while I like elementary, I still missed the days of my Arch installation, especially bspwm.
@dualhammers @neauoire So I finally decided to pull the trigger. NixOS has been on my radar for a while, specifically because it allows you to declaratively configure your system and be able to restore the same state from that configuration file.
This ability helps me overcome that paralysis that I experience with Arch and other distros, because I know that I can always roll back if I mess something up and that there isn't cruft accumulating in parts of my system as I change my configuration.
You have to learn/be familiar with the Nix language, you may have to do some research or make your own packages in order to install some lesser-known packages.
But for me, I would be managing my dotfiles anyways, so managing my entire system seemed like a logical next step.
Home Manager is a Nix project that allows you to manage your home directory with a `home.nix`, the same way you manage your system with `configuration.nix`.
I'm still learning it and getting used to what should go in `home.nix` and what should go in `configuration.nix`, but it has been a very good experience so far.
@neauoire @dualhammers In a way I think not having much prior experience might be easier, because then you won't be used to normal Linux conventions (like having all your applications stored in `/usr/bin`).
I think that OSes like NixOS and Guix are the future, and I hope that we'll start to see declarative configuration in more mainstream distros like Ubuntu and Fedora. I think it could be a big selling point for people to switch to Linux.
Merveilles is a community project aimed at the establishment of new ways of speaking, seeing and organizing information — A culture that seeks augmentation through the arts of engineering and design. A warm welcome to any like-minded people who feel these ideals resonate with them.