I’m currently running Arch and it’s great, but I’m noticing I’m not staying on the ball in regards to updates. I’ve been reading a bit about Nix and NixOS and thinking of trying it as my daily driver. I’ve got a Lenovo x1 xtreme laptop, I don’t do much gaming (except OSRS), use firefox, jetbrains stuff, bitwarden, remmina, obsidian, and docker.
Is anyone running NixOS as their daily? How are you liking it and are there any pitfalls / stuff you wish you knew before?
Daily driving it myself but have yet to really use flakes. What’s the benefit of them?
They’re more reproducible, they make dependency management easier, the commands you use with them are easier to use and more readable, and it’s easier to have multiple packages/systems/home-manager profiles in a single git repo. They also make version management easier
I’ve heard of the advantages of using them but still not entirely sure what they’re actually used for? What situation would call for using a flake?
For distributing software (nixpkgs is a flake and many projects have flakes), replacing channels (again, nixpkgs is a flake) or managing configs (check out my repo)
So the only use of flakes is for packaging software? Haven’t started packaging software for NixOS yet only managing my PC
No, it’s also for your system to use locked versions of deps, so if you git clone you get a
flakes.lock
as well with all the versions. When you install from a git repo you get the same system againSo it’s a way to ensure you always get the exact same version of dependencies?