diff options
author | Federico Beffa <beffa@fbengineering.ch> | 2015-04-26 11:22:29 +0200 |
---|---|---|
committer | Federico Beffa <beffa@fbengineering.ch> | 2015-06-09 09:48:38 +0200 |
commit | a4154748730b28fd98ff30d968c755c37802a49a (patch) | |
tree | a2d2375001ab676cf98172aabb139d05762ba45c /doc | |
parent | 0705f79c6f45108961b901e50f828a978fa0e4e8 (diff) | |
download | gnu-guix-a4154748730b28fd98ff30d968c755c37802a49a.tar gnu-guix-a4154748730b28fd98ff30d968c755c37802a49a.tar.gz |
import: hackage: Refactor parsing code and add new options.
* guix/import/cabal.scm: New file.
* guix/import/hackage.scm: Update to use the new Cabal parsing module.
* tests/hackage.scm: Update tests.
* guix/scripts/import/hackage.scm: Add new '--cabal-environment' and '--stdin'
options.
* doc/guix.texi: ... and document them.
* Makefile.am (MODULES): Add 'guix/import/cabal.scm',
'guix/import/hackage.scm' and 'guix/scripts/import/hackage.scm'.
(SCM_TESTS): Add 'tests/hackage.scm'.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/guix.texi | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index c62e44e341..be7a292f08 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -3754,16 +3754,30 @@ dependencies. Specific command-line options are: @table @code +@item --stdin +@itemx -s +Read a Cabal file from the standard input. @item --no-test-dependencies @itemx -t -Do not include dependencies only required to run the test suite. +Do not include dependencies required by the test suites only. +@item --cabal-environment=@var{alist} +@itemx -e @var{alist} +@var{alist} is a Scheme alist defining the environment in which the +Cabal conditionals are evaluated. The accepted keys are: @code{os}, +@code{arch}, @code{impl} and a string representing the name of a flag. +The value associated with a flag has to be either the symbol +@code{true} or @code{false}. The value associated with other keys +has to conform to the Cabal file format definition. The default value +associated with the keys @code{os}, @code{arch} and @code{impl} is +@samp{linux}, @samp{x86_64} and @samp{ghc} respectively. @end table The command below imports meta-data for the latest version of the -@code{HTTP} Haskell package without including test dependencies: +@code{HTTP} Haskell package without including test dependencies and +specifying the value of the flag @samp{network-uri} as @code{false}: @example -guix import hackage -t HTTP +guix import hackage -t -e "'((\"network-uri\" . false))" HTTP @end example A specific package version may optionally be specified by following the @@ -3772,8 +3786,6 @@ package name by a hyphen and a version number as in the following example: @example guix import hackage mtl-2.1.3.1 @end example - -Currently only indentation structured Cabal files are supported. @end table The structure of the @command{guix import} code is modular. It would be |