Age | Commit message (Expand) | Author |
2016-03-05 | tests: Narinfos can specify an non-empty reference list....* guix/tests.scm (derivation-narinfo): Add #:references and honor it.
(call-with-derivation-narinfo, call-with-derivation-substitute):
Likewise.
(with-derivation-narinfo, with-derivation-substitute): Add 'references'
keyword.
| Ludovic Courtès |
2016-03-05 | guix build: Set the build options early....This fixes a bug whereby, with grafts leading to builds very early,
build options such as --substitute-urls would not be taken into account
yet.
Reported by Andreas Enge <andreas@enge.fr>.
* guix/scripts/build.scm (guix-build): Move 'opts' to the beginning.
Use 'with-store' instead of 'open-connection'. Call
'set-build-options-from-command-line' right after 'with-store'.
| Ludovic Courtès |
2016-03-04 | lint: cve: Gracefully handle HTTP errors....* guix/scripts/lint.scm (current-vulnerabilities*): New procedure.
(package-vulnerabilities): Use it.
| Ludovic Courtès |
2016-03-03 | lint: derivation: Disable grafts, but check replacements....* guix/scripts/lint.scm (check-derivation): Pass #:graft? #f. When
'package-replacement' exists, compute its derivation.
| Ludovic Courtès |
2016-03-03 | guix build: -S returns the replacement's source....Reported by Mark H Weaver.
* guix/scripts/build.scm (options->derivations): When SRC and GRAFT? are
true, use the source of P's replacement.
* tests/guix-build.sh: Add test.
| Ludovic Courtès |
2016-03-02 | utils: Use '@' for separating package names and version numbers....This provides the ability to use numbers in package names.
Fixes <http://bugs.gnu.org/19219>.
* guix/utils.scm (package-name->name+version): New procedure.
* gnu/packages.scm (%find-package): Add a FALLBACK? keyword argument.
Use the previous method when no package is found.
(specification->package+output, specification->package): Adapt
documentation to new syntax.
* doc/guix.texi (Invoking guix package, Invoking guix import): Likewise.
* guix/ui.scm (package-specification->name+version+output): Likewise.
* guix/scripts/import/hackage.scm (show-help): Likewise.
* tests/guix-build.sh: Adapt to new syntax.
* tests/guix-lint.sh: Likewise.
* tests/guix-package.sh: Likewise.
* tests/ui.scm ("package-specification->name+version+output"): Likewise.
* tests/utils.scm ("package-name->name+version"): Likewise.
* NEWS: Mention new syntax.
| Mathieu Lirzin |
2016-03-02 | graph: Ignore 'GUIX_BUILD_OPTIONS'....Previously 'GUIX_BUILD_OPTIONS' would be honored, but 'guix graph' does
not support the common build options.
* guix/scripts/graph.scm (guix-graph): Use 'args-fold*' instead of
'parse-command-line'.
| Ludovic Courtès |
2016-03-02 | guix build: Move '--no-grafts' to the common build options....* guix/scripts/build.scm (%options): Move --no-grafts to...
(%standard-build-options): ... here.
(show-help, show-build-options-help): Adjust accordingly.
* guix/scripts/archive.scm (%default-options): Add 'graft?'.
(guix-archive): Parametrize '%graft?'.
* guix/scripts/environment.scm (%default-options): Add 'graft?'.
(guix-environment): Parametrize '%graft?'.
* guix/scripts/package.scm (%default-options): Add 'graft?'.
(guix-package): Parametrize '%graft?'.
* guix/scripts/system.scm (%default-options): Add 'graft?'.
(guix-system): Parametrize 'graft?'.
* doc/guix.texi (Additional Build Options): Move --no-grafts to...
(Common Build Options): ... here.
| Ludovic Courtès |
2016-03-02 | guix archive: Use 'with-store'....* guix/scripts/archive.scm (guix-archive): Use 'with-store' instead of
an explicit 'open-connection'.
| Ludovic Courtès |
2016-03-01 | grafts: Graft recursively....Fixes <http://bugs.gnu.org/22139>.
* guix/grafts.scm (graft-derivation): Rename to...
(graft-derivation/shallow): ... this.
(graft-origin-file-name, item->deriver, non-self-references)
(cumulative-grafts, graft-derivation): New procedures
* tests/grafts.scm ("graft-derivation, grafted item is a direct
dependency"): Clarify title. Use 'grafted' instead of 'graft' to refer
to the grafted derivation.
("graft-derivation, grafted item is an indirect dependency")
("graft-derivation, no dependencies on grafted output"): New tests.
* guix/packages.scm (input-graft): Change to take a package instead of
an input.
(input-cross-graft): Likewise.
(fold-bag-dependencies): New procedure.
(bag-grafts): Rewrite in terms of 'fold-bag-dependencies'.
* tests/packages.scm ("package-derivation, indirect grafts"): Comment out.
* doc/guix.texi (Security Updates): Mention run-time dependencies and
recursive grafting.
| Ludovic Courtès |
2016-02-27 | grafts: Consider all the outputs in the graft mapping....Before that, outputs of a derivation could be left referring to the
ungrafted version of the derivation.
* guix/grafts.scm (graft-derivation)[outputs]: Change to a list of
name/file pairs.
* guix/grafts.scm (graft-derivation)[build]: Add 'old-outputs' variable
and use it when computing 'mapping'. Use 'mapping' directly.
* tests/grafts.scm ("graft-derivation, multiple outputs"): New test.
| Ludovic Courtès |
2016-02-27 | grafts: Slight simplification....* guix/grafts.scm (graft-derivation)[output-names]: Use
'derivation-output-names'.
| Ludovic Courtès |
2016-02-27 | grafts: Make sure files are not created world-writable....* guix/build/graft.scm (rewrite-directory): Add 'umask' call.
| Ludovic Courtès |
2016-02-26 | import: Add github-updater....* guix/import/github.scm: New file.
* guix/scripts/refresh.scm (%updaters): Add %GITHUB-UPDATER.
* doc/guix.texi (Invoking guix refresh): Mention it.
* Makefile.am (MODULES): Add gnu/import/github.scm.
| Ben Woodcroft |
2016-02-26 | store: 'path-info-deriver' is #f when there is no deriver....* guix/store.scm (read-path-info): Use #f when we get the empty string
for DERIVER.
* guix/scripts/publish.scm (narinfo-string): Adjust accordingly.
* tests/store.scm ("path-info-deriver"): New test.
| Ludovic Courtès |
2016-02-26 | grafts: Add record type printer....* guix/grafts.scm (write-graft): New procedure. Register it as a
printer for <graft>.
| Ludovic Courtès |
2016-02-25 | Merge branch 'media-updates' | Mark H Weaver |
2016-02-25 | http-client: 'http-client/cached' uses unique cache file names....* guix/http-client.scm (cache-file-for-uri): New procedure.
(http-fetch/cached): Use it. Remove 'directory' variable.
[update-cache]: Make the 'dirname' of FILE.
| Ludovic Courtès |
2016-02-25 | http-client: 'http-fetch/cached' updates the cache atomically....* guix/http-client.scm (http-fetch/cached)[update-cache]: Use
'with-atomic-file-output' instead of 'call-with-output-file'.
| Ludovic Courtès |
2016-02-25 | guix system: Restore load path after running the activation script....Fixes <http://bugs.gnu.org/22753>.
Reported by Mark H Weaver <mhw@netris.org>.
* guix/scripts/system.scm (save-load-path-excursion): New variable.
(upgrade-shepherd-services): Add comment about the issue.
(switch-to-system): Use 'save-load-path-excursion' around
'primitive-load' call.
| Ludovic Courtès |
2016-02-25 | store: Clarify documentation of 'valid-path?'....* guix/store.scm (valid-path?): Improve docstring.
* doc/guix.texi (The Store): Update accordingly.
| Ludovic Courtès |
2016-02-25 | publish: Do not publish nars for invalid store items....Before that, /nar requests could succeed if the requested store item
exists but is invalid (although such requests were unlikely because the
corresponding narinfo request would have failed.)
* guix/scripts/publish.scm (render-nar): Add 'store' parameter. Use
'valid-path?' instead of 'file-exists?'.
(make-request-handler): Adjust 'render-nar' call accordingly.
* tests/publish.scm ("/nar/invalid"): New test.
| Ludovic Courtès |
2016-02-24 | gnu-maintenance: Add X.org updater....* guix/gnu-maintenance.scm (xorg-package?, latest-xorg-release): New
private functions.
(%xorg-updater): New public variable.
* guix/scripts/refresh.scm (%updaters): Add %xorg-updater.
* doc/guix.texi (Invoking guix refresh): Mention the new updater.
| Andy Wingo |
2016-02-24 | Do not check package freshness during upgrade....Fixes <http://bugs.gnu.org/22740>.
Reported by Andreas Enge <andreas@enge.fr>.
* gnu/packages.scm (waiting, ftp-open*, check-package-freshness): Remove.
* guix/scripts/package.scm (options->installable): Adjust accordingly.
* emacs/guix-main.scm (package->manifest-entry*): Likewise.
| Alex Kost |
2016-02-24 | publish: Move 'query-path-info' call where it belongs....* guix/scripts/publish.scm (narinfo-string): Remove 'path-info'
parameter and add 'store' parameter. Call 'query-path-info'.
(render-narinfo): Adjust accordingly.
| Ludovic Courtès |
2016-02-23 | refresh: Remove unneeded import....Reported by Leo Famulari <leo@famulari.name>
and Ben Woodcroft <b.woodcroft@uq.edu.au>
at <http://bugs.gnu.org/22752>.
* guix/scripts/refresh.scm: Remove unneeded and harmful import of (guix
import gem).
| Ludovic Courtès |
2016-02-22 | grafts: 'name' parameter of 'graft-derivation' is now optional....* guix/grafts.scm (graft-derivation): Name 'name' a keyword parameter.
* guix/packages.scm (package-derivation, package-cross-derivation):
Adjust accordingly.
* tests/grafts.scm ("graft-derivation"): Likewise.
* tests/packages.scm ("package-derivation, indirect grafts"): Likewise.
| Ludovic Courtès |
2016-02-22 | derivations: Move grafts to (guix grafts)....* guix/derivations.scm (<graft>, graft-derivation, %graft?)
(set-grafting): Move to...
* guix/grafts.scm: ... here. New file.
* guix/gexp.scm, guix/packages.scm, tests/packages.scm,
guix/scripts/build.scm: Use it.
* Makefile.am (MODULES): Add it.
(SCM_TESTS): Add tests/grafts.scm.
* tests/derivations.scm ("graft-derivation"): Move to...
* tests/grafts.scm: ... here. New file.
| Ludovic Courtès |
2016-02-22 | licenses: Add repoze license....* guix/licenses.scm (repoze): New variable.
| Leo Famulari |
2016-02-22 | download: Add 'url-fetch/tarbomb'....Suggested by Federico Beffa.
Fixes <http://bugs.gnu.org/22676>.
Reported by Danny Milosavljevic <dannym@scratchpost.org>.
* gnu/packages/engineering.scm (broken-tarball-fetch): Remove.
(fastcap)[source](method): Use URL-FETCH/TARBOMB instead.
* gnu/packages/scheme.scm (broken-tarball-fetch): Remove.
(scmutils)[source](method): Use URL-FETCH/TARBOMB instead.
* guix/download.scm (url-fetch/tarbomb): New procedure, renamed from
'broken-tarball-fetch'.
| Ludovic Courtès |
2016-02-20 | import: gem: Add updater....* guix/import/gem.scm (guix-package->gem-name,
gem-package?, latest-release): New procedures.
(%gem-updater): New variable.
(rubygems-fetch): Wrap body in
'call-with-output-file' and 'with-error-to-port'.
* guix/scripts/refresh.scm (%updaters): Add %GEM-UPDATER.
* doc/guix.texi (Invoking guix refresh): Mention RubyGems.
| Ben Woodcroft |
2016-02-18 | licenses: Add CC-BY-SA and CC-BY....* guix/licenses.scm (cc-by-sa2.0, cc-by2.0): New variables.
Signed-off-by: Alex Kost <alezost@gmail.com>
| Rene Saavedra |
2016-02-12 | licenses: Add tcl/tk license....* guix/licenses.scm (tcl/tk): New variable.
Signed-off-by: Leo Famulari <leo@famulari.name>
| Jan Nieuwenhuizen |
2016-02-12 | scripts: environment: Build environments as profiles....Fixes <http://bugs.gnu.org/19816>.
* guix/scripts/environment.scm (evaluate-input-search-paths)
(build-inputs): Delete.
(evaluate-profile-search-paths, strip-input-name)
(package-or-package+output?, package-environment-inputs)
(build-environment, inputs->profile-derivations): New procedures.
(create-environment, show-search-paths, launch-environment)
(launch-environment/container): Replace 'inputs' argument
with 'profile' argument.
(package+propagated-inputs): Strip off names off of input tuples.
(options/resolve-packages): Handle input tuples that specify an output
in expressions.
(guix-environment): Convert inputs into a profile to use in the
environment. Remove non-package inputs such as origins from
environment inputs.
* doc/guix.texi ("invoking guix environment"): Document package+output
tuples for --expression option.
* tests/guix-environment.sh: Update tests.
* tests/guix-environment-container.sh: Likewise.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| David Thompson |
2016-02-12 | profiles: Add #:system argument to profile-derivation....Suggested by David Thompson <davet@gnu.org>.
* guix/profiles.scm (profile-derivation): Add #:system parameter and
honor it.
| Ludovic Courtès |
2016-02-12 | store: Add monadic access to '%current-system'....* guix/store.scm (current-system, set-current-system): New procedures.
* tests/store.scm ("current-system"): New test.
| Ludovic Courtès |
2016-02-08 | Add (guix build bournish) and use it in the initrd....* guix/build/bournish.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/system/linux-initrd.scm (base-initrd): Add (guix build bournish)
and use it.
| Ludovic Courtès |
2016-02-07 | build-system/python: Honor the 'python2-variant' property of packages....Fixes <http://bugs.gnu.org/22437>.
Reported by Leo Famulari <leo@famulari.name> and others.
* guix/build-system/python.scm (package-with-explicit-python): Add
#:variant-property and honor it.
(strip-python2-variant): New procedure.
| Ludovic Courtès |
2016-02-05 | guix system: Simply warn if we cannot talk to the shepherd....Before that 'open-connection' would return #f, and thus
'current-services' would return a single #f value when its continuation
expects two.
Reported by calher on #guix.
* gnu/services/herd.scm (open-connection): Rethrow system-error
exceptions.
(with-shepherd): Expect CONNECTION to always be true; remove useless
'dynamic-wind'.
* guix/scripts/system.scm (warn-on-system-error): New macro.
(upgrade-shepherd-services): Wrap body in 'warn-on-system-error'.
| Ludovic Courtès |
2016-02-04 | licenses: Add the fdl1.1+....* guix/licenses.scm (fdl1.1+): New variable.
| Fabian Harfert |
2016-02-03 | guix system: 'reconfigure' loads and starts new services....Partly fixes <http://bugs.gnu.org/22039>.
* gnu/services/herd.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/services/shepherd.scm (shepherd-service-canonical-name): New
procedure.
(shepherd-service-file): Export.
* guix/scripts/system.scm (upgrade-shepherd-services): New procedure.
(switch-to-system): Use it.
* guix/ui.scm (info): New procedure.
* doc/guix.texi (Invoking guix system): Mention system services.
| Ludovic Courtès |
2016-02-03 | syscalls: 'all-network-interface-names' accepts non-alphanumeric characters....This fixes interfaces with a dash or other characters being ignored.
Suggested by Jookia <166291@gmail.com>.
* guix/build/syscalls.scm (%interface-line): Use [[:graph:]] instead
of [[:alnum:]].
| Ludovic Courtès |
2016-02-02 | licenses: Add the Unlicense....* guix/licenses.scm (unlicense): New variable.
| Leo Famulari |
2016-02-01 | guix build: Add '--with-input'....* guix/scripts/build.scm (transform-package-inputs): New procedure.
(%transformations): Add it.
(%transformation-options, show-transformation-options-help): Add
--with-input.
* tests/scripts-build.scm ("options->transformation, with-input"):
("options->transformation, with-input, no matches"): New tests.
* tests/guix-build.sh: Add tests.
* doc/guix.texi (Package Transformation Options): Document it.
| Ludovic Courtès |
2016-02-01 | build-system/python: Use 'ensure-keyword-arguments'....* guix/build-system/python.scm (package-with-explicit-python): Use
'ensure-keyword-arguments'.
| Ludovic Courtès |
2016-02-01 | guix package: Support package transformation options....* guix/scripts/package.scm (show-help): Call
'show-transformation-options-help'.
(%options): Append %TRANSFORMATION-OPTIONS.
(process-actions)[transform, transform-entry]: New procedures.
* doc/guix.texi (Invoking guix package): Mention package
transformations.
(Package Transformation Options): Mention 'guix package'.
| Ludovic Courtès |
2016-02-01 | guix build: Separate transformation options....* guix/scripts/build.scm (%transformation-options): New variable.
(show-transformation-options-help): New procedure.
(show-help): Remove '--with-source' documentation and add
'show-transformation-options-help' call.
(%options): Remove "with-source" and append %TRANSFORMATION-OPTIONS.
* doc/guix.texi (Package Transformation Options): New node. Document
'--with-source', moved from...
(Additional Build Options): ... here.
| Ludovic Courtès |
2016-02-01 | guix build: Transformations operate on single objects....* guix/scripts/build.scm (transform-package-source): Return a procedure
that expects a single object rather than a list of packages.
(options->transformation): Rewrite to precompute the list of applicable
transformations and to return a procedure that expects a single object
rather than a list of objects.
(options->derivations): Adjust accordingly.
* tests/scripts-build.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
| Ludovic Courtès |
2016-01-31 | license: Add giftware....* guix/licenses.scm (giftware): New variable.
| David Thompson |
2016-01-29 | guix system: Rename 'dmd-graph' to 'shepherd-graph'....* doc/images/dmd-graph.dot: Rename to...
* doc/images/shepherd-graph.dot: ... this.
* doc.am (DOT_FILES): Adjust accordingly.
* guix/scripts/system.scm (dmd-service-node-label)
(dmd-service-node-type, export-dmd-graph): Rename to...
(shepherd-service-node-label, shepherd-service-node-type)
(export-shepherd-graph): ... this.
(show-help, process-action, process-command): Rename 'dmd-graph' to
'shepherd-graph'.
* emacs/guix-command.el (guix-command-additional-execute-arguments)
(guix-command-special-executors): Likewise.
* doc/guix.texi: Likewise.
* doc/emacs.texi (Emacs Popup Interface): Likewise.
| Alex Kost |