summary refs log tree commit diff
AgeCommit message (Collapse)Author
2022-12-18installer: final: Stop guix-daemon before accessing store database.Ludovic Courtès
As part of fixing <https://issues.guix.gnu.org/59784>, make sure /var/guix/db.sqlite is only copied while guix-daemon is stopped. * gnu/installer/final.scm (call-with-mnt-container): Add FIXME comment. (install-system): Copy DATABASE-FILE and SAVED-DATABASE only when 'guix-daemon' is stopped. Add logging lines.
2022-12-18Update NEWS.Ludovic Courtès
2022-12-18daemon: Make "opening file" error messages distinguishable.Ludovic Courtès
* nix/libstore/build.cc (DerivationGoal::openLogFile): Customize "opening file" error message. * nix/libutil/hash.cc (hashFile): Likewise. * nix/libutil/util.cc (readFile, writeFile): Likewise.
2022-12-17Update NEWS.Marius Bakke
2022-12-15install: Make sure uvesafb can be loaded.Ludovic Courtès
Fixes <https://issues.guix.gnu.org/60010>. Reported by pelzflorian (Florian Pelz) <pelzflorian@pelzflorian.de>. Previously, the 'modprobe' executable would try and fail to load the module from /lib/modules/*. Set 'LINUX_MODULE_DIRECTORY' to make sure 'modprobe' looks for the module in the right place. * gnu/system/install.scm (uvesafb-shepherd-service)[modprobe]: New variable. In 'start' method, invoke it instead of KMOD/bin/modprobe.
2022-12-15doc: Use VM image file name consistently.Ludovic Courtès
Previously, what "/tmp/qemu-image" refers to could be unclear at first. * doc/guix.texi (Running Guix in a VM): Use the original image file name instead of /tmp/qemu-image. * po/doc/guix-manual.de.po, po/doc/guix-manual.es.po, po/doc/guix-manual.fr.po, po/doc/guix-manual.pt_BR.po, po/doc/guix-manual.ru.po, po/doc/guix-manual.zh_CN.po: Adjust accordingly.
2022-12-14doc: Fix formatting for 'computed-file'.Bruno Victal
* doc/guix.texi (G-Expressions): Fix formatting for 'computed-file'. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-12-14doc: Verify the release with my own OpenPGP key.Ludovic Courtès
* doc/guix.texi (OPENPGP-SIGNING-KEY-ID, OPENPGP-SIGNING-KEY-URL): Switch to my key.
2022-12-10gnu: guix: Update to 1.4.0rc2.Ludovic Courtès
2022-12-10deduplicate: Use 'sendfile' only with file ports. v1.4.0rc2Ludovic Courtès
Fixes a regression introduced in b129026e2e242e9068158ae6e6fcd8d7c5ea092e. * guix/store/deduplication.scm (dump-file/deduplicate): Use 'sendfile' only when INPUT' is a file port.
2022-12-10install: 'umount-cow-store' retries upon EBUSY.Ludovic Courtès
Possibly fixes <https://issues.guix.gnu.org/59884>. * gnu/build/install.scm (umount*): New procedure. (unmount-cow-store): Use it instead of 'umount'.
2022-12-10installer: Detect mapped installation devices.Mathieu Othacehe
Fixes: <https://issues.guix.gnu.org/59823> * gnu/installer/parted.scm (mapped-device?, mapped-device-parent-partition): New procedures. (eligible-devices): Detect mapped installation devices using the new procedures.
2022-12-10deduplicate: Use 'sendfile' for small file copies.Ludovic Courtès
* 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.
2022-12-09installer: Print progress bars and such as soon as \r is read.Ludovic Courtès
Fixes <https://issues.guix.gnu.org/59922>. Previously progress bars and related things would be buffered by 'run-external-command-with-line-hooks' until \n is read. * gnu/installer/utils.scm (run-external-command-with-line-hooks): Use 'read-delimited' rather than 'get-line'. Pass 'concat as the last argument. (%display-line-hook): Remove. (run-command): Use 'display' instead of '%display-line-hook'. (%syslog-line-hook): Add "\n" when LINE doesn't end in \n. (%installer-log-line-hook): Do not add an extra newline. (installer-log-line): Add an extra newline.
2022-12-09services: nscd: Use nscd from 'glibc-final' on native builds.Ludovic Courtès
This reduces the closure size of systems by removing one glibc copy--namely (@ (gnu packages base) glibc) in addition to (@ (gnu packages commencement) glibc-final). * gnu/services/base.scm (<nscd-configuration>)[glibc]: Change default value to use 'let-system' and 'canonical-package' as appropriate.
2022-12-09system: Remove unused yggdrasil OS template.Ludovic Courtès
This file was added in fe1cd098d2b83737e96f19438612291f5a9316e4 but it's not referenced from anywhere, not even gnu/local.mk. Furthermore, we don't normally add full OS examples for the purposes of illustrating the use of a single service. * gnu/system/examples/yggdrasil.tmpl: Remove.
2022-12-09environment: '-C' doesn't throw when the NSS is dysfunctional.Ludovic Courtès
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'.
2022-12-09guix-install.sh: Authorize all project build farms at once.Tobias Geerinckx-Rice
* etc/guix-install.sh (sys_authorize_build_farms): Iterate over all hosts. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2022-12-08services: base: Use 'match-record' instead of 'match'.Ludovic Courtès
* gnu/services/base.scm (agetty-shepherd-service) (mingetty-shepherd-service) (nscd.conf-file) (udev-shepherd-service) (udev-etc) (gpm-shepherd-service) (network-set-up/linux) (network-tear-down/linux) (static-networking-shepherd-service) (greetd-agreety-tty-session-command) (greetd-agreety-tty-xdg-session-command): Use 'match-record' instead of 'match'. (guix-accounts): Use <guix-configuration> accessors. (udev-service-type): Use <udev-configuration> accessors.
2022-12-08home: services: Use 'match-record' instead of 'match'.Ludovic Courtès
* gnu/home/services/mcron.scm (home-mcron-shepherd-services): Use 'match-record' instead of 'match'. * gnu/home/services/shells.scm (home-bash-extensions): Likewise. * gnu/home/services/xdg.scm (serialize-xdg-desktop-entry): Likewise.
2022-12-08doc: Recommend 'match-record'.Ludovic Courtès
* doc/contributing.texi (Data Types and Pattern Matching): Recommend 'match-record'.
2022-12-08records: 'match-record' checks fields at macro-expansion time.Ludovic Courtès
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.
2022-12-06services: fail2ban: Start server in the foreground.Ludovic Courtès
Previously, we were passing '-b', thereby starting the server in the background. Consequently the 'start' method could complete before the server was ready to accept connections on its socket, leading to non-deterministic test failures. Reported by Mathieu Othacehe <othacehe@gnu.org>. * gnu/services/security.scm (fail2ban-shepherd-service): Change FAIL2BAN-ACTION to invoke 'fail2ban-client'. Change 'start' method to use 'make-forkexec-constructor'; start the server in the foreground with '-f' and pass '-x' to force execution of the server, as done upstream in 'fail2ban.service.in'.
2022-12-06services: fail2ban: Remove unnecessary Shepherd 'modules' field.Ludovic Courtès
* gnu/services/security.scm (fail2ban-shepherd-service): Remove unnecessary 'modules' field.
2022-12-06services: fail2ban: 'stop' returns #f when the dameon is stopped.Ludovic Courtès
* gnu/services/security.scm (fail2ban-shepherd-service): Change FAIL2BAN-ACTION to return an 'invoke' gexp. Adjust the shepherd 'start' and 'stop' fields accordingly. Have 'stop' return #f on success.
2022-12-06gnu: texinfo, info-reader: Do not run tests when cross-compiling.Ludovic Courtès
Fixes a regression introduced in a3264f31df9774ea514e18ed8e7b6bcb44061edc. Reported by Mathieu Othacehe <othacehe@gnu.org>. * gnu/packages/texinfo.scm (texinfo)[arguments]: Change #:tests? to not run tests when cross-compiling.
2022-12-06image: Clarify comment.Ludovic Courtès
* gnu/system/image.scm: Adjust comment.
2022-12-06tests: docker-system: Increase image size.Ludovic Courtès
* gnu/tests/docker.scm (run-docker-system-test)[vm]: Increase 'disk-image-size'.
2022-12-06system: vm: Non-volatile 'run-vm.sh' creates a CoW image.Ludovic Courtès
Previously, copying the image would consume a lot of space and was I/O-intensive, to the point that the marionette connection timeout of 20s could be reached when running tests like "docker-system". * gnu/system/vm.scm (common-qemu-options): Pass 'format=' for each '-drive' option. (system-qemu-image/shared-store-script)[copy-image]: New variable. [builder]: Use it when VOLATILE? is false.
2022-12-06Revert "tests: install: Fix iso-image-installer test."Maxim Cournoyer
This reverts commit 0f66ef9aa99d2043abccbc80d858bdeca57534ac. e2fsprogs is now included in the installation operating system since 34f69bc6e6ea555929ecca83ee7592f5261ff5f2, making this workaround obsolete. Suggested-by: Ludovic Courtès <ludo@gnu.org>
2022-12-06install: Add missing e2fsprogs utility.Maxim Cournoyer
* gnu/system/install.scm (%installer-disk-utilities): Add e2fsprogs. Reported-by: Adam Kandur <kefironpremise@gmail.com>
2022-12-06system: Rename and move %base-packages-disk-utilities.Maxim Cournoyer
Rationale: It is only used in INSTALLATION-OS and doesn't make sense to be used in another context, given that file systems now automatically pull their dependencies since commit 45eac6cdf5c8d9d7b0c564b105c790d2d2007799 (services: Add file system utilities to profile). * gnu/system.scm (%base-packages-disk-utilities): Deprecate and rename to... * gnu/system/install.scm (%installer-disk-utilities): ... this. (installation-os) [packages]: Adjust accordingly.
2022-12-06system: Add e2fsprogs to %base-packages-utils.Maxim Cournoyer
Rationale: Even when not using an ext file system, the utilities provided by e2fsprogs are useful, for example to set the copy-on-write attribute of a Btrfs file system. * gnu/system.scm (%base-packages-utils): Add e2fsprogs.
2022-12-05gnu: julia-documenter: Fix test suite regression.zimoun
* gnu/packages/julia-xyz.scm (julia-documenter)[arguments]<#:phases>: Substitute a work around to fix the change of 'git submodule' default behaviour introduced by Git v2.38.1. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-12-05installer: Log provenance data.Ludovic Courtès
* gnu/installer.scm (provenance-sexp): New procedure. (installer-program)[installer-builder]: Add 'installer-log-line' call.
2022-12-04nls: Update translations.Julien Lepiller
po/packages/vi.po: New file. po/packages/LINGUAS: Add it.
2022-12-04services: configuration: Rename location accessor to "source-location".Maxim Cournoyer
Fixes <https://issues.guix.gnu.org/59423>. * gnu/services/configuration.scm (define-configuration-helper): Rename the accessor of the %location field from "NAME-location" to "NAME-source-location". Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Reported-by: Pierre Langlois <pierre.langlois@gmx.com>
2022-12-03build: Add 'sanity-check-next.py' to the distribution.Ludovic Courtès
Reported by Vagrant Cascadian <vagrant@debian.org>. * Makefile.am (AUX_FILES): Add 'sanity-check-next.py'.
2022-12-02Update NEWS.Ludovic Courtès
2022-12-02modules: Recognize #:declarative?.Ludovic Courtès
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.
2022-12-02syscalls: Adjust for lack of 'libutil.so' on glibc >= 2.34.Ludovic Courtès
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)
2022-11-30gnu: guix: Update to 1.4.0rc1.Ludovic Courtès
2022-11-30maint: Adjust sed script from 'release' target. v1.4.0rc1Ludovic Courtès
This is a followup to fdafd404325413da4d5fdd717c84e57a51c60fe2. This effect would to set 'GUIX_DISPLAYED_VERSION' to the empty string. * Makefile.am (release): Remove '/v' from sed script for GUIX_DISPLAYED_VERSION.
2022-11-30build: Build gnu/packages/*.go in two passes.Ludovic Courtès
This works around <https://issues.guix.gnu.org/59717>, whereby heap usage would go beyond what's reasonable, preventing compilation of the 'guix' package on armhf-linux. This is a followup to ef82ba9dd94369926eb13325d5e7da4306d23dd7. * Makefile.am (MODULES_PACKAGES1, MODULES_PACKAGES): New variables. (MODULES_PACKAGES): Define in terms of them and use :=. (MODULES_CORE, MODULES_SYSTEM, MODULES_CLI, MODULES_PO): Define with :=.
2022-11-28maint: Leave 'gcc-toolchain' out for i586-gnu.Ludovic Courtès
This is a temporary measure to work around the fact that we're currently lacking the necessary CPU power and human power to build everything up to 'gcc-toolchain'. * etc/release-manifest.scm (%base-packages/hurd): Comment out "gcc-toolchain" for now.
2022-11-28Merge commit 'master' into version-1.4.0Ludovic Courtès
2022-11-28gnu: texinfo: Disable tests on GNU/Hurd.Ludovic Courtès
* gnu/packages/texinfo.scm (texinfo)[arguments]: Add #:tests? argument.
2022-11-28gnu: cl-calispel: Fix homepage URL.Paul A. Patience
* gnu/packages/lisp-xyz.scm (sbcl-calispel)[home-page]: Fix URL. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
2022-11-28gnu: Add cl-with-user-abort.Paul A. Patience
* gnu/packages/lisp-xyz.scm (sbcl-with-user-abort, cl-with-user-abort, ecl-with-user-abort): New variables. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
2022-11-28gnu: Add aerc.(unmatched-parenthesis
* gnu/packages/mail.scm (aerc): New variable. Signed-off-by: Raghav Gururajan <rg@raghavgururajan.name>