When comparing Void Linux vs Nix os , the Slant community recommends Nix os for most people. In the question“What are the best Linux distributions for a backend developer?” Nix os is ranked 9th while Void Linux is ranked 15th. The most important reason people chose Nix os is:
Since NixOS stores all its packages in isolation from each other in `/nix/store` and because of the declarative configuration model, upgrading NoxOS systems is extremely reliable. Furthermore, it gives you the ability to roll back upgrades.
Ranked in these QuestionsQuestion Ranking
Pro Runit init system
An init system with the "do one thing and do it right" mentality. Void Linux does not support systemd.
Pro xbps (X Binary Package System)
A brand new package manager that is fast, full-featured, and tailored specifically for Void Linux.
Pro Rolling release
Pro Musl image available
Musl libc is lighter and faster than bloated glibc. Musl has been argued to be more secure overall than glibc also.
Pro Runit is fast and easy to configure
Runit init system is incredibly fast to boot and very simple to use.
Pro BSD-like improvements with Linux
Full support for LibreSSL, an OpenSSL fork focused on maximizing security. The xbps-src package builder works in a similar manner to BSD's ports collection.
Pro Upgrading the system is extremely reliable
Since NixOS stores all its packages in isolation from each other in
/nix/store and because of the declarative configuration model, upgrading NoxOS systems is extremely reliable. Furthermore, it gives you the ability to roll back upgrades.
Pro Extremely reproducible state of installation
Every package in your system is generated from a configuration file. This makes it very easy to reproduce that environment. Just copy the config file into a new machine and it's done.
Pro Versatile snapshot system
You can use and test snapshots without rebooting. Booting into snapshots or test configurations is possible without risking the system's stability.
Pro Great for Haskell development
It has all of hackage in it's package manager (which is confusingly named "nix" as well) due to being based around hashing and allowing you to compile in a sort of virtual machine (really just changing the PATH variable temporarily) it solves many of the versioning problems that you commonly have with cabal. Here's a tutorial (there's many others as well) http://www.cse.chalmers.se/~bernardy/nix.html.
Also I should note that you can use the package manager a la carte on Mac and most any linux distro.
Pro Has docker like system built in
Pro Allows parallel configurations for multiple projects
As everything is isolated, you can have on the same machine multiple configurations to meet project requirements that would be mutually exclusive on other OSes.
Con Small amount of packages
Con Not suitable for those new to Linux
Documentation is scarce, NTFS partitions aren't automatically mounted, etc.
Con Poor video performance with AMD gfx cards
While you can easily get the latest VLC thanks to Void being a rolling distro, video performance is abysmal, at least for those with AMD cards.
Con Not popular
Void Linux is not a popular Linux distro. So, if you run into a problem then it's likely you won't find any fix except from the maintainers.
Con The configuration language is hard to figure out
For good reason. It's a purely functional language. However not even close to bash.