Cardano and Nix Package manager


I am new to Haskell and Nix. Can someone explain where Nix seats and what role it plays ? I can’t get my head around it.

I managed to compile the node CLI using Nix but I still can’t fully understand what is going on ?



Main work by building cardano-sl will be done by stack.
Stack is a powerful tool for developing and management of Haskell projects.
nix is a package manager, which could be integrated in stack. For instance NisOS is a Linux distribution based on nix.

See also Nix integration for stack.


@p-alik I am using to build cardano-sl. It complete the build after 30 mins but I don’t know where its creating the assemblies. where does Stack spit out those assemblies ?


They are in .stack-work directories.

$ find . -maxdepth 2 -name ".stack-work" 

For instance node/.stack-work/dist/x86_64-linux-nix/Cabal- is the part of cardano-node-simple in my environment.


@p-alik thanks very much. I found those assemblies. It is starting to make sense now.