Age | Commit message (Expand) | Author |
2019-12-22 | gexp: Add system and target support to gexp->file....* guix/gexp.scm (gexp->file): Add system and target arguments and pass them to
gexp->derivation and load-path-expression calls,
(scheme-file-compiler): adapt accordingly to pass system and target arguments.
| Mathieu Othacehe |
2019-12-21 | guix system: Honor the build options in 'delete-generations'....Until now, 'guix system delete-generations' would ignore OPTS; for
example, it would not enable #:print-extended-build-trace? & co.,
leading to suboptimal output.
* guix/scripts/system.scm (process-command)[with-store*]: New macro.
Use it for 'delete-generations', 'switch-generation', and 'roll-back'.
| Ludovic Courtès |
2019-12-20 | gnupg: 'gnupg-verify*' returns a status symbol....This allows callers to distinguish between signature verification
failure and missing key.
* guix/gnupg.scm (gnupg-receive-keys): Return true on success.
(gnupg-verify*): Check return value of 'gnupg-receive-keys'. Return two
values, the first one being a symbol.
* guix/upstream.scm (download-tarball): Get the two return values of
'gnupg-verify*', and match on the first one.
* gnu/packages/bash.scm (download-patches): Check the first return value
of 'gnupg-verify*'.
| Ludovic Courtès |
2019-12-19 | gnupg: Compile regexps only once....This halves the run time on a large number of subsequent 'gnupg-verify'
calls.
* guix/gnupg.scm (sigid-rx, goodsig-rx, validsig-rx, expkeysig-rx)
(errsig-rx): New variables, lifted from...
(gnupg-verify)[status-line->sexp]: ... here.
| Ludovic Courtès |
2019-12-19 | guix: Fix %hurd-systems list....* guix/packages.scm (%hurd-systems): Replace i585-gnu with i586-gnu.
| Efraim Flashner |
2019-12-18 | download: Remove ramses.wh2.tu-dresden.de kernel mirror....* guix/download.scm (%mirrors): Remove ramses.wh2.tu-dresden.de, which seems
to no longer work.
| Mark H Weaver |
2019-12-18 | gnupg: 'gnupg-status-missing-key?' returns a fingerprint when possible....Until then, 'gnupg-status-missing-key?' would return a key id. Its
user, 'gnupg-verify*', would then fetch a key with that ID from key
servers, thus possibly the wrong key (due to key ID collisions). If it
did fetch the wrong key, the effect would be a signature verification
failure down the path--e.g., in "guix refresh -u".
* guix/gnupg.scm (gnupg-verify)[maybe-fingerprint]: New procedure.
[status-line->sexp](errsig-rx): Add parenthetical expression at the end.
Fetch it and add it to the 'signature-error' sexp.
(gnupg-status-missing-key?): Match the whole 'signature-error' sexp and
return preferably the fingerprint rather than KEY-ID.
(gnupg-receive-keys): Rename 'key-id' parameter to 'fingerprint/key-id'.
| Ludovic Courtès |
2019-12-18 | gnupg: 'gnupg-status-good-signature?' no longer returns a key ID....Returning a key ID was inconsequential because the only user of
'gnupg-status-good-signature?', (guix upstream) (via 'gnupg-verify*'),
would not check the return value as long as it's true.
* guix/gnupg.scm (gnupg-status-good-signature?): Return a
fingerprint/user pair instead of key-id/user.
(gnupg-verify*): Mention it in docstring.
| Ludovic Courtès |
2019-12-18 | guix: swh: Fix example URI in comment for <origin>....This is a one-character follow-up to
356a79becc4061d158c68718ad169abac1ab672f
Reported by Jonathan Brielmaier <jonathan.brielmaier@web.de>.
* guix/swh.scm(<origin>): Remove a slash from example URI witin a comment.
| Björn Höfling |
2019-12-18 | gexp: Allow character literals in GEXP->SEXP....Fixes <https://bugs.gnu.org/38628>.
* tests/gexp.scm ("lower-gexp, character literal"): New test.
* guix/gexp.scm (gexp->sexp)[self-quoting?]: Add CHAR? to the tested types.
* guix/repl.scm (self-quoting?): Likewise.
* gnu/tests.scm (marionette-shepherd-service)[self-quoting?]: Likewise.
| Marius Bakke |
2019-12-17 | swh: Fix API call for getting origin....When using the archival linter, git origins already in the archive where
not recognized due to an API change and where repeatedly asked for archival.
This is fixed here.
* guix/swh.scm (lookup-origin): Fix API URI for getting origin.
(<origin>): Fix comment with API URI example.
| Björn Höfling |
2019-12-15 | guix: Upgrade to Bioconductor 3.10....* guix/build-system/r.scm (bioconductor-uri): Switch to version 3.10.
* guix/import/cran.scm (%bioconductor-version): Same.
| Ricardo Wurmus |
2019-12-15 | base64: Do not use (rnrs)....* guix/base64.scm: Remove #:use-module clauses for (rnrs) and (srfi
srfi-13). Add other #:use-module clauses.
(fxbit-field): Define as an alias for 'bit-field.
(fx=?, fx+, mod): New aliases.
(assert): New macro.
| Ludovic Courtès |
2019-12-15 | challenge: Fix type mismatch when comparing to a local hash....* guix/scripts/challenge.scm (call-with-mismatches)[narinfo1]: When
LOCAL-HASH is true, call 'narinfo-hash->sha256' and use 'bytevector=?'
instead of 'string=?'.
| Ludovic Courtès |
2019-12-14 | import: cran: Recognize LGPL 2.1+....* guix/import/cran.scm (string->license): Add case for lgpl2.1+.
| Ricardo Wurmus |
2019-12-13 | import: utils: Update docstring of 'recursive-import'....This is a followup to 70a8e13277d4a44b89dd9ee2290b98105f0235f1.
* guix/import/utils.scm (recursive-import): Update docstring.
| Ludovic Courtès |
2019-12-13 | emacs-build-system: Ensure the core libraries appear last in the load path....Fixes bug #38568 (see: https://bugs.gnu.org/38568).
* guix/build/emacs-build-system.scm (add-source-to-load-path): Ensure the core
libraries appear last in the load path.
Reported-by: Jelle Licht <jlicht@fsfe.org>
| Maxim Cournoyer |
2019-12-12 | challenge: Support "--diff=diffoscope"....* guix/scripts/challenge.scm (call-with-nar): New procedure.
(narinfo-contents): Express in terms of 'call-with-nar'.
(call-with-mismatches, report-differing-files/external): New
procedures.
(%diffoscope-command): New variable.
(%options): Support "diffoscope" and a string starting with "/".
* tests/challenge.scm (call-mismatch-test): New procedure.
("differing-files"): Rewrite in terms of 'call-mismatch-test'.
("call-with-mismatches"): New test.
* doc/guix.texi (Invoking guix challenge): Document it.
| Ludovic Courtès |
2019-12-12 | challenge: Add "--diff"....* guix/scripts/challenge.scm (dump-port*): New variable.
(archive-contents, store-item-contents, narinfo-contents)
(differing-files, report-differing-files): New procedures.
(summarize-report): Add #:report-differences and call it.
(show-help, %options): Add "--diff".
(%default-options): Add 'difference-report' key.
(report-differing-files): Parameterize CURRENT-TERMINAL-COLUMNS and pass
#:report-differences to 'summarize-report'.
* guix/tests/http.scm (%local-url): Add optional argument.
(call-with-http-server): Fix docstring typo.
* tests/challenge.scm (query-path-size, make-narinfo): New procedures.
("differing-files"): New test.
* doc/guix.texi (Invoking guix challenge): Document "--diff".
| Ludovic Courtès |
2019-12-12 | progress: Add 'progress-report-port'....* guix/scripts/substitute.scm (progress-report-port): Move to...
* guix/progress.scm (progress-report-port): ... here. New procedure.
| Ludovic Courtès |
2019-12-12 | serialization: Remove unused procedure....* guix/serialization.scm (write-contents): Remove.
| Ludovic Courtès |
2019-12-12 | challenge: Report the best narinfo URI....* guix/scripts/substitute.scm (select-uri): Rename to...
(narinfo-best-uri): ... this, and make public. Update callers.
* guix/scripts/challenge.scm (summarize-report): Use 'narinfo-best-uri'
instead of (first (narinfo-uris ...)).
| Ludovic Courtès |
2019-12-12 | guix archive: Add '--list'....* guix/scripts/archive.scm (show-help, %options): Add '--list'.
(list-contents): New procedure.
(guix-archive): Honor the '--list' option.
* tests/guix-archive.sh: Test it.
* doc/guix.texi (Invoking guix archive): Document it.
| Ludovic Courtès |
2019-12-12 | serialization: Add 'fold-archive'....* guix/serialization.scm (read-contents): Remove.
(read-file-type, fold-archive): New procedures.
(restore-file): Rewrite in terms of 'fold-archive'.
* tests/nar.scm ("write-file-tree + fold-archive")
("write-file-tree + fold-archive, flat file"): New tests.
| Ludovic Courtès |
2019-12-11 | import: crate: Better handle license expressions....* guix/import/crate.scm (%dual-license-rx): Removed function.
(crate->guix-package): Handle most of the multi-licensing cases.
* tests/crate.scm (licenses): Add tests for some licenses.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| Brice Waegeneire |
2019-12-11 | import: utils: 'recursive-import' returns a list rather than a stream....* guix/import/utils.scm (recursive-import): Remove 'list->stream' call.
* guix/scripts/import/cran.scm (guix-import-cran): Remove 'stream->list'
call.
* guix/scripts/import/crate.scm (guix-import-crate): Likewise.
* guix/scripts/import/elpa.scm (guix-import-elpa): Likewise.
* guix/scripts/import/gem.scm (guix-import-gem): Likewise.
* guix/scripts/import/hackage.scm (guix-import-hackage): Likewise.
* guix/scripts/import/opam.scm (guix-import-opam): Likewise.
* guix/scripts/import/pypi.scm (guix-import-pypi): Likewise.
* guix/scripts/import/stackage.scm (guix-import-stackage): Likewise.
* tests/gem.scm ("gem-recursive-import"): Likewise.
* tests/import-utils.scm ("recursive-import"): Likewise.
Co-authored-by: Brian Leung <bkleung89@gmail.com>
| Ludovic Courtès |
2019-12-11 | import: utils: 'recursive-import' returns packages in topological order....* guix/import/utils.scm (topological-sort): New procedure.
(recursive-import): Rewrite to use it.
* tests/import-utils.scm ("recursive-import"): New test.
* guix/import/cran.scm (cran->guix-package): Always return two values.
* guix/scripts/import/cran.scm (guix-import-cran): Remove 'reverse' call
on 'cran-recursive-import' result.
* guix/scripts/import/crate.scm (guix-import-crate): Likewise.
* guix/scripts/import/elpa.scm (guix-import-elpa): Likewise.
* guix/scripts/import/gem.scm (guix-import-gem): Likewise.
* guix/scripts/import/hackage.scm (guix-import-hackage): Likewise.
* guix/scripts/import/opam.scm (guix-import-opam): Likewise.
* guix/scripts/import/pypi.scm (guix-import-pypi): Likewise.
* guix/scripts/import/stackage.scm (guix-import-stackage): Likewise.
* tests/gem.scm ("gem-recursive-import"): Change the order of package
expressions accordingly.
| Ludovic Courtès |
2019-12-10 | profiles: Use 'getpwuid' when $USER and $LOGNAME are undefined....Reported by YOANN P <yoann_mac_donald@hotmail.com>.
* guix/profiles.scm (%profile-directory): Fall back to 'getpwuid' when
"USER" and "LOGNAME" are undefined.
| Ludovic Courtès |
2019-12-10 | pack: Clarify the /bin/sh requirement for Singularity....* guix/scripts/pack.scm (squashfs-image)[symlinks*]: New variable.
[build]: Use it instead of SYMLINKS.
(guix-pack): Emit a warning and a hint when "bash" and "bash-minimal"
are missing and PACK-FORMAT is 'squashfs.
* doc/guix.texi (Invoking guix pack): Document the /bin/sh requirement
for Singularity.
| Ludovic Courtès |
2019-12-08 | lint: Add '--load-path' option....* guix/scripts/lint.scm (%options): Add '--load-path' option.
* doc/guix.texi: Document it.
* tests/guix-lint.sh: Test it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| zimoun |
2019-12-08 | emacs-build-system: Move the source directory to the start of EMACSLOADPATH....Fixes issue #38479 (see: https://bugs.gnu.org/38479).
* guix/build/emacs-build-system.scm (add-source-to-load-path): Move the source
directory to the start of the EMACSLOADPATH environment variable.
Reported-by: Diego Nicola Barbato <dnbarbato@posteo.de>
| Maxim Cournoyer |
2019-12-08 | emacs-build-system: Make the order of the phases more clear....* guix/build/emacs-build-system.scm (%standard-phases): Re-arrange to explicit
the ordering of phases.
| Maxim Cournoyer |
2019-12-07 | build-system: qt: Fix output missing in wrapped variables....* guix/build/qt-build-system .scm (handle-output): Use directory of
output, not its name.
| Hartmut Goebel |
2019-12-07 | file-systems: Add support for 'strict-atime' and 'lazy-time' flags....* guix/build/syscalls.scm (MS_LAZYTIME): New variable.
* gnu/build/file-systems.scm (mount-flags->bit-mask): Add match rules for
'strict-atime' and 'lazy-time'.
* doc/guix.texi (File Systems): Add 'strict-atime' and 'lazy-time' to the list
of supported flags.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Guillaume Le Vaillant |
2019-12-07 | guix system: Add "describe" action....* guix/scripts/system.scm (show-help): Add "describe".
(process-command): Handle it.
(guix-system): Likewise.
* doc/guix.texi (Invoking guix system): Document it.
| Ludovic Courtès |
2019-12-07 | guix system: "list-generations" displays provenance info....* guix/scripts/pull.scm (channel-commit-hyperlink): Export.
* guix/scripts/system.scm (display-system-generation)
[display-channel]: New procedure.
Read the "provenance" file of GENERATION and display channel info and
the configuration file name when available.
| Ludovic Courtès |
2019-12-07 | guix system: Use 'provenance-service-type', add "--save-provenance"....* guix/scripts/system.scm (show-help, %options): Add "--save-provenance".
(process-action): Define 'save-provenance?' and 'transform'; call
'transform' on the OS.
* doc/guix.texi (Invoking guix system): Document it under 'reconfigure'.
(Service Reference): Mention that 'provenance-service-type' is
automatically added by 'reconfigure' & 'init'.
| Ludovic Courtès |
2019-12-07 | derivations: Add 'derivation-input-fold'....* guix/derivations.scm (derivation-input-fold): New procedure.
(substitution-oracle)[closure]: Rewrite in terms of
'derivation-input-fold'.
* tests/derivations.scm ("derivation-input-fold"): New test.
| Ludovic Courtès |
2019-12-05 | gnu: Really move lisp libraries to lisp-xyz, uglify-js to javascript and stum......* gnu/local.mk: Include lisp-xyz.scm.
* gnu/packages/lisp-xyz.scm: New file.
* gnu/packages/lisp.scm: Move all lisp libraries to lisp-xyz.scm, uglify-js to
javascript.scm and stumpwm to wm.scm.
* gnu/packages/javascript.scm: Add uglify-js.
* gnu/packages/wm.scm: Add stumpwm.
* gnu/packages/bioinformatics.scm: Find uglify-js in javascript.scm.
* gnu/packages/machine-learning.scm: Depend on lisp-xyz.scm instead of lisp.scm.
* gnu/packages/web.scm: Find uglify-js in javascript.scm.
* gnu/packages/web-browsers.scm: Depend on lisp-xyz.scm instead of lisp.scm.
* guix/build-system/minify.scm (default-uglify-js): Find uglify-js in
javascript module instead of lisp.
| Pierre Neidhardt |
2019-12-05 | Revert "gnu: Properly move lisp libraries to lisp-xyz, uglify-js to javascrip......This reverts commit ac1ee30f4f7f9d0ae2a655676b0e8b9eb90a35dd, which
still breaks ‘guix pull’.
| Tobias Geerinckx-Rice |
2019-12-05 | Revert "build-system/linux-module: Accept a #:make-flags keyword."...I should've tested this better before pushing the commit.
This reverts commit fabd4900d8fb739a55e2dff76dee3a29b2a90bb1.
| Efraim Flashner |
2019-12-05 | gnu: Properly move lisp libraries to lisp-xyz, uglify-js to javascript and st......* gnu/local.mk: Include lisp-xyz.scm.
* gnu/packages/lisp-xyz.scm: New file.
* gnu/packages/lisp.scm: Move all lisp libraries to lisp-xyz.scm, uglify-js to
javascript.scm and stumpwm to wm.scm.
* gnu/packages/javascript.scm: Add uglify-js.
* gnu/packages/wm.scm: Add stumpwm.
* gnu/packages/bioinformatics.scm: Find uglify-js in javascript.scm.
* gnu/packages/machine-learning.scm: Depend on lisp-xyz.scm instead of lisp.scm.
* gnu/packages/web.scm: Find uglify-js in javascript.scm.
* gnu/packages/web-browsers.scm: Depend on lisp-xyz.scm instead of lisp.scm.
* guix/build-system/minify.scm (default-uglify-js): Find uglify-js in
javascript module instead of lisp.
| Pierre Neidhardt |
2019-12-04 | Merge branch 'staging' | Marius Bakke |
2019-12-04 | ssh: 'open-ssh-session' can be passed the expected host key....* guix/ssh.scm (open-ssh-session): Add #:host-key parameter.
Pass #:knownhosts to 'make-session'. When HOST-KEY is true, call
'authenticate-server*' instead of 'authenticate-server'.
| Ludovic Courtès |
2019-12-04 | ssh: Always authenticate the server [security fix]....Until now, users of 'open-ssh-session', including "guix deploy" and
"GUIX_DAEMON_SOCKET=ssh://…" (but not "guix offload"), would not
authenticate the SSH server they're talking to.
* guix/ssh.scm (open-ssh-session): Call 'authenticate-server'.
| Ludovic Courtès |
2019-12-04 | ssh: Add 'authenticate-server*' and use it for offloading....* guix/scripts/offload.scm (host-key->type+key): Remove.
(open-ssh-session): Replace server authentication code with a call to
'authenticate-server*'.
* guix/ssh.scm (host-key->type+key, authenticate-server*): New
procedures.
| Ludovic Courtès |
2019-12-04 | substitute: Remove unused procedure....This became unused with commit
a9468b422b6df2349a3f4d1451c9302c3d77011b.
* guix/scripts/substitute.scm (assert-valid-signature): Remove.
| Ludovic Courtès |
2019-12-04 | build: emacs-build-system: Unify the installation directory....This change aims to reduce the length of the EMACSLOADPATH environment
variable, which was found to cause issues such as
<https://bugs.gnu.org/38309>.
It should also enable discovery of newly installed packages without refreshing
the session's EMACSLOADPATH of the user profile (e.g., when launching Emacs
from the desktop manager application launcher), as discussed in
<https://bugs.gnu.org/38309>.
* guix/build/emacs-build-system.scm (%legacy-install-suffix): Rename to...
(%install-dir): ...this.
(%install-suffix): Remove variable.
(build): Adjust installation target directory.
(patch-el-files): Likewise.
(install): Likewise.
(move-doc): Likewise.
(make-autoloads): Likewise.
Signed-off-by: Clément Lassieur <clement@lassieur.org>
| Maxim Cournoyer |
2019-12-04 | build-system/linux-module: Accept a #:make-flags keyword....Fixes bug#37882.
* guix/build-system/linux-module.scm (linux-module-build): Accept a
MAKE-FLAGS argument.
<builder>: Pass it on.
| Tobias Geerinckx-Rice |
2019-12-02 | lint: archival: Gracefully handle network failures....* guix/lint.scm (check-archival): Wrap re-throw in 'with-networking-fail-safe'.
| Ludovic Courtès |