Age | Commit message (Expand) | Author |
2021-12-18 | style: Gracefully handle errors such as EACCES when opening files....* guix/scripts/style.scm (guix-style): Wrap body in
'with-error-handling'.
| Ludovic Courtès |
2021-12-18 | style: Refer to source files by absolute file names....Previously, "guix style PACKAGE" would end up modifying a file looked up
under the current directory since the location associated with PACKAGE
is usually a relative file name.
* guix/scripts/style.scm (absolute-location): New procedure.
(simplify-package-inputs): Use it.
| Ludovic Courtès |
2021-12-18 | import: elpa: Support ‘upstream-name’ property....* guix/import/elpa.scm: (guix-package->elpa-name): New procedure.
(latest-release): Use it.
* tests/elpa.scm ("guix-package->elpa-name: without 'upstream-name' property")
("guix-package->elpa-name: with 'upstream-name' property"): Test it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Xinglu Chen |
2021-12-17 | lint: Adjust patch file length check....With the switch to "ustar" format in commit
bdf5c16ac052af2ca9d5c3acc4acbc08fd9fdbea, the maximum file length has
increased.
* guix/lint.scm (check-patch-file-names): Adjust margin used to check for
patch file lengths. Increase allowable patch file length appropriate to new
tar format. Extend warning to explain that long files may break 'make dist'.
* tests/lint.scm: Update tests accordingly.
| Vagrant Cascadian |
2021-12-17 | guix hash: Add git serializer....* guix/scripts/hash.scm (git-hash): New procedure.
(%options): Use it.
* tests/guix-hash.sh: Test it.
* doc/guix.texi: Update.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| zimoun |
2021-12-17 | guix hash: Add 'serializer' option....* guix/scripts/hash.scm (%options): Deprecate 'recursive', add 'serializer'.
(%default-options): Add 'serializer'.
(nar-hash): New procedure.
(default-hash): New procedure.
(guix-hash)[file-hash]: Use them.
(show-help): Adjust.
* tests/guix-hash.scm: Adjust.
* doc/guix.texi: Update.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| zimoun |
2021-12-17 | guix hash: Support several files....* guix/scripts/hash.scm (guix-hash): Allow several files.
[file-hash]: Catch system-error.
[formatted-hash]: New procedure.
* tests/guix-hash.sh: Add test.
* doc/guix.texi (Invoking guix hash): Mention "one or more files".
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| zimoun |
2021-12-17 | import: Beautify descriptions when appropriate....* guix/import/elpa.scm (elpa-package->sexp)
* guix/import/gnu.scm (gnu-package->sexp)
* guix/import/hackage.scm (hackage-module->sexp)
* guix/import/minetest.scm (make-minetest-sexp)
* guix/import/opam.scm (opam->guix-package)
* guix/import/pypi.scm (make-pypi-sexp): Beautify descriptions.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Xinglu Chen |
2021-12-17 | import: utils: Wrap lines in description....* guix/import/utils.scm (beautify-description): Use ‘fill-paragraph’; add
optional ‘length’ argument.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Xinglu Chen |
2021-12-16 | lint: 'kdoctools' is typically used only while building....* guix/lint.scm (check-inputs-should-be-native): Add kdoctools.
| Leo Famulari |
2021-12-15 | offload: Autoload Guile-SSH....This halves the number of syscalls made by "guix offload" during startup
and delays loading of Guile-SSH until there are actually machines to
offload to.
* guix/scripts/offload.scm: Remove unused module imports. Autoload many
modules.
(check-ssh-zlib-support): New procedure.
(process-request): Call it when accepting.
(guix-offload): Remove 'zlib-support?' check, now moved to
'check-ssh-zlib-support'.
| Ludovic Courtès |
2021-12-15 | offload: Delay call to 'read-derivation-from-file'....This significantly reduces the amount of work done by "guix offload"
when there's no machine to offload to.
* guix/scripts/offload.scm (process-request): Add call to
'read-derivation-from-file', moved from...
(guix-offload): ... here.
| Ludovic Courtès |
2021-12-15 | build-system/linux-module: Wrap with build variables....* guix/build-system/linux-module.scm (linux-module-build): Wrap the
builder gexp WITH-BUILD-VARIABLES to restore %build-inputs after commit
7d873f194ca69d6096d28d7a224ab78e83e34fe1 removed all old certainties.
Reported by lfam in #guix.
| Tobias Geerinckx-Rice |
2021-12-14 | build-system: emacs: Do not rely on input labels in the 'build' phase....This commit repairs the Emacs build system for packages using the new
label-less "guix style". Tested with emacs-libgit.
* guix/build/emacs-build-system.scm (build): Use search-input-file to locate
emacs.
| Maxim Cournoyer |
2021-12-14 | guix: Fix typo in last commit....* guix/build/emacs-build-system.scm (make-autoloads): Fix typo.
| Nicolas Goaziou |
2021-12-14 | guix: Do not assume "emacs" label in make-autoloads....* guix/build/emacs-build-system.scm (make-autoloads): Look for "emacs"
executable independently on the label.
| Nicolas Goaziou |
2021-12-13 | packages: 'modify-inputs' preserves and introduces input labels if needed....Fixes a bug whereby, in an expression like this:
(modify-inputs lst
(delete ...)
(prepend ...))
the 'delete' clause would have no effect because 'prepend' would pass it
a label-less input list.
* guix/packages.scm (inputs-sans-labels): Remove.
(modify-inputs): In the 'prepend' and 'append' cases, preserve/add input
labels instead of removing them.
| Ludovic Courtès |
2021-12-13 | Merge branch 'master' into core-updates-frozen | Ludovic Courtès |
2021-12-12 | progress: Rate limit drawing in the progress-reporter/bar....This helps smooth the output in cases where the bar is updated very quickly,
for example in guix weather where it's computing derivations.
* guix/progress.scm (progress-reporter/bar): Wrap the drawing code with the
rate-limited procedure.
| Christopher Baines |
2021-12-12 | narinfo: Do not repeat slash when building nar URLs....* guix/narinfo.scm (narinfo-maker): When one of URLS is relative, do not
repeat trailing slash if it's already present in CACHE-URL.
| Ludovic Courtès |
2021-12-12 | substitutes: Build correct narinfo URLs for cache URLs without trailing slash....Fixes <https://issues.guix.gnu.org/51441>.
Reported by Z572 <873216071@qq.com> and Peng Mei Yu <pengmeiyu@riseup.net>.
Previously, passing '--substitute-urls=https://mirror.sjtu.edu.cn/guix',
without a trailing slash, would fail due to incorrectly constructed
narinfo URLs. Users would have to explicitly add a trailing slash.
* guix/substitutes.scm (narinfo-request): Ensure BASE has a trailing
slash.
| Ludovic Courtès |
2021-12-12 | challenge: Store item contents are returned in canonical order....This allows the 'delete-duplicates' call in 'differing-files' to have
the intended effect.
Before that, a "guix challenge" invocation with three builds of a store
item, two of which are identical, would lead 'differing-files' to not
print anything, as in this example:
$ ./pre-inst-env guix challenge python-numpy
/gnu/store/…-python-numpy-1.17.3 contents differ:
local hash: 07var0wn8fywxchldz5pjqpnlavrlbc8s81aqwsqyi0i7qlh6ka7
https://ci.guix.gnu.org/nar/lzip/…-python-numpy-1.17.3: 07var0wn8fywxchldz5pjqpnlavrlbc8s81aqwsqyi0i7qlh6ka7
https://bordeaux.guix.gnu.org/nar/lzip/…-python-numpy-1.17.3: 0cbl3q19bshb6ddz8xkcrjzkcmillsqii4z852ybzixyp7rg40qa
1 store items were analyzed:
- 0 (0.0%) were identical
- 1 (100.0%) differed
- 0 (0.0%) were inconclusive
With this change, 'differing-files' prints additional info as intended:
differing file:
/lib/python3.8/site-packages/numpy/distutils/fcompiler/__pycache__/vast.cpython-38.pyc
* guix/scripts/challenge.scm (archive-contents): Add tail call to
'reverse'.
(store-item-contents): Rewrite to use 'scandir' and recursive calls
instead of 'file-system-fold'.
| Ludovic Courtès |
2021-12-12 | challenge: Use SRFI-71 instead of SRFI-11....* guix/scripts/challenge.scm (port-sha256*, call-with-nar): Use SRFI-71.
| Ludovic Courtès |
2021-12-10 | Merge remote-tracking branch 'signed/master' into core-updates | Mathieu Othacehe |
2021-12-10 | environment: Suggestion code gracefully handles empty "/bin" directories....* guix/scripts/environment.scm (suggest-command-name): Handle the case
where 'scandir' returns #f.
| Ludovic Courtès |
2021-12-10 | shell: When using '-D -f', '-D' has no effect on remaining packages....Fixes <https://issues.guix.gnu.org/52093>.
Reported by Konrad Hinsen <konrad.hinsen@fastmail.net>.
* guix/scripts/shell.scm (%options): In "--file" handler, add call to
'ensure-ad-hoc'.
* tests/guix-shell.sh: Add test.
| Ludovic Courtès |
2021-12-10 | shell: Fix '--file' description in '--help' output....Reported by pinoaffe on #guix.
* guix/scripts/shell.scm (show-help): Fix '--file' description.
| Ludovic Courtès |
2021-12-05 | Merge remote-tracking branch 'origin/master' into core-updates-frozen | Ricardo Wurmus |
2021-12-05 | import: PyPI: Validate GPG signatures when applicable....* guix/import/pypi.scm (<distribution>): Fix funny typo.
(latest-release): When the distribution has a cryptographic signature, pass it
along to UPSTREAM-SOURCE.
| Marius Bakke |
2021-12-03 | build-system: emacs: Keep -pkg.el files....Partly fixes <https://bugs.gnu.org/48331> -- package descriptions can now be
found in the install directory.
* guix/build/emacs-build-system.scm (%default-exclude): Remove "-pkg\\.el$".
| Liliana Marie Prikler |
2021-12-03 | guix system vm: Add --no-graphic CLI argument....It configures QEMU to use the tty it was started in for IO (as opposed to
opening a separate graphical window). This enables copy-pasting and
scrollback. Exit QEMU with C-a x.
* gnu/system/vm.scm (system-qemu-image/shared-store-script): Also add the
'-nographic' QEMU argument when called with #:graphic? #false.
* guix/scripts/system.scm (system-derivation-for-action): Propagate
the #:graphic? keyword arg.
(perform-action): Add and propagate the #:graphic? keyword arg.
(show-help): Add --no-graphic CLI arg.
(%options): Process the new --no-graphic CLI arg.
(process-action): Feed in the CLI arg through the #:graphic? keyword arg.
* doc/guix.texi (Invoking guix system): Add example to combine guix system and
invoking the vm start script into one command. Split the description of the
various options into separate paragraphs. Add a paragraph to describe
--no-graphic.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
| Attila Lendvai |
2021-12-01 | build-system: haskell: Add ‘hackage-uri’ procedure....* guix/build-system/haskell (hackage-uri): New procedure.
* guix/import/hackage.scm (hackage-module->sexp, latest-release): Use it.
* tests/hackage.scm (match-ghc-foo, match-ghc-foo-6, match-ghc-foo-revision,
match-ghc-foo-import): Adjust accordingly.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Xinglu Chen |
2021-12-01 | inferior: 'cached-channel-instance' does not cache unauthenticated instances....The comment saying that caching is fine even when AUTHENTICATE? is false
was true in commit 838ac881ec98cb71d4a4e4b20773573f99ecbf25, but it
became incorrect in 7cfd789150f448cf5256b88915bae4163cc9db03, which
no longer calls 'latest-channel-instances' on cache hits.
* guix/inferior.scm (cached-channel-instance): Do not create CACHED when
AUTHENTICATE? is false.
| Ludovic Courtès |
2021-11-27 | gexp: 'file-append' correctly handles bases without an expander....This fixes this use case:
(file-append (let-system ...) ...)
* guix/gexp.scm (file-append-compiler): When BASE lacks an expander,
delegate to LOWERED.
* tests/gexp.scm ("let-system in file-append"): New test.
| Ludovic Courtès |
2021-11-27 | build: julia-build-system: Correctly disable parallel tests....* guix/build/julia-build-system.scm: Remove phases trailing #t.
[phases]{check}: Omit the --procs argument when parallel tests are to be
disabled. Substract 1 from the number of parallel jobs otherwise.
Co-authored-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
| zimoun |
2021-11-25 | profiles: Also handle package objects in GDK-PIXBUF-LOADERS-CACHE-FILE....* guix/profiles.scm (gdk-pixbuf-loaders-cache-file): Handle both a string or a
package object for GDK-PIXBUF, as these are the two types that can be returned
by MANIFEST-LOOKUP-PACKAGE.
Suggested-by: Ludovic Courtès <ludo@gnu.org>
| Maxim Cournoyer |
2021-11-25 | profiles: Fix the gdk-pixbuf-loaders-cache-file hook....'guix install' would otherwise fail with a wrong type argument whet attempting
to call the hook.
* guix/profiles.scm (gdk-pixbuf-loaders-cache-file) <file-append>: Replace
with...
<string-append>: ... this, as gdk-pixbuf has already been expanded to a string
at this point.
| Maxim Cournoyer |
2021-11-25 | build: julia-build-system: Add support for parallel tests....The tests are defined by the script 'test/runtests.jl' from packages and the
parallelism depends on the implementation of this script. Therefore, 'julia'
is launched using local worker processes accordingly with 'parallel?'.
* guix/build/julia-build-system.scm (check): Set the JULIA_CPU_THREADS
environment variable and invoke julia with the '--procs' option.
* guix/build-system/julia.scm (julia-build)[parallel-tests?]: New argument.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
| zimoun |
2021-11-23 | style: Add '--dry-run'....* guix/scripts/style.scm (edit-expression/dry-run): New procedure.
(simplify-package-inputs): Add #:edit-expression parameter.
(%options, show-help): Add '--dry-run'.
(guix-style): Honor '--dry-run'.
| Ludovic Courtès |
2021-11-23 | Merge branch 'master' into core-updates-frozen | Ludovic Courtès |
2021-11-23 | guix graph: Show '-M' in '--help' output....* guix/scripts/graph.scm (show-help): Add -M shorthand.
| Ludovic Courtès |
2021-11-23 | system: Add swap flags....* gnu/system/file-systems.scm (swap-space)[priority, discard?]: Add
them.
* guix/build/syscalls.scm (SWAP_FLAG_PREFER, SWAP_FLAG_PRIO_MASK,
SWAP_FLAG_PRIO_SHIFT, SWAP_FLAG_DISCARD): Add them.
* gnu/build/file-systems.scm (swap-space->flags-bit-mask): Add it.
* gnu/services/base.scm (swap-service-type): Use it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Josselin Poiret |
2021-11-23 | docker: Enable arm64 docker image building for 'guix pack'....* guix/docker.scm (build-docker-image): Recognize "aarch64".
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Collin J. Doering |
2021-11-22 | import: opam: Fix error on unknown field value....* guix/import/opam.scm (metadata-ref): Return #f if field is present,
but its content is of unknown form.
| Julien Lepiller |
2021-11-20 | build: syscalls: Add a SET-CHILD-SUBREAPER! procedure....* guix/build/syscalls.scm (PR_SET_CHILD_SUBREAPER): New variable.
(set-child-subreaper!): New procedure.
| Maxim Cournoyer |
2021-11-19 | import: opam: Warn instead of leave when fetching fails....* guix/import/opam.scm (opam-featch): Warn instead of leave when fetching
fails.
Signed-off-by: Julien Lepiller <julien@lepiller.eu>
| zimoun |
2021-11-19 | build-system/asdf: Don't fail in sbcl-package->cl-source-package on non-packa......Inputs can be non-packages, for instance (origin ...).
sbcl-package->cl-source-package used to fail if such inputs were present in
the parent sbcl-* package.
* guix/build-system/asdf.scm (package-with-build-system): Fix
'has-from-build-system?' function.
| Pierre Neidhardt |
2021-11-18 | derivations: Officially deprecate 'build-expression->derivation'....This procedure had been semi-deprecated since 2014, starting with commit
21b679f6944f4e1f09f949322f5242b761dc22a7!
* guix/derivations.scm (build-expression->derivation): Define using
'define-deprecated'.
| Ludovic Courtès |
2021-11-18 | build-system/go: Update cross-compilation support to new interface....* guix/build-system/go.scm (go-cross-build): Remove 'store', 'native-drvs'
and 'target-drvs'; add 'source', 'build-inputs', 'target-inputs', and
'host-inputs'. Change default value of #:phases.
[builder]: Rewrite as a gexp.
Rewrite body to call 'gexp->derivation' instead of
'build-expression->derivation'.
| Ludovic Courtès |
2021-11-18 | gnupg: Honor GnuPG's configuration for the key server....The previous default "pool.sks-keyservers.net" doesn't seem to work anymore;
besides, users know best.
* guix/gnupg.scm (%openpgp-key-server): Default to #f, meaning not provided.
(gnupg-receive-keys): Make SERVER and KEYRING keyword arguments. Adjust doc.
Provide the '--keyserver' argument only when %openpgp-key-server is not #f.
(gnupg-verify*): Do not set a default value for SERVER. Adjust accordingly.
| Maxim Cournoyer |