When comparing Nix os vs Pop!_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 4th while Pop!_OS is ranked 14th. The most important reason people chose Nix os is:
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.
Ranked in these QuestionsQuestion Ranking
Pros
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 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 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.
Pro Pop! makes GNOME look really good
If you're a fan of flat desktop interfaces reminiscent of Material design on Android, you'll like the theme that comes as a default in Pop! OS. The desktop and title bars all use a bright turquoise theme that makes the interface feel happy and borderline retro-chic. I found it to be like something you'd find printed on a ringer t-shirt.
Pro User-friendly installer
The visually appealing and easy to use installer makes dual booting as easy as it can be.
Pro Nice gnome theme dy default
Has nice gnome theme looks really good.
Pro Ready to play games, out of the box
If you still miss how easy it was to just click-install and play games in Windows, Pop! will give you that similar expectation.
Pro A separate NVIDIA version
Most linux distros seem to hate Nvidia's graphics cards e.g. Fedora and OpenSUSE. System76 have decided to be kind. They have decided to form a good relationship with Nvidia fans and Nvidia itself. By creating a separate installation media that is dedicated for providing support to Nvidia's graphics cards. Even going as far as putting Nvidia's driver updates on Pop!_Shop for users to easily access and install.
Pro Optimized for modern hardware
Whereas normally, to use a brand new computer with a Linux OS, you would typically try to use unstable and sometimes buggy drivers - or struggle without hardware support until a stable release comes along.
Pro Made by a hardware seller
System76 is a hardware company. It configures machines to ship with Linux pre-installed. This means its entire business model centers around delivering a quality desktop Linux experience.
As a result, the company pours more attention onto the desktop. It can fix visual issues and may be able to provide a smoother overall experience than you would have installing a different version of Linux on your machine yourself. Providing Pop!_OS also empowers System76 to make certain fixes for users directly rather than having to coordinate with Canonical or the broader Ubuntu community.
Cons
Con The configuration language is hard to figure out
For good reason. It's a purely functional language. However not even close to bash.
Con 64-bit only
Some older PCs still have 32 Bit processors. This limitation will be a major con for those who use an older PC since they will not be able to install, run it in a VM or live media