marlowsd:
> If you look at the original Cabal design document[1], you'll see that
> one of the goals of Cabal was to be the glue that lets you convert an
> arbitrary Haskell library into a native package for a variety of systems
> - including MSIs on Windows. Indeed, I must admit when we were
> designing Cabal I thought that native packages would be the most common
> way that people would install Cabal packages, specifically because many
> systems already have a good package manager, and trying to bypass the
> system package manager would be a fundamental mistake. It turned out
> that cabal-install would be a lot more useful than I imagined, but the
> two systems are complementary: native packages are for installing
> globally, and cabal-install is for installing packages in your home
> directory.
>
We also didn't know that Hackage would get so big, so quickly. So
there's three levels of packages now:
1. absolutely vital: HP (now on every system)
2. native packaging of useful Haskell apps and libs (many on Debian, Arch, Gentoo, few elsewhere)
3. cabal-install: everything else, works everywhere.
And it looks like many distros are learning towards just providing 1.
natively. Those with more automation (Debian, Arch) do 2. as well,
though it is less useful than we thought now that cabal-install is
relatively stable.
A new trend are tools like 'bauerbill' on Arch, which has a --hackage
flag, that converts hackage to native packages on the fly. That's like
teaching apt to grok hackage.
It's interesting how its all sorting out.
-- Don