Hi there, I’ve been a long time Linux user, but I’m looking at moving over my secondary system (laptop) to use NixOS. The intent is to move everything in this direction once I feel comfortable enough with NixOS.
My current use case is a workstation (gnome based) that I use for working in the Kubernetes ecosystem, as well as general computing use. Chrome, vscode, and other various cli tools.
Now I have been reading the documentation, and it feels like there’s many different directions I can go to get started.
What I’m looking for is an experienced users opinion around the following (so I can pick the right direction, and read the appropriate documentation.):
- with regards to installation, do most people use the ISO, or the minimal installation and then layer up super custom? I’m a fan of the sane out of the box settings. And I don’t necessarily need to tweak out everything. I think I ultimately want to stick close to the default installation from the ISO, plus my own settings and tweaks.
- and if using the ISO, is there a way to automate the installation itself? Meaning all of the questions that you traditionally see through the GUI installer. What I suspect is there is a way to pass in a configuration.nix.
- if the path to installation automation is to use the minimal set up, plus a configuration.nix, is there a document somewhere that covers this use case, as well as getting as close as possible to the default ISO installation?
- i’ve seen mentions that people are using home manager. But just for context, I want to try to use nix‘s itself as much as possible.
- i’ve seen a mention of flakes. Is this something I should tackle right from the beginning?
- I suspect I’m gonna have to look at package building, just in case I cannot find what I need. This also leads me to wonder, where are people pulling packages from? And what I mean by that is does the Nix ecosystem traditionally use a lot of third parties, or are they bundled up and more of a central location? That the community considers trustworthy.
I guess if I was to summarize it all, with the intent of ultimately ending up at a solid vanilla laptop workstation, what is the methodology best suited? I figure I’m at a Greenfield type situation as I’m just beginning to learn. All I’m really trying to do is expedite the decision tree as to which way to go. Not necessarily looking for someone to summarize the docs. I’m more than willing to go and read. Although any useful links are appreciated.
I appreciate everyone’s time.