summary refs log tree commit diff
AgeCommit message (Collapse)Author
2021-05-10system: vm-image.tmpl: Add a crutch to allow refreshing the resolution.Maxim Cournoyer
Inspired by https://github.com/jollheef/appvm/commit/1270b2e209bc002e69bbe6351ad5b04b7facfcc8. The price to pay is about 5% of a CPU core usage in the guest in the worst scenario. * gnu/system/examples/vm-image.tmpl (auto-update-resolution-crutch): New mcron job. [services]: Extend the mcron-service with it.
2021-05-10Update NEWS.Ludovic Courtès
2021-05-09describe: Gracefully handle profiles that lack provenance info.Ludovic Courtès
Fixes <https://bugs.gnu.org/48313>. Previously, 'current-channels' would return the empty list when 'current-profile' is true but the profile lacks provenance info. * guix/describe.scm (current-channels)[build-time-metadata]: New procedure. Call it when 'manifest-entry-channel' returns #f for all of ENTRIES. * guix/scripts/describe.scm (guix-describe): When PROFILE is true, pass third argument to 'display-profile-info'.
2021-05-09diagnostics, ui: Adjust to 'read-error' and 'syntax-error' in Guile 3.0.6.Ludovic Courtès
* guix/diagnostics.scm (source-properties->location): Add clause for vectors. * guix/ui.scm (report-load-error): Tweak 'read-error' handling for 3.0.6. * tests/guix-package.sh: Relax regexp for the "unbound variable" diagnostic check. * tests/guix-system.sh: Adjust "missing closing paren" check for 3.0.6. * tests/records.scm (location-alist): New procedure. ("define-record-type* & wrong field specifier") ("define-record-type* & wrong field specifier, identifier") ("define-record-type* & duplicate initializers"): Use it.
2021-05-08gnu: guix: Update to 566982b.Maxim Cournoyer
2021-05-08gnu: guix: Update to 1.3.0rc2.Maxim Cournoyer
2021-05-07system: Add wget to %base-packages-networking. v1.3.0rc2Maxim Cournoyer
Fixes <https://issues.guix.gnu.org/43530>. Wget is typically included with most GNU/Linux distributions. It adds about ~3 MiB to the system size. * gnu/system.scm (%base-packages-networking): Add the wget package.
2021-05-06gnu: system: Add SPICE capability to the VM image.Maxim Cournoyer
* gnu/system/examples/vm-image.tmpl (services) [spice-vdagent-service-type]: Add service. [slim-service-type] <xorg-configuration>: Add the xf86-video-qxl module.
2021-05-06services: spice-vdagent: Clear the socket file prior to starting.Maxim Cournoyer
This fixes the following issue where spice-vdagent would fail to start if the spice-vdagent-sock socket file already existed: spice-vdagentd: Fatal could not create the server socket /run/spice-vdagentd/spice-vdagent-sock: Error binding to address: Address already in use The requirement is also modified to depend on dbus-system, a cue taken from upstream's own systemd service file (see 'data/spice-vdagentd.service' in the sources). * gnu/services/spice.scm (spice-vdagent-activation): Delete procedure. (spice-vdagent-shepherd-service): Fix indentation. [requirement]: Replace udev by dbus-system. [start]: Ensure the spice-vdagentd run-time directory exists and that the spice-vdagent-sock socket file does *not* exist before forking the daemon.
2021-05-06gnu: spice-vdagent: Update to 0.21.0 and enable GTK+ support.Maxim Cournoyer
* gnu/packages/spice.scm (spice-vdagent): Update to 0.21.0. Remove trailing #t. [make-flags]: New argument. [phases]{fix-test-termination}: New phase. [inputs]: Add gtk+. [native-inputs]{procps}: New input.
2021-05-05swh: Adjust for compatibility with Guile 2.2's (web client).Ludovic Courtès
Guile <= 2.2.7 did not support #:verify-certificate? so work around it. * guix/swh.scm (http-get*, http-post*) [! guile-3]: Add variant for Guile 2.2.
2021-05-05gnu: guile2.2-guix: Add missing dependencies.Ludovic Courtès
Reported by Maxime Devos <maximedevos@telenet.be>. * gnu/packages/package-management.scm (guile2.2-guix)[inputs] [propagated-inputs]: Add GUILE2.2-LIB, GUILE2.2-ZLIB, and GUILE2.2-LZLIB.
2021-05-05gnu: guile-lzlib: Add Guile 2.2 variant.Ludovic Courtès
* gnu/packages/guile.scm (guile2.2-lzlib): New variable.
2021-05-05gnu: guile-zlib: Add Guile 2.2 variant.Ludovic Courtès
* gnu/packages/guile.scm (guile2.2-zlib): New variable.
2021-05-05services: Fix the spice-vdagent service.Maxim Cournoyer
* gnu/services/spice.scm (spice-vdagent-activation): Update runtime directory from /var/run/spice-vdagentd to /run/spice-vdagentd. (spice-vdagent-service-type): Specify a default value and fix indentation.
2021-05-05build: Do not compress the (already compressed) VM qcow2 images.Maxim Cournoyer
The qcow2 format supports compression, and the qcow2 type supported by 'guix system image' produces compressed qcow2 images. * Makefile.am (release): Do not re-compress the qcow2 VM images with xz. * doc/guix.texi (Running Guix in a VM): Adjust VM image URL.
2021-05-05maint: Remove a workaround in Makefile.am.Maxim Cournoyer
This workaround was made obsolete by commit a23789bbbd, which prevented the PO files from being spuriously updated upon running 'make'. * Makefile.am (release) <git checkout>: Remove command.
2021-05-05.gitignore: Ignore .tarball-ignore.Maxim Cournoyer
This file can be useful to fix a version string when experimenting with 'make release'. * .gitignore: Add a pattern to ignore .tarball-version.
2021-05-05doc: Update the OpenPGP key used to sign the release.Maxim Cournoyer
It was discussed on guix-devel that the manual only needs to have correct instructions for the latest release. * doc/guix.texi (OPENPGP-SIGNING-KEY-ID): Update to my public OpenPGP key. (OPENPGP-SIGNING-KEY-URL): Adjust URL.
2021-05-05Revert "doc: Update to cover for an additional OpenPGP signing key."Maxim Cournoyer
This reverts commit b9fb13b28437a254683273094f189396a6e1421d. Per discussions simply updating OPENPGP-SIGNING-KEY-ID and OPENPGP-SIGNING-KEY-URL will be enough.
2021-05-05guix-install.sh: Exit early if Guix is already installed.Maxim Cournoyer
* etc/guix-install.sh (sys_create_store): Move the check & exit before The Guix binary archive is unpacked. Re-indent tar extraction command.
2021-05-05guix-install.sh: Propose automatically fetching OpenPGP keys.Maxim Cournoyer
Via, for example, yes | ./guix-install.sh. * etc/guix-install.sh (prompt_yes_no): New procedure. (chk_gpg_keyring, sys_authorize_build_farms): Use it.
2021-05-05guix-install.sh: Please the shellcheck linter.Maxim Cournoyer
* etc/guix-install.sh <FUNCNAME>: Explicitly refer to the first item of the FUNCNAME array. (ROOT_HOME): Replace variable by ~root directly; manually expanding it via echo was not necessary. (chk_gpg_keyring): Use an if branch for the exit to avoid a warning about expression precedence. (chk_term) <ansi_term>: Remove unused variable. (guix_get_bin) <wget, gpg>: Test the commands directly. Use an array for the wget arguments, which can then be properly expanded. (sys_create_store): Disable SC1090 for the source command, as we don't care about following the sourced script. <_msg>: Reuse the GUIX_PROFILE variable in the message. (sys_create_build_user) <getent>: Test the command directly.
2021-05-05gnu: guix: Phases refer to #:system, #:target, and #:native-inputs.Ludovic Courtès
* gnu/packages/package-management.scm (guix)[arguments]: In 'copy-bootstrap-guile' and 'wrap-program' phases, refer to #:system, #:native-inputs, and #:target instead of unquoting (%current-system) and (%current-target-system).
2021-05-05gnu: guix: Avoid Bash wrapper.Ludovic Courtès
The Bash wrapper created by 'wrap-program' creates an extra indirection and may annoyingly emit locale warnings: /gnu/store/…-bash-minimal-5.0.16/bin/bash: warning: setlocale: LC_ALL: cannot change locale (wtf) This warning would typically show up when running Guix, as produced by 'guix pack guix', on a foreign distro, annihilating efforts made in 1d4ab335b22a93e01c2eb1eb3e93fc6534157040 and 8a973abc6f7eebfcd8a904bfbb99cb9f86f66ef0. * gnu/packages/package-management.scm (guix)[arguments]: In 'wrap-program' phase, remove 'string-join' call for PATH and GOPATH. Replace 'wrap-program' call with a 'substitute*' form. Remove (when target ...) form. [inputs]: Remove "bash-minimal" added in commit 38b9af7c92344a17b6680ebd2aeea14171f84a1c and no longer needed.
2021-05-05gnu: guix: Add run-time dependency on Guile-Lib.Ludovic Courtès
This is a followup to 02e2e093e858e8a0ca7bd66c1f1f6fd0a1705edb, which added Guile-Lib as an input but did not add it to the wrapper's search path. * gnu/packages/package-management.scm (guix)[arguments]: In 'wrap-program' phase, add GUILE-LIB to DEPS.
2021-05-04Update NEWS.Ludovic Courtès
2021-05-04locale: Remove glibc 2.29 from '%default-locale-libcs'.Ludovic Courtès
Having 2.29 is most likely no longer justified. Removing it reduces the closure size returned by: guix size $(guix system build gnu/system/install.scm) from 1.6G to 1.5G. * gnu/system/locale.scm (%default-locale-libcs): Remove GLIBC-2.29.
2021-05-03doc: Update to cover for an additional OpenPGP signing key.Maxim Cournoyer
The upcoming 1.3.0 release will be signed with my OpenPGP key; subsequent releases may also be. * doc/guix.texi (OPENPGP-SIGNING-KEY-ID, OPENPGP-SIGNING-KEY-URL): Rename to... (OPENPGP-SIGNING-KEY-ID-1, OPENPGP-SIGNING-KEY-URL-1): ... these, respectively. (OPENPGP-SIGNING-KEY-ID-2, OPENPGP-SIGNING-KEY-URL-2): New variables. (Binary Installation): Adjust to cover for the new key. (USB Stick and DVD Installation): Likewise. (Invoking guix refresh): Adjust accordingly.
2021-05-03maint: Do not xz-compress ISO images.Ludovic Courtès
The xz-compressed image is 23% smaller than the original ISO image (with built-in zlib compression), but the extra decompression step is unconventional and often a hindrance for users. See discussion at <https://lists.gnu.org/archive/html/guix-devel/2021-04/msg00497.html>. * Makefile.am (release): Do not compress ISO images. * doc/guix.texi (USB Stick and DVD Installation): Remove ".xz" suffix from URL and file name. (Copying to a USB Stick, Burning on a DVD): Remove introductory words, @enumerate, and first item. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2021-05-03nls: Guard against the list of translated Texinfo files becoming stale.Julien Lepiller
This change is so that the list of translated Texinfo files remain in sync with the list of supported (translated) languages. * doc/local.mk (MANUAL_LANGUAGES, COOKBOOK_LANGUAGES): New variables. (lang_to_texinfos): New function. (TRANSLATED_INFO): Use it to construct the list of files. Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2021-05-03doc: Update the URL of the system VM image.Maxim Cournoyer
This is a follow up to commit ebf5d77eab, which added the qcow2 file extension to the VM image file name. * doc/guix.texi (Running Guix in a VM): Update URL.
2021-05-03nls: Remove the doc-po-update target.Maxim Cournoyer
As discussed with Julien Lepiller on IRC, updating the PO files is not useful. This change removes the target and associated rules that allowed updating them. This has the benefit of not having the PO files updated automatically when generating the .pot files, which was causing spurious changes under the po sub-directory. * po/doc/local.mk (make-update-po-files-rule): Remove function and its uses. (doc-po-update): Remove target.
2021-05-03build: Replace the doc-po-update prerequisite by doc-pot-update.Maxim Cournoyer
What is really required for the dist target is the presence of the auto-generated .pot files; updating the PO files is not necessary nor desirable (it causes spurious changes in the tree). * Makefile.am (dist) <doc-po-update>: Replace prerequisite with... <doc-pot-update>: ... this one.
2021-05-03nls: Do not update po files on first make invocation.Julien Lepiller
We need to update the minimal gettext version to take advantage of new features. Before this patch, the first make invocation would modify po/guix and po/packages po files, and we advised to run `git checkout po` to clean the changes. * configure.ac (AM_GNU_GETTEXT_VERSION): Update to 0.19.1. * po/guix/Makevars: Set PO_DEPENDS_ON_POT to no. * po/packages/Makevars: Set PO_DEPENDS_ON_POT to no. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2021-05-03Makefile: Reimplement `download-po` target.Julien Lepiller
The weblate API rate limit is very close to the number of files we need to download. The previous implementation did not add new translations. * Makefile.am (download-po): Update target. (make-download-po-rule, make-check-po-rule): Remove functions.
2021-05-01gnu: xfce4-settings: Add gsettings-desktop-schemas.Brendan Tildesley
* gnu/packages/xfce.scm (xfce4-settings):[propagated-inputs]: Add gsettings-desktop-schemas. This makes it appear in the system profile via the xfce service. This fixes a bug where changing icon theme causes xfce4-appearance-settings to crash with the error: GLib-GIO-ERROR **: 15:41:45.828: Settings schema 'org.gnome.desktop.interface' is not installed Trace/breakpoint trap Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-05-01gnu: openjdk: Disallow references to the JDK used for build.Ludovic Courtès
This ensures JDKs don't unintentionally keep references to the one used to build them, as reported at <https://issues.guix.gnu.org/31719#7> and fixed by 97a43db8b4416a1450aa61737edba9cf4126cf1c. * gnu/packages/java.scm (icedtea-8)[arguments]: Add #:disallowed-references. (openjdk9)[arguments]: Likewise. (openjdk10)[arguments]: Likewise. (openjdk11)[arguments]: Likewise.
2021-05-01gnu: openjdk: Avoid non-top-level 'use-modules'.Ludovic Courtès
* gnu/packages/java.scm (icedtea-8, openjdk9, openjdk11)[arguments]: Replace non-top-level 'use-modules' by '@'.
2021-05-01gnu: openjdk: Fix library substitution when libraries aren't found.Carlo Zancanaro
* gnu/packages/java.scm (icedtea-8, openjdk9, openjdk11)[arguments]: Change 'find-library' to always return a string. Change 'find-library' callers to use 'string-append' rather than 'format'. Starting from 97a43db8b4416a1450aa61737edba9cf4126cf1c, 'find-library' could return #f and JNI substitutions would emit a literal "#f". Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2021-05-01gnu: openjdk: Clean up runtime dependencies between Java versions.Carlo Zancanaro
* gnu/packages/java.scm (icedtea-8, openjdk9, openjdk11): Do not consider icedtea/openjdk input paths when rewriting JNI libraries. Signed-off-by: Andreas Enge <andreas@enge.fr>
2021-05-01guix-install.sh: Add support for more than one signing key.Maxim Cournoyer
The forthcoming 1.3.0 release will be signed with my personal GnuPG key; the installation script need to tell users how fetch it. * etc/guix-install.sh (OPENPGP_SIGNING_KEY_ID): Remove variable. (GPG_SIGNING_KEYS): New associative array. (chk_gpg_keyring): Process all the keys contained in the above array. (main) <GUIX_BINARY_FILE_NAME>: Double quote variable.
2021-04-30build: Correct a mistake in the guix-manual.pot rule.Maxim Cournoyer
This is a follow-up to commit 0d353b06ec. * po/doc/local.mk: Fix function name in comment. (%D%/guix-manual.pot): Refer to *all* the prerequisites via the $^ special variable rather than $<, which only refers to the first one. Reported-by: Julien Lepiller <julien@lepiller.eu>
2021-04-29gnu: guix: Update to 6fd7f16.Maxim Cournoyer
2021-04-29gnu: guix: Update to 1.3.0rc1.Maxim Cournoyer
2021-04-29build: Make doc-po-update and doc-pot-update targets idempotent. v1.3.0rc1Maxim Cournoyer
It used to be that the running the doc-po-update and doc-pot-update targets would redo the same work on every run. This change splits the problem in smaller chunks and specifies build dependencies in a way that outputs only get rebuilt when their inputs changed. * po/doc/local.mk (DOC_PO_FILES): Harmonize escapes. (POT_OPTIONS): Re-indent uniformly. (doc-po-update-%, doc-po-update-cookbook-%): Re-implement with... (make-update-po-files-rule): ... this new function. (TMP_POT_FILES): Remove variable. (%D%/%.pot, %D%/guix-manual.pot): New pattern rules. (doc-pot-update, doc-po-update): Adjust prerequisites accordingly.
2021-04-29build: Build the guix.pot-update and contributing.pot-update targets only once.Maxim Cournoyer
* po/doc/local.mk (doc-pot-update): Fix an issue where guix.pot-update an contributing.pot-update were built twice.
2021-04-29build: Have the release target depend on 'all'.Maxim Cournoyer
Otherwise, the scripts/guix wrapper may not be present, which would cause the user's guix wrapper to be used, which in turn would manipulate GUILE_LOAD_PATH in a way that would cause its Guix modules to take precedence over those of the tree, with confusion ensuing. * Makefile.am (release): Add 'all' as a prerequisite.
2021-04-29build: Add the qcow2 file extension to the VM image.Maxim Cournoyer
Including the extension of the format type of the image is not only useful to the user, but also to software. One example is GNOME Boxes, which will reject an image with an unknown file extension. This should be fixed more definitely in Guix, where the output of the VM image derivation would already have the correct file extension but for now this will do. * Makefile.am (release): Add .qcow2 to the file extension of the VM images.
2021-04-29build: Update and add new comments for the release target.Maxim Cournoyer
* Makefile.am (release): Update and add new comments.