You are not logged in.

#1 2010-10-06 17:29:15

brisbin33
Member
From: boston, ma
Registered: 2008-07-24
Posts: 1,799
Website

cabal install vs pacman for managing haskell-* packages.

No it's not a speed comparison or anything, I'm just looking for some insight...

I recently went to install haskell-yesod from the AUR.  My helper pulled in about ten thousand haskell-* deps (as it often does for exotic haskell packages). Eventually, it failed when it installed haskell-text version 0.9.0 but the next package to build had an explicit ghc dep of text < 0.9 in its cabal file.

anywho, I decided to try cabal and use `cabal install yesod` to see what happens. This is usually the recommended way when you view online haskell docs and it looked really easy. Basically, it was awesome.

It did a local install entirely in ~/.cabal; it figured out all the deps (there weren't many actually) and gave me a working ~/.cabal/bin/yesod in minutes.

I'm interested in knowing some general experience type stuff, but here some specific questions too:

  * How many haskell-archers prefer leaving pacman out of haskell packages and using cabal directly?

  * I currently have a ton of haskell-* packages installed (plus xmonad and xmonad-contrib), would it make sense to uninstall all of these and reinstall them through cabal?

  * Can cabal install from darcs development snapshots?

  * Can I use cabal to install ghc itself? If not, what happens when arch upgrades ghc, do I stand to get much breakage?

Thanks for any comments.

Offline

#2 2010-11-14 09:51:08

orschiro
Member
Registered: 2009-06-04
Posts: 2,136
Website

Re: cabal install vs pacman for managing haskell-* packages.

I'm interested in this question too.

I just discovered bluetile a fork of xmonad that integrates very well in Gnome and there are two ways of installing it. Once via cabal as described in the wiki and once as a package in AUR.

Which one is recommended to use?

Regards

Offline

#3 2010-11-14 12:33:40

Mr.Elendig
#archlinux@freenode channel op
From: The intertubes
Registered: 2004-11-07
Posts: 4,097

Re: cabal install vs pacman for managing haskell-* packages.

Mixing cabal and pacman just leads to pain. Seen _lots_ of errors that are due to people having old/broken cabal packages. So I would recomend to wrap everything in makepkg/pacman.

Everytime there is a ghc update you have to rebuild all haskell packages as a general rule, no matter how you installed them. (Everything in the official repos will ofcourse the rebuilt by the devs)

Last edited by Mr.Elendig (2010-11-14 12:35:54)


Evil #archlinux@libera.chat channel op and general support dude.
. files on github, Screenshots, Random pics and the rest

Offline

#4 2010-11-14 16:54:50

brisbin33
Member
From: boston, ma
Registered: 2008-07-24
Posts: 1,799
Website

Re: cabal install vs pacman for managing haskell-* packages.

Fair enough Mr.Elendig.

As a follow up, I've in fact been using a mix -- but leaning heavily on cabal and only using pacman for xmonad packages (really only because I want -darcs):

The following are installed via pacman:

  haskell-mtl
  xmonad-darcs
  xmonad-contrib-darcs

And a ton of packages installed by cabal.

So far it's "just worked" *knocks on wood*.  When I find some new module I want/need, installing it via cabal is way easier/faster. I also like that everything's in ~/.cabal, on a single user system this causes no problems and makes it easy to work with.

I don't often upgrade packages installed via cabal (as `cabal upgrade` seems to frown on it), but when I do I will say it's quite a pain.  I don't like that it doesn't remove the old versions but installs the new ones side by side.  There's likely some benefit to this but all I get are a slew of ghc-pkg check errors that I have to fix re: the older versions losing dependencies.

I've put a bash function to do a `cabal uninstall` in my bashrc since there's no way to do it normally (you've got to ghc-pkg unregister and rm the files yourself...) and this is probably my only complaint.  I've also had to write a `cabal uninstall all` function because sometimes my attempt to update results in a full cabal reinstall; though, even that doesn't take much time and I'd have this issue even if I weren't mixing cabal and pacman.

Last edited by brisbin33 (2010-11-15 14:21:10)

Offline

#5 2010-11-14 17:47:40

skottish
Forum Fellow
From: Here
Registered: 2006-06-16
Posts: 7,942

Re: cabal install vs pacman for managing haskell-* packages.

I haven't done much work with cabal, but I've run into the situation with AUR packages as described above many times. Haskell and Arch are a strange mix of the extremes of convenience.

Offline

Board footer

Powered by FluxBB