• 0 Posts
  • 25 Comments
Joined 1 year ago
cake
Cake day: June 12th, 2023

help-circle












  • Home manager is the way to do it though.

    The main configuration handles configuration of the system, home manager project was created to bring similar functionality for the user home directory. That’s where the name comes from.

    Home manager also works great when using Nix on other systems to manage for files, for example on OS X.


  • Yeah, you can if you plan well enough (typically. What I’m trying to illustrate is that this works by taking a snapshot of the disk in time. It’s like keeping a working copy of your system on your disk to be able to revert to.

    While with NixOS you work with a “recipe” how your system is supposed to be configured. It is much lighter. It is declarative, you change the recipe and get what you described, you change configuration and all packages which you did not mention and are not used by anything are gone. If you update your system you can use the same configuration on it

    The thing is that using can still get BTRFS or ZFS and use it to have snapshots too (for example your home directory)


  • BTRFS and ZFS filesystems offer lightweight snapshots. So you can save the state of the filesystem and restore it. It is often integrated with the package manager and a snapshot is involved before you make change.

    NixOS works differently. You have a configuration file, and each time you make change to it NixOS rebuilds itself to its specification from scratch (you might assume it would be a lengthy process, but because of caching only things that are rebuilt are things that you are changing).

    This means that things like for example squeezing from KDE to Gnome or X11 to Wayland aren’t scary to try and you can easily revert things back, your home directory won’t be touched.

    Also those things aren’t exclusive you can use BTRFS and ZFS on NixOS to and enjoy their benefits.






  • It looks like solutions like these miss the whole point of what Nix is trying to do. Nix comes with the belief: “Unix has some fundamental issues, because it was designed in specific way. If we store things differently it works really well, and we even get those cool properties for free”.

    The authors of those projects instead of thinking “this looks interesting, and it is a paradigm shift but it might be worth to to try feel like Linux noob for some time and start thinking a bit differently how the file system is structured to see if this change is really worth it”

    Instead it is: “I don’t need to be PhD in Computer Science (whatever that means), here is how I can force this Nix feature or two on traditional Linux, with ansible, bubble gum and some duct tape and make it immutable-ish, which fails sometimes but, hey, it has the same feature on paper.”