About to get started with NixOS

3 years ago by hallettj to c/operating_systems

I've been thinking about trying NixOS for a while. I think the concepts are elegant, and I have been finding Nix flakes to be very nice for software development. I'm about to get a new machine so I'm ready to take the plunge. Any advice before I dive in?

I'd like to set up Gnome with some extensions. One of the things I especially want to learn is how to set up graphics drivers, Vulkan, and Lutris.

For anyone who hasn't heard of it, Nix is a "declarative" package manager. Each package is stored with a hash that encodes its exact source, build script, dependencies, etc. You can have packages installed with mutually-incompatible library dependencies, and Nix makes it just work. For purposes of setting up per-project dependencies Nix does what Docker does, but faster, with more cache hits, and without emulation / containerization. If you want to deploy Docker images, Nix can build images that are more efficient than what you get from dockerfiles.

You can use Nix as an additional package layer in Linux, MacOS, or Windows with WSL. Think of it as an alternative to Homebrew.

NixOS is a Linux distro that uses Nix as its primary package manager, and uses Nix principles to manage configuration. Instead of running commands to install things, and then later forgetting what you installed or why, packages are listed in config files. The system installs and links packages as necessary. Anything you remove from your config is unlinked. When you want to reclaim space you can garbage-collect unused packages.

Demonstrable_Legume 3 points 3 years ago

I'm a huge fan of nixos. I have my whole home lab using it now. I learned everything I know from reading other's configurations. I also use the nix search site for finding configuration options.

Here is my config and others I've used as inspiration:

path: 0 30690, hotness: undefined, score: 3, children: 2
ericjmorey 3 points 3 years ago

I'm about to try NixOS for the first time on a dedicated server to host a Lemmy instance. I can use all the help I can get.

path: 0 30690 36957, hotness: undefined, score: 3, children: 1
Demonstrable_Legume 2 points 3 years ago path: 0 30690 36957 36958, hotness: undefined, score: 2, children: 0
Animortis 2 points 3 years ago

I am not a coder, so I frequently worked with Bing AI and ChatGPT to get my configuration.nix and home.nix files where I wanted them.

path: 0 28383, hotness: undefined, score: 2, children: 0
harky 1 point 3 years ago

I've been looking into immutable OS and Nix as well for a little while now. I haven't reached a tipping point where I want it enough to spend the time on it.

It is very exciting to see development of distros go in that direction.

Good luck! Let us know how it goes

path: 0 56003, hotness: undefined, score: 1, children: 0
cavemeat 1 point 3 years ago

Huh, it sounds like a unique concept. My best wishes, I've been comfortable with linux mint as of late, but I like looking at new stuff.

path: 0 56008, hotness: undefined, score: 1, children: 0
pkulak 0 points 3 years ago

Best of luck! I've started and stopped on Nix a couple times. It always ends up being too much work. At some point I need my OS to get out of my way.

path: 0 29854, hotness: undefined, score: 0, children: 2
bolapara 1 point 3 years ago

Oh that is funny because for me I guess I've hit the tipping point where now my NixOS setup is the one that "gets out of my way". I sometimes play around with new releases of other distros but always go back to my NixOS setup because I can just restore my nix config and it's back exactly how it was before.

path: 0 29854 29855, hotness: undefined, score: 1, children: 1
pkulak 2 points 3 years ago

Yeah, totally fair. I guess my comment was a bit back handed. I’m 100% on board with immutable, reproducible OSes.

path: 0 29854 29855 29856, hotness: undefined, score: 2, children: 0
operating_systems
operating_systems

@beehaw.org

login for more options
344
48
2

All things operating system related, from Windows to Mac to Linux distros and the more obscure.

Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

go to feed...