Hi, please find attached an initial version of an importer for packages from Hackage: http://hackage.haskell.org/ Here a couple of features and limitations: * The information about packages is retrieved from .cabal files. Similarly to Haskell code these files support "layout" style grouping and grouping with braces {}. Currently the importer only supports the former which appears to be the most popular form. * The code handles dependencies with conditionals and tries to comply with the description at https://www.haskell.org/cabal/users-guide/developing-packages.html#configurations However, information about library versions is discarded. * It implies the existence of a haskell-build-system which currently doesn't exist. That's for another free week-end, or somebody interested :-) * Cabal files include dependencies to libraries included with the complier (at least with GHC). For the moment I just filter those out assuming the packages are going to be compiled with GHC. * The generated package name is prefixed with "haskell-" in a similar way to Perl and Python packages. However, the cabal file includes checks for the compiler implementation and the importer handles that and keep the test in the generated package (see eval-impl in the code and the description in the above link). If in the future there is interest in supporting other Haskell compilers, then maybe we should better prefix the packages according to the used compiler ("ghc-" ...). * The argument to the importer may include a version suffix (GUIX style). If no version is included, then it retrieves the latest version. I've tested it with a hadful of packages among which "mtl", "cabal-install" and "HTTP" and appears to be working. Obviously the tests in part 5 were used along the way and will be removed. Before doing that and squashing my local commits I thought I would see the comments here :-) The attached patch is squashed with "git diff master". Regards, Fede