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: 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?

@dualhammers @maxdeviant the idea of nixOS is that with your configuration, you can basically just copy that over to a fresh install, pull the packages and you end up with a "mostly" identical computer as the one you had before.

@neauoire @maxdeviant Hmmm! OK, that makes sense. I can see how that'd be super useful in certain situations

@dualhammers @neauoire Allow me to explain my reasoning for liking NixOS a bit:

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.

@dualhammers @neauoire I used Arch for a while, but the thing that ultimately turned me off was how easy it was for me to inadvertently break something.

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.

· · Web · 1 · 0 · 0

@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.

@dualhammers @neauoire So to answer your original question, yes, it is more complicated than just using something like, say, Ubuntu.

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.

@dualhammers @neauoire Additionally, NixOS actually makes managing my dotfiles *easier* than before through the use of Home Manager (github.com/rycee/home-manager).

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.

@maxdeviant @dualhammers I jumped into nixOS without that linux past, and I think that I will eventually return to it sometimes later :)

@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.

@neauoire @maxdeviant I can see the benefits of it. Something to tinker with once it sits on top of a broader Linux knowledge foundation.

Sign in to participate in the conversation

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.