RFC: include a cabal-install executable in future GHC releases

Austin Seipp austin at well-typed.com
Mon Jan 27 00:39:32 UTC 2014


My input is this: I think a lot of confusion stems from some
documentation that just needs to be cleared up.

I think that just cleaning up the pages so that:

 * http://www.haskell.org/cabal has binaries for Tier 1 platforms: OS
X, Windows, FreeBSD i386/amd64, Linux i386/amd64. IMO, there should be
a clear 'Download pre-built binaries' on the immediate front page that
cannot be missed.

 * http://www.haskell.org/ghc/download still points to the platform
for most users (i.e. the platform is more long-term stable/supported,)
but also mentions cabal install binaries. They can be linked to
directly from the subsection for each platform: "Download GHC 7.8.1
Mac OS X x86-64 - also download <latest cabal-install OS X build> from

I personally think this would go a significant way to making it easier
for people to bootstrap environments. (IMO, both the GHC and Cabal
homepage could both do with a visual makeover as well, to make this
all the more apparent and easily accessible.)

As for cabal install binaries: I can easily provide dedicated hardware
(thanks to Rackspace) for Windows, FreeBSD or Linux build machines. I
also have a dedicated OS X machine in Oxford (thanks to Duncan) that
can be used to build binaries for OS X as well. So I can absolutely
provide resources for Cabal developers to build them if they'd like.
At least for T1 platforms.

As for shipping with GHC itself: this is technically possible, but
slightly annoying to implement, and it also makes the build processes
for a release slightly more annoying (which is mostly my problem.) But
it is all doable. However, keep in mind I *do not* maintain the binary
distributions for everything, nor do Cabal devs have access to all
hardware - so all people making upstream releases for their platforms
(i.e. Solaris, PowerPC, ARM/Linux, etc) must also package cabal
themselves. But perhaps that's not a huge deal.

I guess my vote on this is ultimately neutral. I think it can be fixed
by simply making the downloads more clear. Alternatively we can
package cabal-install. I'll leave the decision up to users at large
and their votes.

On Sun, Jan 26, 2014 at 7:08 AM, Daniil Frumin <difrumin at gmail.com> wrote:
> cabal-install doesn't even have to be distributed in one tar.gz with
> GHC, just merely mentioning cabal-install binaries on
> http://www.haskell.org/ghc/download will surely help (assuming we get
> to actually have the cabal-install binaries :)
> On Sat, Jan 25, 2014 at 10:48 PM, Gábor Lehel <glaebhoerl at gmail.com> wrote:
>> +1 to this proposal. The benefits are obvious and practical: when installing
>> a new GHC, it will save users the tedium of having to figure out how to
>> build a cabal-install and then do so before they can install the packages
>> they actually want. The drawbacks are indefinite and amorphous: the download
>> is a little bit larger. So what? It further blurs the line between GHC and
>> the Platform. Who does this harm? People who already have a cabal-install
>> will now have a second one. What discomfort will this cause them?
>> On Mon, Jan 20, 2014 at 1:02 AM, Carter Schonwald
>> <carter.schonwald at gmail.com> wrote:
>>> Hey everyone,
>>> I'd like to propose that GHC releases 7.8.1 onwards include a
>>> cabal-install (aka cabal) executable, but not include the library deps of
>>> cabal-install that aren't already distributed with ghc.(unless ghc should
>>> have those deps baked in, which theres very very good reasons not to do.).
>>> currently if someone wants just a basic haskell install of the freshest
>>> ghc  they have to install a ghc bindist, then do a boostrap build of
>>> cabal-install by hand (if they want to actually get anything done :) ).
>>> This is not a human friendly situation for folks who are new to haskell
>>> tooling, but want to try out haskell dev on a server style vm or the like!
>>> point being: It'd be great for haskell usability (and egads amounts of
>>> config time, even by seasoned users) the ghc bindists / installers included
>>> a cabal-install binary
>>> thoughts?
>>> -Carter
>>> _______________________________________________
>>> Glasgow-haskell-users mailing list
>>> Glasgow-haskell-users at haskell.org
>>> http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
>> _______________________________________________
>> Glasgow-haskell-users mailing list
>> Glasgow-haskell-users at haskell.org
>> http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
> --
> Sincerely yours,
> -- Daniil
> _______________________________________________
> Glasgow-haskell-users mailing list
> Glasgow-haskell-users at haskell.org
> http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Austin Seipp, Haskell Consultant
Well-Typed LLP, http://www.well-typed.com/

More information about the Libraries mailing list