derivations: Use more keyword parameters for 'build-expression->derivation'.
* guix/derivations.scm (build-expression->derivation): Turn 'system' and
'inputs' into keyword parameters.
Adjust callers accordingly.
* gnu/system/linux.scm, gnu/system/vm.scm, guix/build-system/cmake.scm,
guix/build-system/gnu.scm, guix/build-system/perl.scm,
guix/build-system/python.scm, guix/build-system/trivial.scm,
guix/download.scm, guix/packages.scm, guix/profiles.scm,
guix/scripts/pull.scm, tests/derivations.scm, tests/guix-build.sh,
tests/monads.scm, tests/store.scm, tests/union.scm: Adjust users of
'build-expression->derivation' and 'derivation-expression'
accordingly.
* doc/guix.texi (Derivations): Adjust 'build-expression->derivation'
documentation accordingly.
(The Store Monad): Likewise for 'derivation-expression'.
Merge branch 'core-updates'
Conflicts:
gnu/packages/gnunet.scm
doc: List the supported platforms.
* doc/guix.texi (GNU Distribution): List the supported platforms.
Merge branch 'master' into core-updates
Conflicts:
guix/packages.scm
doc: Link to package-list.html.
* doc/guix.texi (GNU Distribution): Add link to package-list.html.
guix build: '-e' can be passed a monadic thunk.
* guix/ui.scm (read/eval): New procedure.
(read/eval-package-expression): Use it.
* guix/scripts/build.scm (derivations-from-package-expressions): Rename to...
(derivation-from-expression): ... this. Accept procedures, under the
assumption that they are monadic thunk.
(show-help): Adjust accordingly.
(guix-build): Ditto.
* tests/guix-build.sh: Add test.
* doc/guix.texi (Invoking guix build): Augment description of '-e'.
doc: Mention Linux containers; emphasize reproducible builds.
* doc/guix.texi (Introduction): Use "containers" instead of "chroots".
(Invoking guix-daemon): Add @cindex entries. Mention the Linux
container features.
(Features): Add sentence on build reproducibility.
guix build: Add '--log-file'.
* guix/scripts/build.scm (show-help): Add '--log-file'.
(%options): Likewise.
(guix-build): Set %FILE-PORT-NAME-CANONICALIZATION. Honor '--log-file'.
* tests/guix-build.sh: Add '--log-file' tests.
* doc/guix.texi (Invoking guix build): Document '--log-file'.
Merge branch 'master' into core-updates
Conflicts:
guix/packages.scm
packages: Add a 'snippet' field to <origin>.
* guix/packages.scm (<origin>): Add 'snippet', 'modules', and
'imported-modules' fields.
(patch-and-repack): Make 'inputs' a keyword parameter. Add 'snippet',
'modules', and 'imported-modules' parameters. Accept SOURCE as a raw
file name. Insert SNIPPET in BUILDER. Pass IMPORTED-MODULES to
'build-expression->derivation'.
(package-source-derivation): Pass the extra arguments to
'patch-and-repack'.
* tests/packages.scm ("package-source-derivation, snippet"): New test.
* doc/guix.texi (Defining Packages): Mention the 'patches' and 'snippet'
fields.
(Invoking guix build): Tell that --source has patches and snippets
applied.
(Software Freedom): Mention packages that contain non-free code.
doc: Document current security issue with substitutes.
Suggested by Mark H. Weaver <mhw@netris.org>.
* doc/guix.texi (Features): Add note about unauthenticated binaries.
doc: Improve documentation of '--no-substitutes'.
Suggested by Mark H. Weaver <mhw@netris.org>.
* doc/guix.texi (Invoking guix package): Spell out the --no-substitutes
documentation.
(Invoking guix build): Use the more complete --no-substitutes
documentation.
(Invoking guix-daemon): Explain the interaction with what clients ask
for.
doc: Document the syntax of the '--remove' argument.
* doc/guix.texi (Invoking guix package): Document the syntax of
'--remove' patterns.
Merge branch 'master' into core-updates
doc: Augment the "Porting" section.
Reported by Andreas Enge <andreas@enge.fr>.
* doc/guix.texi (Porting): Document needed changes to (gnu packages
bootstrap) and (gnu packages linux).
doc: Improve the copyright notice.
doc: Document "guix pull --url".
* doc/guix.texi (Invoking guix pull): Add --url.
Add (guix monads).
* guix/monads.scm: New file.
* tests/monads.scm: New file.
* Makefile.am (MODULES): Add guix/monads.scm.
(SCM_TESTS): Add tests/monads.scm.
* doc/guix.texi (The Store Monad): New node.
(The Store): Reference it.
doc: Fix typos.
* doc/guix.texi: Fix typos.
doc: Link from "guix gc" to '--delete-generations'.
* doc/guix.texi (Invoking guix package): Mention that deleting
generations prevents roll-back.
(Invoking guix gc): Link to '--delete-generations'.