diff options
author | Robert Vollmert <rob@vllmrt.net> | 2019-06-13 21:39:14 +0200 |
---|---|---|
committer | Timothy Sample <samplet@ngyro.com> | 2019-06-13 22:18:52 -0400 |
commit | ca45da9fc9b1eee399ce4344b18cbb129daeca4c (patch) | |
tree | 361e65e3401f9c875ac5aa76ede6c6a5bcdab159 /bootstrap | |
parent | 30825c46298c70028f70da1470eadbadf1e0d858 (diff) | |
download | guix-ca45da9fc9b1eee399ce4344b18cbb129daeca4c.tar.gz |
import: hackage: Handle Hackage revisions.
Hackage packages can have metadata revisions (Cabal file only) that are not reflected in the source archive. The Haskell build system has support for this, but until now the Hackage importer would create a package based on the revised Cabal file which would then build using the old Cabal file. Fixes <https://bugs.gnu.org/35750>. * guix/import/cabal.scm (<cabal-package>): Add 'revision' field. (eval-cabal): Parse 'x-revision:' property. * guix/import/hackage.scm (read-cabal-and-hash): New procedure. (hackage-fetch-and-hash): New procedure. (hackage-fetch): Rewrite using 'hackage-fetch-and-hash'. (hackage-module->sexp): Add 'cabal-hash' argument and use it to populate the '#:cabal-revision' argument. (hackage->guix-package): Use the new '-and-hash' functions to get the hash of the Cabal file and pass it to 'hackage-module->sexp'. * guix/tests/hackage.scm: Test import of Cabal file revision. Signed-off-by: Timothy Sample <samplet@ngyro.com>
Diffstat (limited to 'bootstrap')
0 files changed, 0 insertions, 0 deletions