Age | Commit message (Expand) | Author |
2015-07-01 | environment: Add only the specified outputs of the dependencies.•••Before that, 'guix environment guile' (for instance) would define environment
variables that would refer to the "include" output of Bash, the "debug" output
of libgc, etc., even though these are not listed as inputs in the recipe of
'guile'.
* guix/gexp.scm (lower-inputs): Export.
* guix/scripts/environment.scm (evaluate-input-search-paths): Remove
'derivations' parameter; add 'search-paths'. Expect 'inputs' to be
a list of tuples. Adjust callers.
(create-environment): Remove 'derivations' parameter; add 'search-paths'.
(show-search-paths): Likewise.
(package+propagated-inputs): New procedure.
(packages->transitive-inputs, packages+propagated-inputs): Remove.
(build-inputs): Expect INPUTS to be a list of derivation tuples.
(guix-environment): Compute INPUTS using 'package+propagated-inputs',
'package->bag', and 'bag-transitive-inputs'. Move 'run-with-store' higher.
* tests/guix-environment.sh: Add test with FINDUTILS-BOOT0.
| Ludovic Courtès |
2015-06-21 | size: Add '--map-file' option.•••* guix/scripts/size.scm (profile->page-map): New procedures.
(show-help, %options): Add --map-file.
(guix-size): Honor it.
* doc/guix.texi (Invoking guix size): Document it.
* doc/images/coreutils-size-map.png: New file.
* doc.am (dist_infoimage_DATA): Add it.
| Ludovic Courtès |
2015-06-21 | size: Remove unused variables.•••* guix/scripts/size.scm (ensure-store-item): Remove #:dry-run? parameter.
(%options): Remove 'dry-run?' variable.
| Ludovic Courtès |
2015-06-18 | Add 'guix size'.•••* guix/scripts/size.scm: New file.
* Makefile.am (MODULES): Add it.
(SCM_TESTS): Add tests/size.scm.
* doc.am (SUBCOMMANDS): Add 'size'.
* po/guix/POTFILES.in: Add guix/scripts/size.scm.
* tests/size.scm: New file.
* doc/guix.texi (Packages with Multiple Outputs): Add xref to "Invoking guix
size".
(Invoking guix size): New node.
(Invoking guix gc): Add index for "closure" and xref to the above.
* doc/contributing.texi (Submitting Patches): Use @enumerate for the check
list. Add item about 'guix size'.
| Ludovic Courtès |
2015-06-18 | Add 'guix edit'.•••* guix/scripts/edit.scm: New file.
* Makefile.am (MODULES): Add it.
* doc.am (SUBCOMMANDS): Add 'edit'.
* doc/guix.texi (Defining Packages): Add xref to "Invoking guix edit".
(Invoking guix edit): New node.
* po/guix/POTFILES.in: Add it.
| Ludovic Courtès |
2015-06-18 | Move 'specification->package+output' to (gnu packages).•••* guix/scripts/package.scm (specification->package+output): Move to...
* gnu/packages.scm (specification->package+output): ... here
* guix/scripts/archive.scm (guix): Adjust accordingly.
| Ludovic Courtès |
2015-06-17 | offload: Fix sorting bug in 'choose-build-machine'.•••* guix/scripts/offload.scm (choose-build-machine)[undecorate]: Return the
boolean result of pred instead of the best machine+slot.
| Mark H Weaver |
2015-06-11 | guix build: Allow directories to be passed to --with-source.•••* guix/scripts/build.scm (package-with-source)[tarball-base-name]: Gracefully
handle file names that lack an extension.
Pass #:recursive? #t to 'download-to-store'.
* guix/download.scm (download-to-store): Add #:recursive? parameter and pass
it to 'add-to-store'.
* doc/guix.texi (Invoking guix build): Add an example of --with-source with a
directory.
| Ludovic Courtès |
2015-06-11 | environment: Connect to the store after the command line has been parsed.•••* guix/scripts/environment.scm (guix-environment): Call 'parse-command-line'
outside of 'with-store'. This allows things like --help to run even if the
daemon is not running.
| Ludovic Courtès |
2015-06-10 | guix system: init: Overwrite the items in the target store.•••Fixes <http://bugs.gnu.org/20722>.
Reported by Eric Bavier <ericbavier@openmailbox.org>.
* guix/scripts/system.scm (copy-item): Check whether DEST exists and remove it
if it does.
| Ludovic Courtès |
2015-06-09 | 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'.
| Federico Beffa |
2015-06-08 | guix: Clean up --help messages.•••* guix/scripts/import.scm (show-help): Add newline before a list of
importers.
* guix/scripts/lint.scm (show-help): Split a long description line.
* guix/scripts/package.scm (show-help): Improve docstrings for --install
and --remove options.
* guix/scripts/system.scm (show-help): Format actions the same way as
guix commands and importers are formatted.
| Alex Kost |
2015-06-06 | guix gc: Add '--verify'.•••* guix/scripts/gc.scm (show-help, %options): Add --verify.
(guix-gc): Handle it.
* doc/guix.texi (Invoking guix gc): Document --verify, and move --optimize
description right below it.
| Ludovic Courtès |
2015-06-06 | guix package: Fix typo in --help message.•••* guix/scripts/package.scm (show-help): Align '--show' option properly.
| Alex Kost |
2015-05-31 | lint: source: Warn only when all the URIs are unreachable.•••* guix/scripts/lint.scm (call-with-accumulated-warnings): New procedure.
(with-accumulated-warnings): New macro.
(check-source): Add 'try-uris' and use it. Emit warnings only upon
failure.
| Ludovic Courtès |
2015-05-31 | lint: 'validate-uri' really returns #f on failure.•••* guix/scripts/lint.scm (validate-uri): Always return #f on failure.
| Ludovic Courtès |
2015-05-29 | emacs: Report about "search paths" after operation.•••* guix/scripts/package.scm: Export 'display-search-paths'.
* emacs/guix-main.scm (process-package-actions): Use it.
| Alex Kost |
2015-05-28 | guix environment: Add --ad-hoc option.•••* guix/scripts/environment.scm (%options): Add "ad-hoc" option.
(show-help): Display help for "--ad-hoc".
(packages+propagated-inputs): New procedure.
(guix-environment): Create ad hoc environment when asked.
* doc/guix.texi ("invoking guix environment"): Document it.
| David Thompson |
2015-05-26 | gc: ignore trailing slash or subdirectories for `guix gc -d'•••Fixes <http://bugs.gnu.org/19757>.
* guix/scripts/gc.scm (guix-gc): Convert paths to direct store paths.
* guix/store.scm (direct-store-path): Get rid of subdirectories in store path.
* tests/guix-gc.sh: New tests.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| Cyrill Schenkel |
2015-05-25 | guix system: Add '--on-error'.•••* guix/ui.scm (load*): Add #:on-error parameter.
[tag, error-string]: New variables.
Wrap 'load' call in 'call-with-prompt'. Pass TAG to 'make-stack'. Honor
ON-ERROR after 'report-load-error' call.
(report-load-error): Change to not exit on error. Make private.
* guix/scripts/system.scm (show-help, %options): Add --on-error.
(guix-system): Use 'load*' and pass it #:on-error.
| Ludovic Courtès |
2015-05-25 | guix package: --manifest DTRT when combined with --dry-run.•••* guix/scripts/package.scm (guix-package)[process-actions]: Process 'manifest
action regardless of whether 'dry-run? is set. Adjust the message
accordingly.
* tests/guix-package.sh: Add error-reporting test.
| Ludovic Courtès |
2015-05-24 | guix system: init: Copy the closure of 'grub.cfg', not that of the system.•••Fixes <http://bugs.gnu.org/20591>.
Reported by Daniel Pimentel <d4n1@openmailbox.org>.
* guix/scripts/system.scm (install): Copy the closure of GRUB.CFG rather than
that of OS-DIR.
| Ludovic Courtès |
2015-05-24 | guix system: Always add zero previous entries in grub.cfg for 'init'.•••* guix/scripts/system.scm (grub.cfg): Remove.
(perform-action): Call 'operating-system-grub.cfg' with the empty list as
the 2nd argument when ACTION is 'init.
| Ludovic Courtès |
2015-05-24 | guix system: init: Make sure the target is root-owned.•••Suggested by Mark H Weaver <mhw@netris.org>.
* guix/scripts/system.scm (install): Add 'chown' and 'chmod' calls for TARGET
when running as root, and warn otherwise.
| Ludovic Courtès |
2015-05-21 | guix package: Adjust --help message.•••* guix/scripts/package.scm (show-help): Add KIND parameter for
--search-paths as a followup to dbc31ab.
| Ludovic Courtès |
2015-05-21 | scripts: Move 'set-build-options-from-command-line*' to (guix scripts build) ...•••* guix/scripts/build.scm (set-build-options-from-command-line*): New
procedure.
* guix/scripts/environment.scm (set-build-options-from-command-line*): Delete.
| David Thompson |
2015-05-21 | ui: Deduplicate 'show-what-to-build*'.•••* guix/ui.scm (show-what-to-build*): New procedure.
* guix/scripts/environment.scm (show-what-to-build*): Delete.
* guix/scripts/system.scm (show-what-to-build*): Likewise.
* build-aux/make-binary-tarball.scm (show-what-to-build*): Likewise.
| David Thompson |
2015-05-20 | package: Add --manifest option.•••* guix/scripts/package.scm (show-help): Add help text.
(%options): Add manifest option.
(guix-package): Add manifest option handler.
* doc/guix.texi ("Invoking guix package"): Document it.
* tests/guix-package.sh: Add test.
| David Thompson |
2015-05-20 | ui: Factorize user-provided Scheme file loading.•••* guix/ui.scm (make-user-module, load*): New procedures.
* guix/scripts/system.scm (%user-module): Define in terms of
'make-user-module'.
(read-operating-system): Define in terms of load*'.
| David Thompson |
2015-05-20 | guix package: Add optional argument to --search-paths.•••* guix/scripts/package.scm (search-path-environment-variables): Add #:kind
parameter. Pass it to 'environment-variable-definition'.
(display-search-paths): Add #:kind parameter and pass it to
'search-path-environment-variables'.
(%options): Add an optional parameter for "--search-paths".
(guix-package)[process-query]: Handle it.
* tests/guix-package-net.sh: Adjust existing test.
* tests/guix-package.sh: Adjust existing tests and add new test.
* doc/guix.texi (Invoking guix package): Document it.
| Ludovic Courtès |
2015-05-20 | guix package: --search-paths mentions $PATH.•••* guix/scripts/package.scm (search-path-environment-variables): Add $PATH to
SEARCH-PATHS.
| Ludovic Courtès |
2015-05-19 | guix gc: Add '--optimize'.•••* guix/scripts/gc.scm (show-help, %options): Add --optimize.
(guix-gc): Handle it.
| Ludovic Courtès |
2015-05-12 | publish: Add '--listen'.•••* guix/scripts/publish.scm (show-help, %options): Add --listen.
(getaddrinfo*): New procedure.
(%default-options): Add 'address'.
(open-server-socket): Replace 'addr' and 'port' with 'address', a
sockaddr.
(guix-publish): Adjust accordingly. Augment "publishing" message with
the actual address.
* doc/guix.texi (Invoking guix publish): Document it.
| Ludovic Courtès |
2015-05-12 | publish: Add '--user' option.•••* guix/scripts/publish.scm (show-help): Add --user.
(%options): Likewise.
(run-publish-server): Change 'port' parameter to 'socket'. Pass
#:socket instead of #:addr and #:port to 'run-server'. Update caller
accordingly.
(open-server-socket, gather-user-privileges): New procedures.
(guix-publish): Use them. Force %PRIVATE-KEY and %PUBLIC-KEY early
on. Warn when running as root.
* doc/guix.texi (Invoking guix publish): Document --user.
| Ludovic Courtès |
2015-05-10 | Remove assorted Guile 2.0.5 workarounds.•••* guix/scripts/authenticate.scm (%default-port-conversion-strategy):
Remove.
* guix/scripts/substitute.scm (fetch): Remove 2.0.5 special cases.
* guix/serialization.scm (write-file): Remove 'scandir' workaround.
* guix/ui.scm (command-files): Likewise.
| Ludovic Courtès |
2015-05-06 | download: Work around Guile small-receive-buffer bug.•••Previously, code using directly (guix build download) was still affected
by <http://bugs.gnu.org/15368>. This includes source derivations, the
'guix download' command, and (guix gnu-maintenance).
'guix substitute' was unaffected since it used (guix http-client), which
already had the fix.
* guix/http-client.scm (open-socket-for-uri): Remove.
(http-fetch): Remove #:buffered? argument to 'open-socket-for-uri';
use 'setvbuf' instead.
* guix/scripts/substitute.scm (fetch): Likewise.
* guix/build/download.scm (open-socket-for-uri): New procedure, taken
from guix/http-client.scm, but without the #:buffered? parameter.
| Ludovic Courtès |
2015-05-05 | environment: Move iteration outside of 'for-each-search-path'.•••* guix/search-paths.scm (search-path-definition): New procedure.
* guix/scripts/environment.scm (for-each-search-path): Rename to...
(evaluate-input-search-paths): ... this. Remove 'proc' and 'pure?'
parameters, and return directly the list of search-path/value pairs.
(create-environment): Use 'for-each' and 'evaluate-input-search-paths'
instead of 'for-each-search-path'.
(show-search-paths): Use 'for-each', 'search-path-definition', and
'evaluate-search-paths' instead of 'for-each-search-path'.
| Ludovic Courtès |
2015-05-05 | environment: Use 'evaluate-search-paths'.•••This allows 'guix environment' to correctly handle non-directory
and/or pattern search-path specifications, such as that for
'XML_CATALOG_FILES'.
* guix/scripts/environment.scm (for-each-search-path): Use
'evaluate-search-paths' instead of 'search-path-as-list' & co.
| Ludovic Courtès |
2015-05-05 | search-paths: Define the 'PATH' environment variable.•••* guix/search-paths.scm ($PATH): New variable.
* guix/scripts/environment.scm (for-each-search-path): Use it.
| Ludovic Courtès |
2015-05-05 | search-paths: 'evaluate-search-paths' can be passed a list of directories.•••* guix/search-paths.scm (evaluate-search-paths): Change 'directory' to
'directories', and adjust 'search-path-as-list' accordingly.
* guix/scripts/package.scm (search-path-environment-variables): Adjust
call accordingly.
| Ludovic Courtès |
2015-05-05 | environment: Use (guix search-paths).•••* guix/scripts/environment.scm: Use (guix search-paths). Fixes a
regression introduced in e89431b.
| Ludovic Courtès |
2015-05-04 | search-paths: 'evaluate-search-paths' now returns spec/value pairs.•••* guix/search-paths.scm (evaluate-search-paths): Return
specification/value pairs instead of variable/value pairs.
* guix/scripts/package.scm (search-path-environment-variables): Adjust
accordingly. Pass #:separator to 'environment-variable-definition'.
| Ludovic Courtès |
2015-05-04 | search-paths: Add 'environment-variable-definition'.•••* guix/search-paths.scm (environment-variable-definition): New variable.
* guix/scripts/package.scm (search-path-environment-variables): Use it.
| Ludovic Courtès |
2015-05-04 | search-paths: Add 'evaluate-search-paths', from (guix scripts package).•••* guix/scripts/package.scm (with-null-error-port,
evaluate-search-paths): Move to...
* guix/search-paths.scm: ... here.
* guix/utils.scm (string-tokenize*): Move to...
* guix/search-paths.scm: ... here.
* tests/utils.scm ("string-tokenize*"): Adjust accordingly.
| Ludovic Courtès |
2015-05-04 | Move search path specifications to (guix search-paths).•••* guix/packages.scm (<search-path-specification>,
search-path-specification->sexp, sexp->search-path-specification):
Move to...
* guix/search-paths.scm: ... here. New file.
* Makefile.am (MODULES): Add it.
* guix/build-system/cmake.scm, guix/build-system/glib-or-gtk.scm,
guix/build-system/gnu.scm, guix/build-system/haskell.scm,
guix/build-system/perl.scm, guix/build-system/python.scm,
guix/build-system/ruby.scm, guix/build-system/waf.scm,
guix/profiles.scm, guix/scripts/package.scm: Use it.
| Ludovic Courtès |
2015-05-04 | substitute: Increase TTL from 24h to 36h.•••* guix/scripts/substitute.scm (%narinfo-ttl): Increase to 36h.
| Ludovic Courtès |
2015-05-04 | guix: build: Fix indentation for --sources in help output.•••* guix/scripts/build.scm (show-help)[--sources]: Make indentation
consistent with other long options.
| Eric Bavier |
2015-05-04 | guix package: Introduce 'evaluate-search-paths'.•••* guix/scripts/package.scm (evaluate-search-paths): New procedure, with
most of the code formerly in 'search-path-environment-variables'.
(search-path-environment-variables): Use it.
| Ludovic Courtès |
2015-05-04 | guix package: Move profile cleaning out of 'search-path-environment-variables'.•••* guix/scripts/package.scm (user-friendly-profile): New procedure.
(search-path-environment-variables): Remove 'profile' local variable.
(display-search-paths): Explicitly call 'user-friendly-profile' for
the argument to 'search-path-environment-variables'.
(guix-package)[process-query]: Likewise.
| Ludovic Courtès |
2015-05-02 | guix: build: Add transitive source building.•••* guix/scripts/build.scm (%options, options->derivations): Add --sources
option.
* doc/guix.texi (Invoking guix build): Document --sources option.
* tests/guix-build.sh: Add tests.
| Eric Bavier |