GNU bug report logs - #48999
[PATCH] import: hackage: Accept local source for package.

Previous Next

Package: guix-patches;

Reported by: Xinglu Chen <public <at> yoctocell.xyz>

Date: Sun, 13 Jun 2021 09:47:02 UTC

Severity: normal

Tags: patch

Full log


View this message in rfc822 format

From: Ludovic Courtès <ludo <at> gnu.org>
To: Xinglu Chen <public <at> yoctocell.xyz>
Cc: 48999 <at> debbugs.gnu.org
Subject: [bug#48999] [PATCH] import: hackage: Accept local source for package.
Date: Tue, 29 Jun 2021 11:44:40 +0200
Hi,

Xinglu Chen <public <at> yoctocell.xyz> skribis:

> When developing a Haskell package it is often useful to have a Guix package
> definition for that package, previously one would have to write that package
> definition by hand, and if the .cabal file changed one would manually update
> the Guix package definition.
>
> This commit allows one to specify a custom source for their package, meaning
> that one could programatically generate a Guix package definition for their
> local Haskell package.  If the .cabal file changes, the generated package
> definition will also change accordingly.  One could for instance write the
> following in a guix.scm file:
>
>   (define-values (ghc-haskeme deps)
>     (call-with-input-file "haskeme.cabal"
>       (lambda (port)
>         (hackage->guix-package
>          "haskeme"
>          #:port port
>          #:source (local-file "." "haskeme-checkout"
>                               #:recursive? #t
>                               #:select? hg-predicate)))))
>
>   ghc-haskeme
>
> Invoking ‘guix build -f guix.scm’ would then always build an up-to-date
> version of the package.
>
> * guix/import/hackage.scm (hackage-module->sexp): Add optional keyword
> argument ‘source’
> (hackage->guix-package): Likewise.
> * tests/hackage.scm (eval-test-with-cabal): Likewise.
> ("hackage->guix-package local source"): New test.

Looks like a nice improvement.

What I don’t get is that this functionality doesn’t seem to be available
from the CLI, which the patch doesn’t change.  Or am I missing
something?

Thanks,
Ludo’.




This bug report was last modified 3 years and 345 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.