This is a followup to a7c8e68dc5: this commit
introduced a new binding in the body of field values, which could silently
shadow outer bindings. This new warning catches potentially unwanted
shadowing.
* guix/records.scm (make-syntactic-constructor)[check-shadowing]: New
procedure.
[wrap-field-value]: Use it.
* tests/records.scm ("define-record-type* & inherited value shadowing"): New
test.
Change-Id: I81ad14cf10da7213e9f8db987c8b0bd4c41acba2
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7424
Previously version lists containing zeroes would be rejected; furthermore, #f
would be returned even though callers expect a string:
$ guix refresh emacs-counsel
guix refresh: Package version for counsel contains non numeric part.
Backtrace:
[…]
In guix/utils.scm:
925:32 5 (_ #f "0.15.1")
In unknown file:
4 (string->pointer #f #<undefined>)
[…]
guix/ui.scm:920:18: In procedure string->pointer: Wrong type argument in position 1 (expecting string): #f
* guix/import/elpa.scm (elpa-version->string): Accept zeroes in
‘elpa-version’. Raise an error instead of returning #f on failure. Clarify
error messages.
Change-Id: I1ab1d6892b434747d91e9090bb5f2f3c93f1ee92
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7484
This test had been failing for a few months in part due to this change at
www.gnu.org.
* tests/derivations.scm ("fixed-output derivation, network access, external host"):
Pass #:headers to ‘http-get’.
Change-Id: Ife54e65b2665704af433df669df0d4010b49884c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7470
Fixes a regression on Guix System introduced in
c4298638ca (from guix/guix#4178) where files in
/etc, such as /etc/services, would be symlinks. Consequently, the chroot of
fixed-output derivations would contain a dangling symlink for /etc/services,
leading to name resolution failures in the chroot.
This also relates to 82f84f5e7f.
* nix/libstore/build.cc (DerivationGoal::startBuilder): Add call to
‘canonPath’.
Change-Id: If34c8e74447ffc03d9fa81a1ea6bc0aef7c4d0b3
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
--list-updaters loops through all packages and all updaters to see whether they
match. The gnu-ftp updater used to use official-gnu-packages to fetch a list of
packages from web.cvs.savannah.gnu.org. official-gnu-packages only caches the
result if it succeeds; but does not cache upon a timout or 5xx status.
official-gnu-packages times out after a minute and is called for all 30k+
packages. refresh --list-updaters could therefore take 30000 minutes. Now
--list-updaters uses official-gnu-packages* (from lint.scm) that memoizes the
result also on failure, thereby limiting the time to 1 minute.
* guix/gnu-maintenance.scm: Add official-gnu-packages* from guix/lint.scm.
Call official-gnu-packages* from gnu-package?
* guix/lint.scm: Move official-gnu-packages* to guix/gnu-maintenance.scm
Change-Id: I5e2e094bfb1042b03db47e119ced0e94b49b417c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #4949
* gnu/packages/messaging.scm (gajim): Update to 2.4.4.
[inputs]: Replace gspell with libspelling, gtk+ with gtk, and
gtksourceview-4 with gtksourceview.
Remove libappindicator.
Add libadwaita, gst-plugins-good, python-httpx and python-truststore.
Change-Id: I53210c3509fc341c92ef518fe1f2c428c322a9a4
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/messaging.scm (python-nbxmpp): Update to 7.1.0.
[source]: Switch to git-fetch.
[arguments]<#:phases>{check}: Drop replacement to run unittest.
<#:test-backend>: Use unittest.
[native-inputs]: Remove python-setuptools and python-wheel.
[propagated-inputs]: Add python-setuptools.
Change-Id: I2caeb3c56347fb41e4ff4063be8d48a85fe6909f
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/patches/ppsspp-disable-upgrade-and-gold.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it here.
* gnu/packages/emulators.scm (aemu-postoffice-source, libchdr-source)
(rcheevos-source): New variables.
(ppsspp): New variable.
* gnu/packages/virtualization.scm (umoci):
[phases]{build-and-install-man-pages}: New phase.
[propagated-inputs]: Move from here ...
[native-inputs]: ... to here; add go-md2man.
Change-Id: Ia01a814fbbc41ae025522986c40cec20a00c0f3a
* gnu/packages/golang-web.scm (go-github-com-googleapis-gax-go-v2): Update to 2.19.0.
[arguments] <go>: Use go-1.25.
<tests?, test-subdirs>: Run some portion of tests.
[propagated-inputs]: Remove go-github-com-google-go-cmp; add
go-go-opentelemetry-io-otel, go-go-opentelemetry-io-otel-metric, and
go-go-opentelemetry-io-otel-sdk-metric.
[native-inputs]: Add go-github-com-google-go-cmp.
Change-Id: I6269aa8fed491f393e11d002b75d332f8651d712
This is a following up 635994b023 commit
and discussion in <https://codeberg.org/guix/guix/pulls/7459>.
* gnu/packages/music.scm (mopidy):
[inputs]: Remove python-gst, python-pygobject, python-pykka,
python-requests, and python-tornado.
[propagated-inputs]: Add python-gst, python-pygobject, python-pykka,
python-requests, and python-tornado.
Change-Id: If1daf18a24ddfabc673289d60fac200ad7ecac73
* gnu/services/web.scm (sogogi-service-type): New services.
(sogogi-serialize-section, sogogi-serialize-field)
(sogogi-serialize-string, sogogi-serialize-list-of-strings)
(sogogi-serialize-sogogi-user, sogogi-serialize-sogogi-location)
(sogogi-serialize-list-of-sogogi-user): New procedures.
(sogogi-user, sogogi-location)
(sogogi-configuration): New record types.
(sogogi-account-service): New variable.
(sogogi-config-file, sogogi-shepherd-service): New procedures.
* gnu/tests/web.scm (%test-sogogi): Add tests for the service.
* doc/guix.texi (Web Services): Document it.
Change-Id: I5cc6dd84d6c7c8d5d13b685853b19c5d433ed7e5
* gnu/packages/librewolf.scm (librewolf): Update to 149.0-1.
Contains fixes for:
CVE-2026-4684: Race condition, use-after-free in the Graphics: WebRender component
CVE-2026-4685: Incorrect boundary conditions in the Graphics: Canvas2D component
CVE-2026-4686: Incorrect boundary conditions in the Graphics: Canvas2D component
CVE-2026-4687: Sandbox escape due to incorrect boundary conditions in the Telemetry component
CVE-2026-4688: Sandbox escape due to use-after-free in the Disability Access APIs component
CVE-2026-4689: Sandbox escape due to incorrect boundary conditions, integer overflow in the XPCOM component
CVE-2026-4690: Sandbox escape due to incorrect boundary conditions, integer overflow in the XPCOM component
CVE-2026-4691: Use-after-free in the CSS Parsing and Computation component
CVE-2026-4692: Sandbox escape in the Responsive Design Mode component
CVE-2026-4693: Incorrect boundary conditions in the Audio/Video: Playback component
CVE-2026-4694: Incorrect boundary conditions, integer overflow in the Graphics component
CVE-2026-4695: Incorrect boundary conditions in the Audio/Video: Web Codecs component
CVE-2026-4696: Use-after-free in the Layout: Text and Fonts component
CVE-2026-4697: Incorrect boundary conditions in the Audio/Video: Web Codecs component
CVE-2026-4698: JIT miscompilation in the JavaScript Engine: JIT component
CVE-2026-4699: Incorrect boundary conditions in the Layout: Text and Fonts component
CVE-2026-4700: Mitigation bypass in the Networking: HTTP component
CVE-2026-4701: Use-after-free in the JavaScript Engine component
CVE-2026-4722: Privilege escalation in the IPC component
CVE-2026-4702: JIT miscompilation in the JavaScript Engine component
CVE-2026-4723: Use-after-free in the JavaScript Engine component
CVE-2026-4724: Undefined behavior in the Audio/Video component
CVE-2026-4704: Denial-of-service in the WebRTC: Signaling component
CVE-2026-4705: Undefined behavior in the WebRTC: Signaling component
CVE-2026-4706: Incorrect boundary conditions in the Graphics: Canvas2D component
CVE-2026-4707: Incorrect boundary conditions in the Graphics: Canvas2D component
CVE-2026-4708: Incorrect boundary conditions in the Graphics component
CVE-2026-4709: Incorrect boundary conditions in the Audio/Video: GMP component
CVE-2026-4710: Incorrect boundary conditions in the Audio/Video component
CVE-2026-4711: Use-after-free in the Widget: Cocoa component
CVE-2026-4725: Sandbox escape due to use-after-free in the Graphics: Canvas2D component
CVE-2026-4712: Information disclosure in the Widget: Cocoa component
CVE-2026-4713: Incorrect boundary conditions in the Graphics component
CVE-2026-4714: Incorrect boundary conditions in the Audio/Video component
CVE-2026-4715: Uninitialized memory in the Graphics: Canvas2D component
CVE-2026-4716: Incorrect boundary conditions, uninitialized memory in the JavaScript Engine component
CVE-2026-4717: Privilege escalation in the Netmonitor component
CVE-2026-4726: Denial-of-service in the XML component
CVE-2025-59375: Denial-of-service in the XML component
CVE-2026-4727: Denial-of-service in the Libraries component in NSS
CVE-2026-4728: Spoofing issue in the Privacy: Anti-Tracking component
CVE-2026-4718: Undefined behavior in the WebRTC: Signaling component
CVE-2026-4719: Incorrect boundary conditions in the Graphics: Text component
CVE-2026-4720: Memory safety bugs fixed in Firefox ESR 140.9, Thunderbird ESR 140.9, Firefox 149 and Thunderbird 149
CVE-2026-4729: Memory safety bugs fixed in Firefox 149 and Thunderbird 149
CVE-2026-4721: Memory safety bugs fixed in Firefox ESR 115.34, Firefox ESR 140.9, Thunderbird ESR 140.9, Firefox 149 and
hunderbird 149
Change-Id: I40e76bf852087d71f8df869103c846032e8552c9
Signed-off-by: Ian Eure <ian@retrospec.tv>