NixOS appreciation post

albert@lemmy.sysctl.io to nixos@lemmy.ml – 10 points –

So after being a long-time Fedora/RHEL/CentOS/Rocky/etc user, I finally decided to give NixOS a try after the recent RHEL news.

And BOY and I blown away. You can do so much more than I thought possible with automation on NixOS. It's incredible!

Since I"m so new, I do have a question for you all: What's your go-to resource for learning Nix/NixOS?

Thanks!

10

Welcome! I hope you enjoy NixOS =)

Ah yes, the eternal question, where to learn. I'll just link you to a comment I wrote a couple days ago: https://discuss.tchncs.de/comment/254645

Thank you! A similar question: Should I just go straight to learning Flakes?
I'm going to pour over your configs, thanks for the links!

I didn't stay long with the traditional setup since Flakes are a lot better imo. Personally I'd recommend it, especially to replace channels in the traditional NixOS setup which are not designed well since they break reproducibility.

Also, if you do want to look through my configurations, I just added a small readme to my repository, it's under the about tab. Large configurations like this can be intimidating from my experience starting out so I hope it helps a bit :^)

I think Flakes are quite useful and, although they might be somewhat challenging to wrap your head around, isn't really all too hard to actually set up once you have your configuration.nix and hardware-configuration.nix. Here's the video tutorial that got me started on my Flakes journey, and here's a really good set of dotfiles to use as an example for when you want to start modularising your configurations. So to answer your question, I think you should, yes.

Oh its been a week. I'm neck deep in flakes and don't want to go back :) NUR, Sops-nix, both stable and unstable packages (unstable gnome fixes an issue im having), lanzaboote for secure boot, home manager and my dotfiles enabled in my flakes.nix! Its been a wonderful learning process.

Oh, how's Lanzaboote? I've wanted to try it but I heard somewhere that it might not be suitable for a ZFS system.

No complaints. Easier setup than I initially thought! I don't use ZFS though. Just plain ol ext4 :)

Might give that a try later myself then. I'm planning on setting up impermanence later, so might as well risk doing this too! I think I just need to sign the ZFS kernel module to get secure boot working.

I think that despite the fact that they're not officially stable, flakes are not going away. So yes it does make sense to learn flakes, but there's nothing wrong with learning it along the classic way, they have a lot in common.