Age | Commit message (Expand) | Author |
2022-12-13 | ui: Take package upstream name into account when searching....* guix/ui.scm (%package-metrics): Add PACKAGE-UPSTREAM-NAME*.
* tests/ui.scm ("package-relevance and upstream name"): New test.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| Lars-Dominik Braun |
2022-12-13 | packages: Add 'package-upstream-name*'....* guix/packages.scm (package-upstream-name*): New procedure.
* tests/packages.scm ("package-upstream-name*"): New test.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Lars-Dominik Braun |
2022-12-12 | Merge branch 'version-1.4.0' | Ludovic Courtès |
2022-12-12 | pki: 'public-keys->acl' deduplicates entries....Reported by Tobias Geerinckx-Rice <me@tobias.gr>
in <https://issues.guix.gnu.org/50892>.
* guix/pki.scm (public-keys->acl): Add call to 'delete-duplicates'.
* tests/pki.scm ("public-keys->acl deduplication"): New test.
| Ludovic Courtès |
2022-12-10 | deduplicate: Use 'sendfile' only with file ports....Fixes a regression introduced in b129026e2e242e9068158ae6e6fcd8d7c5ea092e.
* guix/store/deduplication.scm (dump-file/deduplicate): Use 'sendfile'
only when INPUT' is a file port.
| Ludovic Courtès |
2022-12-10 | deduplicate: Use 'sendfile' for small file copies....* guix/store/deduplication.scm (dump-file/deduplicate): Use 'sendfile'
instead of 'dump-port'.
* tests/store-deduplication.scm ("copy-file/deduplicate, below %deduplication-minimum-size"):
New test.
| Ludovic Courtès |
2022-12-09 | environment: '-C' doesn't throw when the NSS is dysfunctional....Previously, if the name service switch was dysfunctional, as can happen
on foreign distros lacking nscd, "guix shell -C" would crash with a
backtrace on the uncaught 'getpwuid' exception. To address that, catch
the exception and deal with it gracefully.
Reported by remsd1 on #guix.
* guix/scripts/environment.scm (launch-environment/container): Wrap
'getpwuid' call in 'false-if-exception'.
| Ludovic Courtès |
2022-12-08 | records: 'match-record' checks fields at macro-expansion time....This allows 'match-record' to be more efficient (field offsets are
computed at compilation time) and to report unknown fields at
macro-expansion time.
* guix/records.scm (map-fields): New macro.
(define-record-type*)[rtd-identifier]: New procedure.
Define TYPE as a macro and use a separate identifier for the RTD.
(lookup-field, match-record-inner): New macros.
(match-record): Rewrite in terms of 'match-error-inner'.
* tests/records.scm ("match-record, simple")
("match-record, unknown field"): New tests.
* gnu/services/cuirass.scm (cuirass-shepherd-service): Rename 'log-file'
local variable to 'main-log-file'.
* gnu/services/getmail.scm (serialize-getmail-configuration-file): Move
after <getmail-configuration-file> definition.
| Ludovic Courtès |
2022-12-09 | environment: '-C' doesn't throw when the NSS is dysfunctional....Previously, if the name service switch was dysfunctional, as can happen
on foreign distros lacking nscd, "guix shell -C" would crash with a
backtrace on the uncaught 'getpwuid' exception. To address that, catch
the exception and deal with it gracefully.
Reported by remsd1 on #guix.
* guix/scripts/environment.scm (launch-environment/container): Wrap
'getpwuid' call in 'false-if-exception'.
| Ludovic Courtès |
2022-12-08 | gnu-maintenance: 'generic-html' updater ignores invalid host names....Previously "guix refresh xkbset" for example would crash with a
getaddrinfo-error because the domain name is invalid. Now it reports
failure to update.
Reported by Tyler Wolf <tyler@twolf.io>
in <https://issues.guix.gnu.org/59598>.
* guix/gnu-maintenance.scm (latest-html-updatable-release): Return #f
upon 'getaddrinfo-error' as well.
| Ludovic Courtès |
2022-12-06 | gnu: linux-libre: Move documentation to a separate package....* gnu/packages/linux.scm (linux-libre-5.15-source)
(linux-libre-5.10-source): Do not apply linux-libre-infodocs-target.patch.
(make-linux-libre): Remove BUILD-DOC? argument, and
adjust patches conditional.
(make-linux-libre*): Likewise. Remove build-doc? validation.
[arguments]: Move documentation related phases to the new
linux-libre-documentation.
[native-inputs]: Move the documentation related native inputs to
linux-libre-documentation.
(linux-libre-documentation): New variable.
* guix/build-system/linux-module.scm
(make-linux-module-builder) [arguments]: Do not delete build-doc and
install-doc phases, which no longer exist for linux-libre.
| Maxim Cournoyer |
2022-12-06 | gnu: Resolve derivation lint warnings....Computing derivations for these systems (i686-gnu and riscv32-linux) fails
with an error like the following:
could not find bootstrap binary 'tar' for system
* gnu/packages/mes.scm (mescc-tools)[supported-systems]: Remove riscv32-linux.
* guix/packages.scm (%hurd-system): Remove i686-gnu.
Signed-off-by: Christopher Baines <mail@cbaines.net>
| Christopher Baines |
2022-12-05 | Merge branch 'version-1.4.0' | Ludovic Courtès |
2022-12-05 | substitute: Fix typo in 'open-connection-for-uri/cached' docstring....* guix/scripts/substitute.scm (open-connection-for-uri/cached):
Fix docstring.
| Ludovic Courtès |
2022-12-02 | modules: Recognize #:declarative?....This addition has become necessary since commit
54003af85cc5b689bd328b30617c93ed2f5fd647, which makes use
of #:declarative? in modules produced by 'make-config.scm'.
Reported by zimoun <zimon.toutoune@gmail.com>.
* guix/modules.scm (extract-dependencies): Recognize #:declarative?,
which was introduced in Guile 3.0.8.
| Ludovic Courtès |
2022-12-02 | modules: Recognize #:declarative?....This addition has become necessary since commit
54003af85cc5b689bd328b30617c93ed2f5fd647, which makes use
of #:declarative? in modules produced by 'make-config.scm'.
Reported by zimoun <zimon.toutoune@gmail.com>.
* guix/modules.scm (extract-dependencies): Recognize #:declarative?,
which was introduced in Guile 3.0.8.
| Ludovic Courtès |
2022-12-02 | syscalls: Adjust for lack of 'libutil.so' on glibc >= 2.34....This is a re-implementation of 3c8b6fd94ceb1e898216929e8768fb518dbf1de9
done in a way that works for both glibc >= 2.34 and earlier versions.
* guix/build/syscalls.scm (syscall->procedure): When LIBRARY is true,
fall back to global symbols if (dynamic-link library) fails.
(cherry picked from commit 3f6c32a88fc7a4d707ae1ed8ef3f7bd995461aff)
| Ludovic Courtès |
2022-12-01 | Revert "gnu: linux-libre: Move info manual to doc output."...This reverts commit 748ec628826cea3faa3679074d87fae9bc810080. It broke the
linux-libre-module-builder like so:
builder for
`/gnu/store/293jxydym9z7ck7afmrjqhiw3xpfs4i1-linux-libre-module-builder-6.0.10.drv'
failed to produce output path
`/gnu/store/ghmp1q5w6r1s9364rz53jd42152wgz2v-linux-libre-module-builder-6.0.10-doc'
for reasons difficult to understand.
| Maxim Cournoyer |
2022-12-02 | records: 'match-record' checks fields at macro-expansion time....This allows 'match-record' to be more efficient (field offsets are
computed at compilation time) and to report unknown fields at
macro-expansion time.
* guix/records.scm (map-fields): New macro.
(define-record-type*)[rtd-identifier]: New procedure.
Define TYPE as a macro and use a separate identifier for the RTD.
(lookup-field, match-record-inner): New macros.
(match-record): Rewrite in terms of 'match-error-inner'.
* tests/records.scm ("match-record, simple")
("match-record, unknown field"): New tests.
* gnu/services/cuirass.scm (cuirass-shepherd-service): Rename 'log-file'
local variable to 'main-log-file'.
* gnu/services/getmail.scm (serialize-getmail-configuration-file): Move
after <getmail-configuration-file> definition.
| Ludovic Courtès |
2022-12-01 | build: kconfig: Add new module to modify defconfig files....* guix/build/kconfig.scm: New file.
* Makefile.am: Register it.
* gnu/packages/bootloaders.scm (make-u-boot-package)
(make-u-boot-sunxi64-package): Add DEFCONFIGS and CONFIGS arguments. Remove
dead code.
(u-boot-am335x-boneblack, u-boot-pinebook)
(u-boot-novena,u-boot-rockpro64-rk3399): Simplify packages by using the new
keyword arguments.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
| Stefan |
2022-12-01 | gnu: linux-libre: Move info manual to doc output....The kernel Linux is installed in the system profile, which means the manual
was not easily discoverable. Move it to the "doc" output, so that users can
install the Linux documentation explicitly in their user profile without
pulling the whole Linux package.
* gnu/packages/linux.scm (make-linux-libre*) [outputs]: Conditionally add a
"doc" output.
[phases] {install-doc}: Install the info manual to the doc output, an create a
"linux" symlink to it for convenience.
* guix/build-system/linux-module.scm (make-linux-module-builder): Delete the
"doc" output, if present.
| Maxim Cournoyer |
2022-11-29 | build: linux-module: Do not inherit the install-doc phase....This is a followup commit to aaf1f18b8044142515ff868bcbd2b72b81ced3ec, itself
a followup to 82c43b276dd5e60c81ad2c040a9d945befc4bc88 (gnu:
linux-libre: Enable building info doc).
* guix/build-system/linux-module.scm
(make-linux-module-builder) [phases]: Also delete inherited 'install-doc phase.
Reported-by: John Kehayias <john.kehayias@protonmail.com>
| Maxim Cournoyer |
2022-11-29 | build: linux-module: Do not inherit the build-doc phase....This is a followup commit to 82c43b276dd5e60c81ad2c040a9d945befc4bc88 (gnu:
linux-libre: Enable building info doc).
* guix/build-system/linux-module.scm
(make-linux-module-builder) [phases]: Delete inherited 'build-doc phase.
Reported-by: John Kehayias <john.kehayias@protonmail.com>
| Maxim Cournoyer |
2022-11-29 | import/cran: Add package name mapping....* guix/import/cran.scm (transform-sysname): Add mapping from sqlite3 to sqlite.
| Ricardo Wurmus |
2022-11-26 | licenses: Add EUPL 1.1....* guix/licenses.scm (eupl1.1): New variable.
Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
| Antero Mejr |
2022-11-24 | guix: Upgrade to Bioconductor 3.16....* guix/build-system/r.scm (bioconductor-uri): Bump Bioconductor version to
3.16.
* guix/import/cran.scm (%bioconductor-version): Same.
| zimoun |
2022-11-23 | offload: Increase default 'overload-threshold' value....When offloading to a single machine, the previous default value would
lead 'guix offload' to wait possibly for several minutes between
subsequent builds until normalized load would finally go below 0.6.
Increasing it mitigates that.
* guix/scripts/offload.scm (<build-machine>)[overload-threshold]: Bump
to 0.8.
* doc/guix.texi (Daemon Offload Setup): Likewise.
| Ludovic Courtès |
2022-11-22 | reconfigure: Use SRFI-71 instead of SRFI-11....* guix/scripts/system/reconfigure.scm (upgrade-shepherd-services)
(channel-relations): Use SRFI-71.
| Ludovic Courtès |
2022-11-22 | offload: Gracefully handle 'guix repl' protocol errors....Fixes <https://issues.guix.gnu.org/59447>.
Reported by Mathieu Othacehe <othacehe@gnu.org>.
Previously, if a machine had a buggy 'guix repl', 'guix offload' would
crash with a backtrace instead of just ignoring the machine.
* guix/scripts/offload.scm (remote-inferior*): New procedure.
(check-machine-availability)[if-true]: New procedure.
Use 'remote-inferior*' and 'if-true'.
(check-machine-status): Use 'remote-inferior*'.
| Ludovic Courtès |
2022-11-22 | inferior: Raise '&inferior-protocol-error' on invalid response....* guix/inferior.scm (&inferior-protocol-error): New condition type.
(read-repl-response): Add default 'match' clause and raise it.
| Ludovic Courtès |
2022-11-21 | guix: modify-input: Recommend prepend instead of append....* doc/guix.texi (Defining Package Variants): Document the "prepend" clause of
modify-inputs first.
* guix/packages.scm (modify-inputs): use "prepend" in the docstring.
Signed-off-by: Christopher Baines <mail@cbaines.net>
| Vivien Kraus |
2022-11-20 | style: '-f' reads input files as UTF-8 by default....Reported by mirai on #guix.
* guix/scripts/style.scm (format-whole-file): Wrap body in
'with-fluids'. Pass #:guess-encoding to 'call-with-input-file'.
| Ludovic Courtès |
2022-11-20 | file-systems: Always do recursive bind mounts....Fixes <https://issues.guix.gnu.org/59185>.
* guix/build/syscalls.scm (MS_REC): New variable.
* gnu/build/file-systems.scm (mount-flags->bit-mask): Set MS_REC bit when
bind-mounting.
| Ricardo Wurmus |
2022-11-20 | scripts: Use translations for guix.pot for service descriptions....Previously, service descriptions appeared in both guix.pot and
packages.pot, but only translations of packages.pot were used.
Now, translations are only done with guix.pot.
This is better, because translators are more likely to translate
guix.pot, and is also easier, because files in gnu/{home/,}services
need to be in po/guix/POTFILES.in anyway and po/guix/Makevars
already acts on the 'description' keyword because of lint checkers.
* guix/scripts/home.scm (service-type-description-string):
Use translations from guix.pot.
* guix/scripts/system/search.scm (service-type-description-string)
(service-type->recutils): Likewise.
* po/packages/POTFILES.in: Move files in gnu/services to ...
* po/guix/POTFILES.in: ... here.
| pelzflorian (Florian Pelz) |
2022-11-20 | import: egg: Fix typo in docstring....* gnu/import/egg.scm (Commentary): Fix typo in Commentary docstring.
Signed-off-by: Christopher Baines <mail@cbaines.net>
| jgart |
2022-11-19 | scripts: describe: Add branch information to recutils output....* guix/scripts/describe.scm (channel->recutils): Add branch information.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| jgart |
2022-11-19 | scripts: describe: Add branch information to json output....* guix/scripts/describe.scm (channel->json): Add branch information.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| jgart |
2022-11-19 | pack: Remove use of GOOPS in 'deb' backend....* guix/scripts/pack.scm (debian-archive)[build]: Remove use of (oop goops).
Introduce 'keyword-ref' and use it instead of 'get-keyword'.
| Ludovic Courtès |
2022-11-18 | import/utils: spdx-string->license: Support '+' operator....Previously, '+' was supported only via special cases for deprecated
GNU identifiers like 'GPL-N+'. This commit adds support
for other uses of '+', such as 'AFL-2.0+' and 'LPPL-1.0+'.
Strictly speaking, '+' is an operator, not part of the SPDX license
identifier, but it is useful to handle it here.
* guix/import/utils.scm (spdx-string->license): Support '+' operator.
* tests/import-utils.scm ("spdx-string->license"): Test it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Philip McGrath |
2022-11-18 | import/utils: spdx-string->license: Match case-insensitively....SPDX specifies that license identifiers (unlike the 'AND', 'OR', and
'WITH' operators) are matched case-insensitively.
* guix/import/utils.scm (%spdx-license-identifiers): New variable.
(spdx-string->license): Search in '%spdx-license-identifiers' using
'string-ci=?'.
* tests/import-utils.scm ("spdx-string->license"): New test.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| Philip McGrath |
2022-11-18 | import/utils: spdx-string->license: Fix incorrect docstring....The result of 'spdx-string->license' is a symbol, not a license object.
* guix/import/utils.scm (spdx-string->license): Fix docstring.
(license->symbol): Mention 'license:' prefix in docstring.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Philip McGrath |
2022-11-13 | guix: Replace defective freemirror.org....This ‘mirror’ is particularly problematic because it's the only one checked
by ‘guix refresh’.
* guix/gnu-maintenance.scm (%savannah-base): Substitute freedif.org.
* guix/download.scm (%mirrors): Likewise.
Reported by sash-kan on #guix.
| Tobias Geerinckx-Rice |
2022-11-16 | import/cran: Add package mapping for freetype....* guix/import/cran.scm (transform-sysname): Map "freetype2" to "freetype".
| Ricardo Wurmus |
2022-11-15 | shell: Detect --symlink spec problems early....* guix/scripts/pack.scm (symlink-spec-option-parser): Remove extraneous
char-set. Raise an exception when the target is an absolute file name.
(guix-pack): Move with-error-handler earlier.
* guix/scripts/shell.scm (guix-shell): Likewise.
* guix/scripts/environment.scm (guix-environment): Wrap the whole
guix-environment* call with the with-error-handling handler.
* tests/guix-environment-container.sh: Add tests.
* tests/guix-pack.sh: Adjust symlink spec.
| Maxim Cournoyer |
2022-11-15 | guix: shell: Add '--symlink' option....* guix/scripts/pack.scm (%options): Extract symlink parsing logic to...
(symlink-spec-option-parser): ... here.
(self-contained-tarball/builder): Add a comment mentioning why a relative file
name is used for the link target.
* guix/scripts/environment.scm (show-environment-options-help): Document new
--symlink option.
(%default-options): Add default value for symlinks.
(%options): Register new symlink option.
(launch-environment/container): Add #:symlinks argument and extend doc, and
create symlinks using evaluate-populate-directive.
(guix-environment*): Pass symlinks arguments to launch-environment/container.
* doc/guix.texi (Invoking guix shell): Document it.
* tests/guix-shell.sh: Add a --symlink (negative) test.
* tests/guix-environment-container.sh: Add tests.
| Maxim Cournoyer |
2022-11-14 | self: Mark the generation (guix config) as non-declarative....Fixes <https://issues.guix.gnu.org/58927>.
Reported by Maxime Devos <maximedevos@telenet.be>
and Marius Bakke <marius@gnu.org>.
Starting from 076e825dc5d585943ce820a279fffe4af09757fb, "guix --version"
would print "0" as the version number, due to '%guix-version' being
inlined in (guix ui) when compiling '*core-modules*' in (guix self).
* guix/self.scm (make-config.scm): Pass #:declarative? #f.
| Ludovic Courtès |
2022-11-11 | gnu-maintenance: 'release-file?' excludes "valgrind-3.20.0.RC1.tar.bz2"....* guix/gnu-maintenance.scm (%alpha-tarball-rx): Add "." before
"(alpha|beta|...)".
* tests/gnu-maintenance.scm ("release-file?"): Add test for Valgrind.
| Ludovic Courtès |
2022-11-11 | gnu-maintenance: 'gnu' updater prefers tarball with same compression....Fixes <https://issues.guix.gnu.org/59168>.
Previously 'guix build make --with-latest=make' would pick ".tar.lz",
rather than "tar.gz", because "tar.lz" happened to come first in the
<upstream-source> 'urls' field.
* guix/gnu-maintenance.scm (latest-gnu-release)[archive-type]
[better-tarball?]: New variables.
Sort TARBALLS according to BETTER-TARBALL?.
| Ludovic Courtès |
2022-11-11 | upstream: Factorize 'package-archive-type'....* guix/upstream.scm (package-archive-type): New procedure.
(package-update/url-fetch): Use it.
| Ludovic Courtès |
2022-11-11 | grafts: Run with a UTF-8 locale....Fixes <https://issues.guix.gnu.org/55968>.
Reported by Maxime Devos <maximedevos@telenet.be>.
* guix/grafts.scm (%graft-with-utf8-locale?): New parameter.
(graft-derivation/shallow)[glibc-locales, set-utf8-locale]: New
variables.
[build]: Use 'set-utf8-locale'.
* tests/gexp.scm, tests/grafts.scm, tests/packages.scm: Set
'%graft-with-utf8-locale?' to #f.
| Ludovic Courtès |