Design choice: instead of specifying ghc version in nix file, pin version of nixpkgs that has the desired version by default.
In my opinion, a better way is to pick a Nix channel that has whatever GHC you want in the default haskellPackages, since it will come with a set of packages that will work well together and not require that you build so much yourself. In this case, nixos-18.09 has GHC 8.4.3 as the default, so we could use it instead by running:
Q: how to see which packages belong to the pinned version of nixpkgs?
If you want to see which haskell packages are pinned for that commit, you can go to hackage-packages.nix for that “rev”. So for the JSON above, that file would be this link. Then you can either CTRL+F there or download that file and search locally to see which version of a given dependency is pinned.
https://cah6.github.io/technology/nix-haskell-1/
Design choice: instead of specifying ghc version in nix file, pin version of nixpkgs that has the desired version by default.
Q: how to see which packages belong to the pinned version of nixpkgs?