I tried NixOS and had a very different experience. It is still a very new project and I encountered some very strange behavior which might be bugs or the result of me not understanding fully what is going on. I think I understand the premise quite well, having learned Haskell to an intermediate level, but in the end things didn't really work as expected.
It would have required a significant time effort from me to understand what is going on and get everything set up the way I want. I was just not willing to put that in at the time. I've gone back to Ubuntu for now.
I am doing more and more Haskell development so I'll take another run at it or, at least, set up nixpkgs on Ubuntu but I will probably give the project some time to mature.