• 0 Posts
  • 3 Comments
Joined 1 year ago
cake
Cake day: July 21st, 2023

help-circle


  • I think nixos is still niche, but seems to be gaining momentum. It has some unique features:

    • Every package has its own dependencies, so you can install a 7 year old firefox alongside the latest, and have no interference.
    • Packages with dependencies in common still share them (for space savings).
    • Abandons the HFS, but can still fake it for apps that need it.
    • Can make dev environments that are exactly reproducible across machines, and only exist within a specific shell session. So you can have a project that relies on an out of date version of a compiler, and another that uses the latest, and run both at the same time.
    • Make your own packages that other people can install using a git repo address.
    • The package language can also describe a machine’s configuration; systemd services, default packages, user accounts, etc.
    • You can build and remotely deploy a machine config in one line.
    • You can cross compile a machine config for another cpu architecture, like ARM.
    • OS upgrades are atomic, and reversible. If it doesn’t work out, you can go back to the previous config.
    • No reason to ever reinstall. Recently upgraded a machine that had sat in a closet for 5 years to the newest release. Flawless upgrade.
    • Nixos boasts more packages than any other distro, over 100,000.

    There are certainly downsides - poor docs, confusing core language. Instructions for installing something on say debian will not work on nixos. I do think this style of package management is the future, if perhaps not this specific implementation. It can be a pain but its also super solid.