https://github.com/libarchive/libarchive/pull/2101
* gnu/packages/backup.scm (libarchive)[replacement]: New field.
(libarchive/fixed): New variable.
* gnu/packages/patches/libarchive-remove-potential-backdoor.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
Change-Id: I939e9b842b10d1a78125da4a4599c38d9c037079
Fixes CVE-2024-31080, CVE-2024-31081, CVE-2024-31081, and CVE-2024-31083. See
the X.Org Security Advisory,
<https://lists.x.org/archives/xorg/2024-April/061615.html>, for details.
* gnu/packages/xorg.scm (xorg-server): Update to 21.1.12.
Change-Id: I384b91344f122f02e6261e2061bc45439cb03f7c
Fixes CVE-2024-31080, CVE-2024-31081, and CVE-2024-31083. See the X.Org
Security Advisory, <https://lists.x.org/archives/xorg/2024-April/061615.html>,
for details.
* gnu/packages/xorg.scm (xorg-server-xwayland): Update to 23.2.5.
Change-Id: I8d6b8f65bb6d06374a1ea925b5ff2a399a3efeac
These names should be more descriptive.
* guix/store/database.scm (path-id): Rename to select-valid-path-id.
(sqlite-register): Rename to register-valid-path.
(register-items): Update accordingly.
Change-Id: I6d4a14d4cde9d71ab34d6ffdbfbfde51b2c0e1db
The update-or-insert procedure name was unhelpfully generic, and these changes
should improve the code readability.
* guix/store/database.scm (update-or-insert): Remove procedure and inline
functionality in to sqlite-register.
Change-Id: Ifab0cdb7972d095460cc1f79b8b2f0e9b958059c
Especially since we're asking for these to be cached.
Management of prepared statements isn't trivial, since you don't want to keep
them forever as this can lead to poor query performance, but I don't think
that finalizing them immediately is the right solution.
Change-Id: I61706b4d09d771835bb8f074b8f6a6ee871f5e2d
* guix/store/database.scm (sqlite-step-and-reset): New procedure.
(last-insert-row, path-id, update-or-insert, add-references): Don't finalize
prepared statements.
Change-Id: I2a2c6deb43935d67df9e43000a5105343d72b3e6
This makes the code easier to read, as you don't have to keep jumping between
the two places.
* guix/store/database.scm (path-id-sql, update-sql, insert-sql,
add-reference-sql): Remove variables.
(path-id, update-or-insert, add-references): Include SQL.
Change-Id: I53b4ab973be8d0cd10a0f35ba25972f1c9680353
I think using dynamic-wind to finalize all statements is the wrong
approach. Firstly it would be good to allow reseting statements rather than
finalizing them. Then for the problem of handling errors, the approach I've
settled on in the build coordinator is to close the database connection, since
that'll trigger guile-sqlite3 to finalize all the cached statements.
This reverts commit 5d6e225528.
* .dir-locals.el (scheme-mode): Remove with-statement.
* guix/store/database.scm (call-with-statement): Remove procedure.
(with-statement): Remove syntax rule.
(call-with-transaction, last-insert-row-id, path-id, update-or-insert,
add-references): Don't use with-statement.
Change-Id: I2fd976b3f12ec8105cc56350933a953cf53647e8
While care does need to be taken with making updates or inserts to the
ValidPaths table, I think that trying to ensure this within update-or-insert
is the wrong approach. Instead, when working with the store database, only one
connection should be used to make changes to the database and those changes
should happen in transactions that ideally begin immediately.
This reverts commit 37545de4a3.
* .dir-locals.el (scheme-mode): Remove entries for call-with-savepoint and
call-with-retrying-savepoint.
* guix/store/database.scm (call-with-savepoint, call-with-retrying-savepoint):
Remove procedures.
(update-or-insert): Remove use of call-with-savepoint.
Change-Id: I2f986e8623d8235a90c40d5f219c1292c1ab157b
These calls happen inside of with-error-handling, so the effect should be the
same, but this opens up the possibility of using this code in a program that
doesn't want to exit when one of these error conditions is met.
Change-Id: I15d963615d85d419559fa0f4333fa4dc1dfbfd3b
* guix/scripts/substitute.scm (download-nar, process-substitution): Use raise
formatted-message rather than leave.
Change-Id: Idd0880206b69e3903e19e0536b87d65a52c200d5
I don't think the approach of using SIGALARM here for the timeout will work
well in all cases (e.g. when using Guile Fibers), so make it possible to avoid
this.
* guix/scripts/substitute.scm (download-nar): Pass the fetch timeout in as an
option.
Change-Id: I8cbe6cdfa10cdaa7d41974cbea56a95f5efecfe6
Instead, display the warning from process-substitution and
process-substitution/fallback in the relevant places.
I'm looking at this because I want to make the substitute code less tied to
the script and usable in the Guile guix-daemon.
* guix/scripts/substitute.scm (network-error?): Move warning to…
(process-substitution/fallback, process-substitution): here.
Change-Id: I082b482c0e6ec7e02a8d437ba22dcefca5c40787
The aim here is to improve the user experience. There's anecdotal evidence
that the network performance for bordeaux is better compared to ci at least
for some users, and I don't know of any issues with rate limiting or access
restriction for bordeaux compared to ci. It also has IPv6 support.
Additionally, bordeaux generally had more substitutes than ci, particularly
for aarch64-linux and armhf-linux. This change will offer a very slight
speedup for those substitutes that only bordeaux has.
Bordeaux has been a default substitute server for nearly 3 years now and I
think this change is overdue. I'm also hopeful that we'll be able to build on
the testing regarding mirrors for bordeaux, and that'll allow potentially
improving the hosting setup (through providing more redundancy) and further
improving substitute fetching for users who currently have issues with
substitute access.
* config-daemon.ac: Switch substitute urls order.
* doc/guix.texi: Ditto.
* etc/guix-install.sh: Ditto.
* gnu/installer/newt/network.scm (wait-service-online): Ditto.
* guix/store.scm (%default-substitute-urls): Ditto.
Change-Id: I4f6d93ae1fc8b03d80b47b18b5749a51f1fde17b
Signed-off-by: Christopher Baines <mail@cbaines.net>
I'm getting the following error and this change resolves it:
/gnu/store/rw6n86c008xqdbjs3nk4i7ggf6srdpgs-python-wrapper-3.10.7/bin/python:
symbol lookup error:
/run/current-system/profile/lib/gio/modules/libgvfsdbus.so: undefined
symbol: g_task_set_static_name
Change-Id: I6f74a5a867ba7c3b3d7b233916af0e75d9e5501f
Signed-off-by: Christopher Baines <mail@cbaines.net>
* doc/local.mk ($(srcdir)/%D%/guix-%.1): Use AM_V_HELP2MAN and cater for
make's `@' silencing at the start of the command.
Change-Id: Id80c48f0d7697167fea64700a7fe140003732d28
This is a follow-up to f83bdd7e00 ("gnu: qt-creator: Patch file names of
demangling libraries.")
* gnu/packages/qt.scm (qt-creator)
[phases] <patch-perfparser>: Adjust demangler.cpp file name.
Change-Id: I72c517636bf866b57daa5d56dd8db643b0669a88