I can confirm, that having ghc (1 GB+) just to build ats package is overkill.
I am not speaking of cross compiling ghc to another architecture/libc is pain as well, as it requires big amounts of RAM and 2+ hours of building for stage1/stage2 compilers.... Then, you need to build cabal and only then you will be able to build atspkg...
Having to have/build python is not a pleasure as well, but at least, it is not required to bootstrap itself :)
Ideally, ATS package manager should be written in ATS :D (as in the worst case, it will require just a C compiler to be built)
and staloading appropriate modules like this:
#define LIBS_targetloc "../libs" (* search path for external libs *)
it can be not ideal for the case when "library A depends on C 1.0 and on B 1.0 and at the same time B depends on C 1.1", as $REPO/libs will contain 1 version. At the same time, for handling such case you need to at least properly handle symbol prefixes with ATS_PACKAGE and ATS_EXTERN_PREFIX, so I am not thinking about such case yet....
Ah yes, I am using NixOS and nix package manager to handle C/C++ libraries dependencies, so what I usually need to build a project:
$ nix-shell shell.nix
nix-shell $ make
I should try to use Conan, though, to check how it handles the dependencies and such...