Age | Commit message (Expand) | Author |
2017-01-06 | guix: Add Docker image export....* guix/docker.scm: New file.
* Makefile.am (MODULES): Register it.
* guix/scripts/archive.scm (show-help, %options, guix-archive): Add
support for "--format".
* doc/guix.texi (Invoking guix archive): Document it.
| Ricardo Wurmus |
2017-01-05 | derivations: Share a cache between 'derivation' and 'read-derivation'....This leads a 13% speedup on 'guix build libreoffice -d' and 18% on
'guix build gnome -d'.
* guix/derivations.scm (%derivation-cache): New variable.
(read-derivation): Use it instead of the private 'cache' variable.
(derivation): Populate %DERIVATION-CACHE before returning.
| Ludovic Courtès |
2017-01-05 | derivations: Micro-optimize 'write-derivation'....* guix/derivations.scm (write-derivation)[write-input]: Use 'display'
instead of 'write' for PATH.
Use 'simple-format' instead of 'format', and '~a' instead of '~s' for
SYSTEM and BUILDER.
| Ludovic Courtès |
2017-01-04 | graph: Add '%reverse-package-node-type'....* guix/scripts/graph.scm (%reverse-package-node-type): New variable.
(%node-types): Add it.
* tests/graph.scm ("reverse package DAG"): New test.
* doc/guix.texi (Invoking guix refresh): Add cross-reference to
"Invoking guix graph".
(Invoking guix graph): Document 'reverse-package'.
| Ludovic Courtès |
2017-01-04 | grafts: Move caching to a new 'with-cache' macro....* guix/grafts.scm (with-cache): New macro.
(cumulative-grafts)[return/cache]: Remove.
Use 'with-cache' instead.
| Ludovic Courtès |
2017-01-04 | gnu: Add ocaml-build-system....* guix/build/ocaml-build-system.scm: New file.
* guix/build-system/ocaml.scm: New file.
* Makefile.am (MODULES): Add them.
* gnu/packages/ocaml.scm (ocaml)[native-search-paths]: Adjuste OCAMLPATH.
Signed-off-by: David Craven <david@craven.ch>
| Julien Lepiller |
2017-01-04 | git-download: Add some helpers....* guix/git-download.scm (git-version, git-file-name): New variables.
| David Craven |
2017-01-04 | build-system: cargo: Use correct cargo....* gnu/packages/rust.scm (cargo-bootstrap): Make private.
* guix/build-system/cargo.scm (default-cargo): Use cargo.
| David Craven |
2017-01-03 | guix: build: make-bootstrap: Copy libpthread_nonshared.a to the new system....* guix/build/make-bootstrap.scm (%libc-object-files-rx): Update regexp.
| Manolis Ragkousis |
2017-01-02 | ui: Keep the word "Copyright" untranslated....Suggested by John Darrington <john@darrington.wattle.id.au>.
* guix/ui.scm (show-version-and-exit): Make "Copyright (C) 2017"
untranslatable, except "(C)" itself, like Gnulib's version-etc does.
| Ludovic Courtès |
2017-01-02 | guix hash: '-x' excludes '.git' even when it is a regular file....* guix/scripts/hash.scm (guix-hash)[vcs-file?]: Add case for '.git'
regular files.
| Ludovic Courtès |
2017-01-01 | ui: It's 2017 now!...* guix/ui.scm (show-version-and-exit): Change year to 2017.
| Ludovic Courtès |
2017-01-01 | syscalls: 'terminal-columns' swallows ENOSYS....* guix/build/syscalls.scm (terminal-columns): Catch ENOSYS.
| Ludovic Courtès |
2017-01-01 | gnu-maintenance: Update ViewVC URLs....* guix/gnu-maintenance.scm (%gnumaint-base-url): Change "/gnumaint" to
"/womb/gnumaint".
(%package-list-url, %package-description-url): Adjust accordingly.
| Ludovic Courtès |
2017-01-01 | gexp: Support 'ungexp' forms in improper lists....* guix/gexp.scm (gexp)[collect-escapes, substitute-references]: Replace
the (exp0 exp ...) patterns with (exp0 . exp) to match improper lists.
Adjust clause bodies accordingly.
* tests/gexp.scm ("one input package, dotted list"): New test.
| Ludovic Courtès |
2017-01-01 | gexp: Properly report substitution errors....* guix/gexp.scm (gexp)[substitute-ungexp]: Wrap body in 'with-syntax'
and pass EXP as the last argument to 'syntax-error'.
[substitute-ungexp-splicing]: Pass EXP as the last argument to
'syntax-error'.
| Ludovic Courtès |
2017-01-01 | build-system: cargo: Handle Cargo.lock file not present....* guix/build-system/cargo.scm (cargo-build): Add src output.
(private-keywords): Add #:outputs.
* guix/build/cargo-build-system.scm (configure): Use /share/rust-source
when replacing inputs.
(build, check): Don't do anything when there isn't a Cargo.lock file
present.
(install): Install sources to src output. When a Cargo.lock file is
present use cargo install to install binaries to out.
* guix/import/crate.scm (make-crate-sexp): Importer uses the src output
for crate inputs by default.
* guix/import/utils.scm (package-names->package-inputs, maybe-inputs,
maybe-native-inputs): Take an optional output argument.
* tests/crate.scm (crate->guix-package test): Update.
Problem reported by Francisco Gómez García <espectalll@kydara.com>.
| David Craven |
2017-01-01 | import: crate: Provide a default home-page value....* guix/import/crate.scm (make-crate-sexp): Provide a default home-page
value.
* tests/crate.scm (test-crate): Add repository field.
Problem reported by ng0 <ng0@libertad.pw>.
| David Craven |
2017-01-01 | build-system: cargo: Make Cargo.toml writeable....* guix/build/cargo-build-system.scm (configure): Make sure Cargo.toml
is writeable before attempting modification.
Problem reported by Danny Milosavljevic <dannym@scratchpost.org>.
| David Craven |
2016-12-31 | Add 'guix copy'....* guix/scripts/copy.scm: New file.
* guix/scripts/archive.scm (options->derivations+files): Export.
* doc/guix.texi (Invoking guix copy): New node.
* Makefile.am (MODULES) [HAVE_GUILE_SSH]: Add guix/scripts/copy.scm.
* po/guix/POTFILES.in: Likewise.
| Ludovic Courtès |
2016-12-31 | ssh: 'retrieve-files' detects remote export failures....* guix/ssh.scm (retrieve-files): Call 'lookahead-u8' and raise a
'&message' condition when it returns EOF.
| Ludovic Courtès |
2016-12-31 | ssh: 'send-files' returns the list of items sent....* guix/ssh.scm (send-files): Return MISSING.
| Ludovic Courtès |
2016-12-31 | ssh: Allow transfers of complete closures....* guix/ssh.scm (store-export-channel, send-files)
(file-retrieval-port, retrieve-files): Add #:recursive? parameter and
honor it.
| Ludovic Courtès |
2016-12-31 | git-download: Use a single download script for all derivations....That way, we have only one /gnu/store/…-git-download instead of one
/gnu/store/…-PACKAGE-checkout-builder for each package.
This is a followup to ced200328ca6337ac446e4557c645629e7d7a997.
* guix/git-download.scm (git-fetch)[build]: Get the URL, commit, and
recursive parameter using 'getenv'. Pass #:script-name and #:env-vars
arguments to 'gexp->derivation'.
| Ludovic Courtès |
2016-12-31 | Add (guix ssh) module....* guix/scripts/offload.scm (connect-to-remote-daemon)
(store-import-channel, store-export-channel, send-files)
(retrieve-files): Move to (guix ssh).
(nonce): Add optional 'name' parameter and use it.
(retrieve-files*): New procedure.
(transfer-and-offload): Use it instead of 'retrieve-files', and add
first parameter to 'send-files'.
(assert-node-can-import): Likewise.
(assert-node-can-export): Use 'retrieve-files' instead of
'store-export-channel'.
* guix/ssh.scm: New file.
* configure.ac: Use 'GUIX_CHECK_GUILE_SSH' and define 'HAVE_GUILE_SSH'
Automake conditional.
* Makefile.am (MODULES) [HAVE_GUILE_SSH]: Add guix/ssh.scm.
| Ludovic Courtès |
2016-12-29 | import: elpa: Import dependencies as propagated-inputs...* guix/import/elpa.scm (elpa-package->sexp): Import dependencies as
propagated-inputs.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Carlo Zancanaro |
2016-12-29 | import: elpa: Fix call-with-downloaded-file...* guix/import/elpa.scm (call-with-downloaded-file): Make function behaviour
match documentation string.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Carlo Zancanaro |
2016-12-21 | guix build: '--with-source' overrides the 'replacement' of a package....* guix/scripts/build.scm (package-with-source): Set 'replacement' to #f.
* tests/scripts-build.scm ("options->transformation, with-source,
replacement"): New test.
| Ludovic Courtès |
2016-12-20 | import: github: Use 'json-fetch'....* guix/import/github.scm (json-fetch*): Remove.
(latest-released-version): Adjust accordingly.
| Ludovic Courtès |
2016-12-20 | environment: Add '--root' option....* guix/scripts/environment.scm (show-help, %options): Add --root.
(register-gc-root): New procedure.
(guix-environment): Call 'register-gc-root' when OPTS has a 'gc-root'
option.
* doc/guix.texi (Invoking guix environment): Document it.
* tests/guix-environment.sh: Add tests.
| Ludovic Courtès |
2016-12-20 | import: pypi: Match new 'pypi-uri' domain in updater....* guix/import/pypi.scm (pypi-package?): Match pypi.io domain.
| Marius Bakke |
2016-12-19 | gexp: Slightly simplify 'gexp-inputs'....* guix/gexp.scm (gexp-inputs)[add-reference-inputs]: Remove unneeded
'if' in the non-native nested gexp case.
| Ludovic Courtès |
2016-12-19 | gexp: Native inputs of nested gexps are properly accounted for....Previously, 'gexp-native-inputs' would not return the native inputs of
nested gexps. For example, this:
(gexp-native-inputs #~(foo #$#~(bar #+coreutils)))
would return '().
* guix/gexp.scm (gexp-inputs)[add-reference-inputs]: In the
non-recursive cases, check whether N? and NATIVE? are the same, and act
accordingly.
[native-input?]: Remove.
Fold over all of (gexp-references exp).
* tests/gexp.scm ("ungexp + ungexp-native, nested, special mixture"):
New test.
* tests/gexp.scm ("input list splicing + ungexp-native-splicing"): Pass
#:native? #t to 'gexp-input'.
| Ludovic Courtès |
2016-12-17 | import cran: Handle HTTP errors....Fixes <http://bugs.gnu.org/23479>.
* guix/import/cran.scm (fetch-description): Return #f in case of HTTP
errors.
| Ricardo Wurmus |
2016-12-17 | guix import: Print list of expressions....* guix/scripts/import.scm (guix-import): Print list of expressions.
| Ricardo Wurmus |
2016-12-17 | import cran: Add "recursive" option....* guix/scripts/import/cran.scm: (%options): Add "recursive" option.
(guix-import-cran): Handle "recursive" option.
* doc/guix.texi (Invoking guix import): Document it.
| Ricardo Wurmus |
2016-12-17 | import cran: Add recursive importer....* guix/import/cran.scm (recursive-import): New variable.
(cran->guix-package): Memoize the procedure.
| Ricardo Wurmus |
2016-12-17 | import cran: Ignore default R packages....* guix/import/cran.scm (default-r-packages): New variable.
(description->package): Drop default R packages from list of inputs.
| Ricardo Wurmus |
2016-12-17 | import cran: description->package: Also return package dependencies....* guix/import/cran.scm (description->package): Return package
dependencies in addition to generated package expression.
| Ricardo Wurmus |
2016-12-17 | import cran: Move guix-name to top-level....* guix/import/cran.scm (guix-name): Move to top-level.
| Ricardo Wurmus |
2016-12-17 | import cran: Remove more invalid characters from package names....* guix/import/cran.scm (guix-name): Replace period and underscore with
dash; always prepend package names with "r-".
| Ricardo Wurmus |
2016-12-17 | import cran: Handle BSD licenses with LICENSE file....* guix/import/cran.scm (string->license): Add cases for BSD licenses
with LICENSE file.
| Ricardo Wurmus |
2016-12-17 | import cran: Translate MIT to the Expat license....* guix/import/cran.scm (string->license): Translate "MIT" license to
Expat license.
| Ricardo Wurmus |
2016-12-17 | import cran: Do not use "or later" licenses by default....* guix/import/cran.scm (string->license): Use exact license versions.
| Ricardo Wurmus |
2016-12-17 | profiles: Remove dependency on 'glibc-utf8-locales' for tests....Commit 1af0860e8be81c01ad405c1226d6bc4516e62863 added a mandatory
dependency on 'glibc-utf8-locales', which entails long rebuilds for
tests.
* guix/profiles.scm (profile-derivation): Add #:locales? parameter.
Add 'set-utf8-locale' variable. Use it when LOCALES? is true.
(link-to-empty-profile): Pass #:locales? #f.
* guix/scripts/environment.scm (inputs->profile-derivation): Pass
#:locales?.
* guix/scripts/package.scm (build-and-use-profile): Likewise.
* tests/packages.scm ("--search-paths with pattern"): Pass #:locales? #f.
* tests/profiles.scm ("profile-derivation")
("profile-derivation, inputs", "profile-manifest, search-paths")
("etc/profile", "etc/profile when etc/ already exists"):
("etc/profile when etc/ is a symlink"): Likewise.
| Ludovic Courtès |
2016-12-16 | profiles: Build profiles in a UTF-8 locale....Fixes <http://bugs.gnu.org/25213>.
Reported by Christopher Baines <mail@cbaines.net>.
* guix/profiles.scm (profile-derivation)[glibc-utf8-locales]: New
variable.
[builder]: Use it to set 'LOCPATH'.
| Ludovic Courtès |
2016-12-16 | download: Protect against dangling symlinks in $SSL_CERT_DIR....Reported by Christopher Baines <mail@cbaines.net>
in <https://bugs.gnu.org/25213>.
* guix/build/download.scm (make-credendials-with-ca-trust-files): Check
whether FILE exists before calling
'set-certificate-credentials-x509-trust-file!'.
| Ludovic Courtès |
2016-12-16 | refresh: Make dependency on (guix import crates) weak....Reported by Tobias Geerinckx-Rice <me@tobias.gr>.
* guix/scripts/refresh.scm: Do not explicitly import (guix import crates).
| Ludovic Courtès |
2016-12-15 | upstream: Determine archive type correctly....* guix/upstream.scm (package-update): Take the basename of the uri
before trying to determine the extension.
| David Craven |
2016-12-14 | graph: Add d3js backend....* d3.v3.js, graph.js: New files.
* Makefile.am (EXTRA_DIST): List them.
* guix/graph.scm (%d3js-backend): New variable.
(emit-d3js-prologue, emit-d3js-epilogue, emit-d3js-node,
emit-d3js-edge): New procedures.
(%graph-backends): Add %d3js-backend.
| Ricardo Wurmus |