Age | Commit message (Expand) | Author |
2020-01-16 | repl: Add '--load-path' option....* guix/scripts/repl.scm (%option): Add '--load-path' option.
* doc/guix.texi: Document it.
| zimoun |
2020-01-16 | edit: Add '--load-path' option....* guix/scripts/edit.scm (%option): Add '--load-path' option.
* doc/guix.texi: Document it.
| zimoun |
2020-01-16 | refresh: Add '--load-path' option....* guix/scripts/refresh.scm (%option): Add '--load-path' option.
* doc/guix.texi: Document it.
| zimoun |
2020-01-16 | size: Add '--load-path' option....* guix/scripts/size.scm (%option): Add '--load-path' option.
* doc/guix.texi: Document it.
| zimoun |
2020-01-16 | graph: Add '--load-path' option....* guix/scripts/graph.scm (%option): Add '--load-path' option.
* doc/guix.texi: Document it.
* tests/guix-graph.sh: Test it.
| Pierre Neidhardt |
2020-01-15 | clojure-utils: Avoid use of '@@'....* guix/build/clojure-utils.scm (%doc-regex): Avoid @@, which doesn't
work on Guile 3.
(file-sans-extension): Likewise.
| Ludovic Courtès |
2020-01-15 | serialize: Export 'dump-port*'....* guix/serialization.scm (dump): Export as 'dump-port*'.
* guix/scripts/challenge.scm (dump-port*): Remove.
| Ludovic Courtès |
2020-01-15 | import: cpan: Rewrite tests to use an HTTP server instead of mocking....* guix/import/cpan.scm (%metacpan-base-url): New variable.
(module->dist-name, cpan-fetch): Refer to it instead of the hard-coded URL.
* tests/cpan.scm ("cpan->guix-package"): Use 'with-http-server' instead
of 'mock'.
| Ludovic Courtès |
2020-01-15 | import: cpan: Rewrite to use 'define-json-mapping'....* guix/import/cpan.scm (<cpan-dependency>, <cpan-release>): New
JSON-mapped record types.
(metacpan-url->mirror-url): New procedure.
(cpan-source-url): Rewrite in terms of it.
(cpan-version): Remove.
(cpan-module->sexp): Rewrite to take a <cpan-release> instead of an
alist, and rename 'meta' to 'release'.
[convert-inputs]: Rewrite to use 'cpan-release-dependencies'.
Update calls to 'convert-inputs' to pass a list of symbols.
Replace 'assoc-ref' calls with the appropriate field accessors.
(cpan->guix-package): Rename 'module-meta' to 'release'.
(latest-release): Likewise, and use the appropriate accessors.
* tests/cpan.scm (test-json): Remove "prereqs" record; add "dependency"
list.
("source-url-http", "source-url-https"): Remove.
("metacpan-url->mirror-url, http")
("metacpan-url->mirror-url, https"): New tests.
| Ludovic Courtès |
2020-01-15 | More module autoload adjustments....This is a followup to 7a0836cffdfe3ab9ee899602f218277646959144.
* guix/scripts/package.scm: Adjust binding list of the (guix store roots)
autoload.
* guix/inferior.scm: Adjust binding list of the (guix cache) autoload.
| Ludovic Courtès |
2020-01-15 | Avoid warnings for the 'delete' binding of (guix build utils)....On Guile 3, importing (guix build utils) leads to warnings such as:
WARNING: (gnu packages embedded): imported module (guix build utils) overrides core binding `delete'
* gnu/packages/embedded.scm: Select 'alist-replace' from (guix build utils).
* guix/ui.scm: Hide 'delete' from (guix build utils).
| Ludovic Courtès |
2020-01-15 | substitute: 'http-multiple-get' processes each request only once....Fixes <https://bugs.gnu.org/39090>.
Reported by Gábor Boskovits <boskovits@gmail.com>.
Fixes a regression introduced in 9e3f9ac3c00906f5bc647ea8398e4ed5a370614e.
* guix/scripts/substitute.scm (http-multiple-get): In the "Connection: close"
case, pass (drop requests (+ 1 processed)) to 'loop' as the remaining
REQUESTS value.
Previously, we would pass a list containing duplicates, and thus the
final result would also contain duplicates. When sent to the daemon,
that list would lead to a daemon error:
got unexpected path `/gnu/store/…' from substituter
| Ludovic Courtès |
2020-01-12 | lint: Check for more packages which should be native....* guix/lint.scm (check-inputs-should-be-native): Add gtk-doc.
| Danny Milosavljevic |
2020-01-12 | build: asdf-build-system: Improve reproducibility....* guix/build/asdf-build-system.scm (copy-files-to-output): Reset timestamps of
source files before compiling.
| Guillaume Le Vaillant |
2020-01-12 | deprecation: Add a two-element form for simple aliases....* guix/deprecation.scm (define-deprecated): Add a two-element form for
simple aliases: (define-deprecated old new).
| Ludovic Courtès |
2020-01-09 | channels: Provide a hint when the 'guix' channel is lacking....Fixes <https://bugs.gnu.org/39043>.
Reported by Jesse Gibbons <jgibbons2357@gmail.com>.
* guix/channels.scm (channel-instance-derivations): Raise '&fix-hint'
condition in addition to the '&message' condition.
| Ludovic Courtès |
2020-01-09 | lint: Check for more packages which should be native....* guix/lint.scm (check-inputs-should-be-native): Add autoconf, automake,
bison, dejagnu, desktop-file-utils, doxygen, flex, gettext,
gobject-introspection, googletest-source, groff, help2man, libtool, swig,
qmake, qttools, texinfo, xorg-server-for-tests, yelp-tools.
| Danny Milosavljevic |
2020-01-08 | build-system/clojure: Provide only the right modules in scope....Previously, we used to have a whole bunch of (guix build *-build-system)
modules in scope, which, for example, meant that '%standard-phases' was
clashing. This change clarifies it.
* guix/build-system/clojure.scm (%default-modules): New variable.
(clojure-build): Change the default value of #:modules and that of
#:phases.
| Ludovic Courtès |
2020-01-08 | build: asdf-build-system: Make sbcl-* Lisp packages reproducible....The '*.fasl' files produced by SBCL contain the mtime of the source file (see
commit 72843d7ce32bd615f64a0326cf891658b5724ead of SBCL's code repository).
As asdf-build-system makes a copy of the source files before compiling them,
we must set the mtime of these copies to the same date as the originals for
the build to be reproducible.
* guix/build/asdf-build-system.scm (copy-files-to-output): Keep the
modification time of the original source files.
| Guillaume Le Vaillant |
2020-01-07 | download, git: Refer to the right module in 'module-use!' call....This fixes a regression introduced in
6a7c4636d4dec47eefa03c95da5a1315bd0e0413.
* guix/build/download.scm (load-gnutls): Call 'resolve-module' instead
of 'current-module'.
* guix/git.scm (load-git-submodules): Likewise.
| Ludovic Courtès |
2020-01-07 | More module autoload changes....This is a followup to 6a7c4636d4dec47eefa03c95da5a1315bd0e0413.
* guix/scripts/build.scm: Adjust #:autoload clauses.
* guix/scripts/gc.scm: Likewise.
| Ludovic Courtès |
2020-01-06 | Adjust module autoloads....In Guile < 2.9.7, autoloading a module would give you access to all its
bindings. In future versions, autoloading a module gives access only to
the listed bindings, as per #:select (see <https://bugs.gnu.org/38895>).
This commit adjusts autoloads to the new semantics, allowing Guix to be
built with Guile 2.9.7/2.9.8.
* guix/build/download.scm <top level>: Remove call to 'module-autoload!'.
(load-gnutls): New procedure.
(tls-wrap): Call it.
* guix/git.scm <top level>: Remove call to 'module-autoload!'.
(load-git-submodules): New procedure.
(update-submodules): Call it instead of 'resolve-interface'.
* gnu/bootloader/grub.scm: Replace #:autoload with #:use-module.
* gnu/packages.scm: Likewise.
* gnu/packages/ssh.scm: Likewise.
* gnu/packages/tex.scm: Likewise.
* gnu/services/cuirass.scm: Likewise.
* gnu/services/mcron.scm: Likewise.
* guix/lint.scm: Augment list of bindings in #:autoload.
* guix/scripts/build.scm: Likewise.
* guix/scripts/gc.scm: Likewise.
* guix/scripts/pack.scm: Likewise.
* guix/scripts/publish.scm: Likewise.
* guix/scripts/pull.scm: Likewise.
* guix/utils.scm: Remove unnecessary #:autoload clauses; replace one
of them with #:use-module.
| Ludovic Courtès |
2020-01-04 | gexp: Add 'raw-derivation-file'....* guix/gexp.scm (<raw-derivation-file>): New record type.
(raw-derivation-file-compiler): New gexp compiler.
* tests/gexp.scm ("lower-gexp, raw-derivation-file")
("raw-derivation-file"): New tests.
| Ludovic Courtès |
2020-01-04 | build-system/guile: Add #:implicit-inputs?....* guix/build-system/guile.scm (lower): Add implicit-inputs? keyword
parameter.
[private-keywords]: Add it.
Honor it.
| Jan Nieuwenhuizen |
2020-01-03 | import: cran: Fix file descriptor leak....Fixes <https://bugs.gnu.org/38836>.
Reported by Ricardo Wurmus <rekado@elephly.net>.
* guix/import/cran.scm (bioconductor-packages-list): Close the port
returned by 'http-fetch/cached'.
(fetch-description): Likewise.
| Ludovic Courtès |
2020-01-03 | download: Do not leak file descriptors on TLS ports....Fixes <https://bugs.gnu.org/20145>.
* guix/build/download.scm (%tls-ports, register-tls-record-port): Remove.
(tls-wrap): Remove call to 'register-tls-record-port'. Return a custom
binary input/output port instead. This is a backport of what Guile
2.2's (web client) module has been doing.
(close-connection): Define as an alias for 'close-port'.
* guix/http-client.scm (http-fetch): Remove #:keep-alive? parameter,
which was ignored and unused.
Pass #:keep-alive? #f to 'http-get'.
* guix/lint.scm (probe-uri): Use 'close-port' instead of 'close-connection'.
* guix/scripts/substitute.scm (http-multiple-get): Likewise.
| Ludovic Courtès |
2020-01-03 | gexp: 'gexp->script' marks its result as non-offloadable and non-substitutable....* guix/gexp.scm (gexp->script): Pass #:local-build? and #:substitutable?
to 'gexp->derivation'.
| Ludovic Courtès |
2020-01-03 | gnu: uglify-js: Move back next to sbcl-cl-uglify-js definition....This fixes the bug which prevented uglify-js from being defined properly, and
cascaded back to all Common Lisp packages.
* gnu/packages/bioinformatics.scm: Replace javascript module with lisp-xyz.
* gnu/packages/cran.scm: Use lisp-xyz module.
* gnu/packages/javascript.scm (uglify-js): Move from here...
* gnu/packages/lisp-xyz.scm: ... To here.
* gnu/packages/web.scm: Replace javascript module with lisp-xyz.
* guix/build-system/minify.scm: Find uglify-js in the lisp-xyz module.
| Pierre Neidhardt |
2020-01-02 | ui: It's 2020 now!...* guix/ui.scm (show-version-and-exit): Change year to 2020.
| Ludovic Courtès |
2019-12-30 | import: crate: Honor crate version for recursive imports....Fixes <https://bugs.gnu.org/38709>.
Reported by Valentin Ignatev <valentignatev@gmail.com>.
* guix/import/crate.scm (crate-recursive-import): Add optional 'version'
parameter and honor it.
* guix/scripts/import/crate.scm (guix-import-crate): Pass VERSION as 2nd
argument to 'crate-recursive-import'.
| Ludovic Courtès |
2019-12-29 | profiles: Fix profile-derivation cross-compilation....* guix/store.scm (current-target-system): New exported monadic procedure.
* guix/profiles.scm (profile-derivation): Set target at bind time using the
above procedure.
| Mathieu Othacehe |
2019-12-29 | inferior: Add 'inferior-package-provenance'....* guix/inferior.scm (inferior-package-provenance): New procedure.
| Ludovic Courtès |
2019-12-29 | pack: Save provenance information when using '--manifest'....* guix/scripts/pack.scm (guix-pack)[manifest-from-args]: Remove
'provenance', and add 'with-provenance' procedure. Wrap 'cond' form in
'with-provenance'.
| Ludovic Courtès |
2019-12-29 | guix package: Save provenance information when using '--manifest'....Fixes <https://bugs.gnu.org/38673>.
Reported by zimoun <zimon.toutoune@gmail.com>.
* guix/describe.scm (manifest-entry-with-provenance): New procedure.
* guix/scripts/package.scm (process-actions): Use it when FILES is
non-empty.
| Ludovic Courtès |
2019-12-29 | profiles: Add 'map-manifest-entries'....* guix/scripts/pack.scm (map-manifest-entries): Move to...
* guix/profiles.scm (map-manifest-entries): ... here.
| Ludovic Courtès |
2019-12-27 | guix: emacs-utils: Add emacs-batch-disable-compilation....* guix/build/emacs-utils.scm (emacs-batch-disable-compilation):
New procedure.
Signed-off-by: Brett Gilio <brettg@gnu.org>
| Leo Prikler |
2019-12-27 | git: 'commit-difference' takes a list of excluded commits....* guix/git.scm (commit-closure): Add 'visited' optional parameter.
(commit-difference): Add 'excluded' optional parameter; pass second
argument to 'commit-closure'.
* tests/git.scm ("commit-difference, excluded commits"): New test.
| Ludovic Courtès |
2019-12-26 | download: Enable TLS 1.3....This reverts commit e4ee84202633636b4c8cef4a332f0c74912a3b23.
* guix/build/download.scm (tls-wrap): Dot not disable TLS 1.3.
| Marius Bakke |
2019-12-26 | gnu: Remove squashfs-tools-next....* gnu/packages/compression.scm (squashfs-tools-next): Remove variable.
* guix/scripts/pack.scm (squashfs-image, guix-pack): Use squashfs-tools.
* tests/pack.scm: Use squashfs-tools.
| Ricardo Wurmus |
2019-12-26 | build-system: linux-module: Add substitutable keyword....* guix/build-system/linux-module.scm (linux-module-build) Add
substitutable keyword.
| Efraim Flashner |
2019-12-26 | guix: swh: Fix again example URI in comment for <origin>....This is a follow up to
6afea7489b76c8db58d4f389fdbedc7c2b8992bd
* guix/swh.scm(<origin>): Write 'https' instead of 'ttps' for the URL.
| Björn Höfling |
2019-12-23 | build-system: qt: Adjust indentation....* guix/build-system/qt.scm (qt-build, qt-cross-build): Adjust indentation.
| Hartmut Goebel |
2019-12-23 | build-system: qt: Actually use qt-build-system, not cmake-build-system....When the qt-build-system was created, based on the cmake-build-system,
some references to cmake have been missed to be changed.
* guix/build-system/qt.scm (qt-build, qt-cross-build)[modules]:
Use qt-build-system, not cmake-build-system. [builder]: Call qt-build,
not cmake-build.
Coauthored-by: Ludovic Courtès <ludo@gnu.org>
| Hartmut Goebel |
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 |