[Freebsd-haskell] What's the point of the cabal freebsd ports?
Gabor PALI
pgj at FreeBSD.org
Sun Mar 28 12:06:15 EDT 2010
Hello Tim,
You may find an answer to your question in a recent blog entry (that I
have posted earlier to this list [1]).
For a longer (and more FreeBSD-oriented) explanation:
On 03/28/10 16:30, Tim Matthews wrote:
> Some of the cabal ports have there own freebsd ports but not many and
> the ones that are there are usually old anyway.
Yes, it is a known problem, but I am working on a new framework that
will make porting and updating hackages trivial, and it is planned to be
committed in a week (after the huge update commits). I am also
mentoring new FreeBSD ports commiter who is actually dedicated to
Haskell ports.
Well, I do not see your PRs... :P
At the moment 5% of all hackages is ported and 32% of them is outdated
(more or less). And count a ports freeze in :D
> Luckily the cabal packages on hackage work just fine and I was
> installing manually [..]
Great! Yesterday I was not so lucky when I wanted to install gitit via
cabal-install (and I needed to patch strict-concurreny-0.2.3 and
SMTPClient-1.0.1 a bit to make the things work).
> because I was assuming that there was some reason why cabal-install
> could not be used on freebsd. Eventually I realized that this was not
> true and installing the packages that have lots of dependencies
> actually became more worthwhile as it was very tedious before.
Of course, cabal-install can be used on FreeBSD without any problems (if
one does not count the problems of the hackages themselves...).
> I was then using cabal with the exception of choosing the port
> versions if they existed as if there would be some advantage in doing
> so. It wasn't long before I ran into a port that didn't build (maybe
> because it was old) so I tried letting cabal just pull the later one
> from hackage.
Some people might prefer using binary packages since they do not have
enough resources to (re)compile everything like when using
cabal-install. Others might prefer the possibility to be able to remove
these packages as well. And a few ones prefer when everything just
works out-of-the-box (i.e. well-tested), without further hacking.
> This built just fine. I shall probably remove the other freebsd
> haskell ports from my system and replace with updated hackage ones.
You are free to do it, no hard feelings :)
> What's the point of all this? I think if freebsd only had ports for
> the basic stuff like haskell platform and other compilers then it
> could potentially make it easier for the devs/testers to finally get
> the updated ghc 6.12.1 version in the main tree.
Your proposal sounds reasonable. My plans regarding addressing these
problems are as follows:
- Introduce a new framework for hackage ports (enables faster updating).
- Introduce an automatic hackage to port converter using the new
framework (enables faster porting).
- Add a port for Haskell Platform that conflicts with lang/ghc and all
hs-* ports, so everybody may use cabal-install instead of FreeBSD
ports. Yay!
- Update lang/ghc to GHC 6.12.x, if all the (sup)ported hackages build
with it correctly.
- Introduce a lang/ghc-devel port for upcoming (but not yet completely
supported) GHC releases, so developers and testers may work with it.
> Sorry if this sounds harsh but it seems like the current setup is
> stale, messy and inconsistent which could be trimmed down, maintained
> + cabal is a package that really does need to be in the ports but
> currently isn't so.
Thank you for your comments.
Cheers,
:g
[1] http://www.haskell.org/pipermail/freebsd-haskell/2010-March/000172.html
More information about the FreeBSD-haskell
mailing list