GNU bug report logs -
#74542
[PATCH 00/11] Improved tooling for package updates
Previous Next
Reported by: Ludovic Courtès <ludo <at> gnu.org>
Date: Tue, 26 Nov 2024 10:33:01 UTC
Severity: normal
Tags: patch
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hello Guix!
This patch series aims to improve tooling for package upgrades:
• By adding a ‘--dependents’ option to ‘guix build’ to build
dependent packages (those returned by ‘guix refresh -l’). This
was suggested by my colleague Romain Garbage, who also prototyped
a variant of this.
• By improving individual updaters and updating metadata for
some packages.
• By adding an “upgrade manifest”, to automatically build the latest
version (using the ‘with-latest’ package transformation) of a few
security-critical packages along with their dependents at distance 2,
as well as some of the leaf packages.
The goal is to use this upgrade manifest for a new jobset on ci.guix.
The idea is that when someone tries to upgrade one of these things,
chances are it will have been built already.
I already toyed with this idea here:
https://guix.bordeaux.inria.fr/jobset/guix-hpc-cutting-edge
https://gitlab.inria.fr/guix-hpc/guix-hpc/-/blob/master/cutting-edge.manifest?ref_type=heads
It’s experimental; surely we’ll find that the manifest needs to be
tweaked, or that some of the updaters abort to early. But I think
it can help, and it’s a good way to use available x86_64 CPU power
at ci.guix.
According to a recent discussion with Nix hackers on Mastodon¹, mere
substitute availability is not perceived as a key factor in what
enables them to keep Nixpkgs up-to-date; the primary factor appears
to be the bot that sends patches updating packages.
Food for thought!
Ludo’.
¹ https://toot.aquilenet.fr/@civodul/113527656544893427
Ludovic Courtès (11):
transformations: Export ‘package-with-upstream-version’.
gnu-maintenance: ‘import-html-release’ doesn’t abort upon HTTP 404.
gnu-maintenance: Savannah/Xorg updaters no longer abort on network
errors.
build: Add ‘--development’ option.
packages: Factorize ‘all-packages’.
guix build: Add ‘--dependents’.
import: gnome: Keep going upon HTTP errors.
gnu-maintenance: ‘gnu-ftp’ updater excludes GnuPG-hosted packages.
gnu: Update updater properties for GnuPG-related packages.
guix build: Validate that the file passed to ‘-m’ returns a manifest.
etc: Add upgrade manifest.
Makefile.am | 1 +
doc/contributing.texi | 4 +-
doc/guix.texi | 52 +++++++++++
etc/source-manifest.scm | 13 +--
etc/upgrade-manifest.scm | 98 +++++++++++++++++++++
gnu/packages.scm | 20 ++++-
gnu/packages/gnupg.scm | 40 +++------
guix/download.scm | 3 +-
guix/gnu-maintenance.scm | 49 +++++++----
guix/import/gnome.scm | 13 ++-
guix/scripts/build.scm | 185 ++++++++++++++++++++++++++++++---------
guix/scripts/graph.scm | 10 ---
guix/scripts/refresh.scm | 10 ---
guix/scripts/weather.scm | 15 ----
guix/transformations.scm | 2 +
tests/guix-build.sh | 11 +++
16 files changed, 386 insertions(+), 140 deletions(-)
create mode 100644 etc/upgrade-manifest.scm
base-commit: 827ec92f44d1b1daedc5446146801183560e861b
--
2.46.0
This bug report was last modified 169 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.