
Xyne wrote:
Don Stewart
wrote: Ah, I remember,
Tue Jul 14 17:01:31 PDT 2009 Adam Vogt
* Makedepends should not duplicate depends array in PKGBUILD This stops yaourt from trying to build dependencies twice when building from AUR.
Duplicated one of Magnus' patches.
Teasing those apart now.
-- Don
Thanks for working on this. A thread was just posted on the Arch forum about this and other issues with Haskell packages in the AUR:
http://bbs.archlinux.org/viewtopic.php?pid=593543
Perhaps you could join the discussion there. If not, I can relay relevant issues.
Personally I prefer mailing lists, so I'll comment on things here. The situation with the depends and makedepends lines being the same is weird at best. The dependency chain already doesn't follow the Arch packaging guidelines and throwing in the duplicates is extra messy. Also, all yaourt users having problems with this setup. The dependencies are listed twice in one PKGBUILD, then all of the other packages that depend on those dependencies also list twice, and so on. yaourt wants to build the same packages over and over again. I'm not saying the cabal2haskell-generated PKGBUILDs aren't wrong, but arguably yaourt's insistence on building packages twice is a bug in yaourt :-) I would highly recommend that all of these packages get put into a group. If the scripts are edited to follow the arch-haskell packaging guidelines and the dependencies all become makedepends, then there's no convenient way to un-install any of these files. It's unclear to me whether all of these packages are compatible with other Haskell compilers, so I'm not sure how to propagate this up all the way to the Arch repos. Maybe a ghc provides=('haskell') line? That's a different deal, but I would like to hear opinions. As Don already pointed out, the more correct behaviour is for libraries to have makedepends=() depends=('its' 'dependencies') And binary-only packages to have makedepends=('its' 'dependencies') depends=() AFAIU there are no guarantees that binary packages compiled by GHC will be compatible with other haskell compilers. I'm not really sure what he would like to achieve with a group and GHC having provides=('haskell'). I feel that the license files should be put in /usr/share/licenses/haskell/$pkgname. I also think that it would be useful to include documentation with these files, maybe somewhere like /usr/share/doc/haskell/$pkgname. Document files are generally in html now, so they take up almost no space. I agree with this, I'd also like to suggest that libraries be collected into one sub-directory under /usr/lib. Maybe do what xmonad-contrib does, it lives in /usr/lib/ghc-6.10.3/site-local/xmonad-contrib-0.8.1. /M -- Magnus Therning (OpenPGP: 0xAB4DFBA4) magnus@therning.org Jabber: magnus@therning.org http://therning.org/magnus identi.ca|twitter: magthe