<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
On 2017-11-13 08:30 AM, Michael Orlitzky wrote:<br>
> The thing you want is called a package manager.<br>
<br>
Evan, have you considered using Nix? It's a package manager that
sits on top of the OS, and works on Linux and Mac OS. My Haskell
development has been much happier since I switched to using Nix.<br>
<br>
Pros of Nix versus using cabal sandboxes:<br>
<br>
1. Nix shares built libraries between projects, so doesn't chew up
gobs of disk space for each project<br>
2. You don't have to build huge numbers of libraries from source for
each project, due to sharing. In fact, due to Nix's binary caching,
you rarely have to build libraries from source at all.<br>
<br>
Cons:<br>
<br>
1. If you want to use a newer version of a Hackage library than the
one in in Nix, it's more work (although the packages track Hackage
fairly closely).<br>
2. Occasionally the version in Nix is broken. <br>
</body>
</html>