[arch-haskell] cabal2arch and clutter

Xyne xyne at archlinux.ca
Sat Oct 12 07:35:50 UTC 2013

> > Additionally, please consider changing the cabal2arch help message as
> > it does not describe what cabal2arch actually does:
> > 
> > cabal2pkg: [-h|--help] [directory|url]
> > Generate PKGBUILD to stdout for .cabal file in <directory> or at <url>
> I don't understand this. The above message *is* what cabal2arch does.
> It generates PKGBUILDs to stdout, for the .cabal file given in
> <directory> or <url>

cabal2arch 0.6-1 does not generate anything to STDOUT. It creates a
directory and writes the PKGBUILD and install file to that directory,
along with the aforementioned "clutter" outside of that directory. The
help text should therefore not include "to stdout" in my opinion.

I am unable to test cabal2arch 0.6.1-1 to see if this has changed
because I simply cannot build it. It seems that there are several
haskell packages, including packages in extra, which do not contain
correct and complete depends arrays in their PKGBUILDs. When trying to
build cabal2arch, I am unable to get passed building haskell-csv which
is pulled in as a dependency:

==> Making package: haskell-csv 0.1.1-2 x86_64 (Tue Jan 19 09:39:22 CET
2010) ==> Checking Runtime Dependencies...
==> Checking Buildtime Dependencies...
==> Retrieving Sources...
  -> Found csv-0.1.1.tar.gz in build dir
==> Validating source files with md5sums...
    csv-0.1.1.tar.gz ... Passed
==> Extracting Sources...
  -> Extracting csv-0.1.1.tar.gz with bsdtar
==> Removing existing pkg/ directory...
==> Entering fakeroot environment...
==> Starting build()...

    Warning: In the use of `defaultUserHooks'
             (imported from Distribution.Simple):
             Deprecated: "Use simpleUserHooks or autoconfUserHooks,
unless you need Cabal-1.2 compatibility in which case you must stick
with defaultUserHooks" Warning: defaultUserHooks in Setup script is
deprecated. Configuring csv-0.1.1...
Setup: At least the following dependencies are missing:
parsec -any
==> ERROR: Build Failed.

I have tried to install haskell-parsec from [extra] but this in turn
complained about missing (haskell-)mtl, which I then also installed.
After this I tried to build haskell-csv again but that failed with the
same error as above. At that point I gave up as I didn't have the time
to fiddle with a series of broken PKGBUILDs or try to figure out what
the exact problem is. I realize that it may be something painfully
obvious and simple, but I am not familiar with building haskell
packages yet and simply did not have the time to investigate further.

More information about the arch-haskell mailing list