Merge branch 'master' into core-updates
Conflicts:
gnu/packages/make-bootstrap.scm
guix gc: Add `--requisites'.
* guix/scripts/gc.scm (show-help, %options): Add `--requisites'.
(guix-gc): Handle it.
* doc/guix.texi (Invoking guix gc): Document `--requisites'.
* NEWS: Update.
doc: Write about patch submission and packaging guidelines.
* HACKING: Update the command names from `guix-build' to `guix build' & co.
(Submitting Patches, Packaging Guidelines): New sections.
* doc/guix.texi (Contributing): New section.
build, package: Add `--fallback' option.
* guix/scripts/build.scm (%options, show-help): Add `--fallback'.
(guix-build): Call `set-build-options' with #:fallback?.
* guix/scripts/package.scm (%options, show-help): Add `--fallback'.
(guix-package): Call `set-build-options' with #:fallback?.
* doc/guix.texi (Invoking guix package, Invoking guix build): Document
`--fallback'.
doc: Improve wording and fix typos in "Introduction" and "Requirements".
* doc/guix.texi (Introduction, Requirements): Rephrase and fix typos.
build: Add `--target' option.
* guix/scripts/build.scm (derivations-from-package-expressions): Add
`package-derivation' parameter.
(show-help, %options): Add `--target'.
(guix-build): Use `package-cross-derivation' when `--target' is
passed.
* tests/guix-build.sh: Add dry-run test with `--target'.
* doc/guix.texi (Invoking guix build): Document `--target'.
packages: Implement `package-cross-derivation'.
* guix/packages.scm (package-transitive-target-inputs,
package-transitive-native-inputs): New procedures.
(package-derivation): Parametrize `%current-target-system'.
(package-cross-derivation): Implement.
* guix/utils.scm (%current-target-system): New variable.
* tests/packages.scm ("package-cross-derivation"): New test.
* doc/guix.texi (Defining Packages): Document
`package-cross-derivation'.
Add `--max-silent-time' to `guix build' and `guix package'.
* guix/scripts/build.scm (%default-options): Add default
`max-silent-time' value.
(show-help, %options): Add `--max-silent-time'.
(guix-build): Pass `max-silent-time' to `set-build-options'.
* guix/scripts/package.scm (%default-options): Add default
`max-silent-time' value.
(show-help, %options): Add `--max-silent-time'.
(guix-package): Pass `max-silent-time' to `set-build-options'.
* guix/ui.scm (string->number*): New procedure.
* tests/derivations.scm ("build-expression->derivation and
max-silent-time"): New test.
* doc/guix.texi (Invoking guix package, Invoking guix build): Document
`--max-silent-time'.
package: Make sure the profile directory is owned by the user.
* guix/scripts/package.scm (guix-package)[ensure-default-profile]: Check
the owner of %PROFILE-DIRECTORY. Report an error when the owner is
not the current user. Add `rtfm' procedure.
* doc/guix.texi (Invoking guix package): Mention the ownership test.
doc: Document "guix download".
* doc/guix.texi (Defining Packages): Linke to "Invoking guix download".
(Utilities): Add an overview paragraph.
(Invoking guix download): New node.
refresh: Add `--key-server' and `--gpg'.
* guix/scripts/refresh.scm (%options): Add `--key-server' and `--gpg'.
(show-help): Update accordingly.
(update-package): New procedure, formerly in `guix-refresh'.
(guix-refresh): Use it. Parameterize `%openpgp-key-server' and
`%gpg-command'.
doc: Document `guix refresh'.
* doc/guix.texi (Defining Packages): Add cross-reference to "Invoking
guix refresh".
(Invoking guix refresh): New node.
Merge branch 'core-updates'
guix package: Add `--search-paths' & co.
* guix/scripts/package.scm (search-path-environment-variables,
display-search-paths): New procedures.
(show-help, %options): Add `--search-paths'.
(guix-package)[process-actions]: Call `display-search-paths' once the
profile is ready.
[process-query]: Honor `search-paths'.
Merge branch 'master' into core-updates
Conflicts:
Makefile.am
gnu/packages/autotools.scm
gnu/packages/guile.scm
gnu/packages/python.scm
gnu/packages/shishi.scm
guix/gnu-maintenance.scm
guix/scripts/build.scm
guix/scripts/gc.scm
guix/scripts/package.scm
guix/scripts/substitute-binary.scm
guix/ui.scm
nix/nix-daemon/guix-daemon.cc
test-env.in
tests/nar.scm
tests/store.scm
Add 'guix hash'.
* guix/scripts/hash.scm: New file.
* Makefile.am (MODULES): Add it.
* po/POTFILES.in: Add it.
* doc/guix.texi (Invoking guix hash): New node.
(Defining Packages): Add a cross-reference to the 'Invoking guix
hash' node.
daemon: Add `--no-substitutes'.
Suggested by Mark H. Weaver.
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_NO_SUBSTITUTES): New macro.
(options): Add `--no-substitutes'.
(parse_opt): Add `GUIX_OPT_NO_SUBSTITUTES' case.
(main): Leave `settings.substituters' empty when
`settings.useSubstitutes' is false.
doc: Mention the home page.
* doc/guix.texi (Installation): Add a sentence pointing to the home
page. Suggested by Arne Babenhauserheide.
doc: Transparent binary deployment is implemented.
* doc/guix.texi (Features): Remove footnote saying that transparent
binary deployment is not implemented.
package: allow users to upgrade the whole system by not providing a regexp.
* guix/scripts/packages.scm (guix-package) [process-actions]: When upgrading,
use "" when REGEXP is #f.
* doc/guix.texi: update the documentation accordingly.