summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2025-10-10 11:41:14 +0200
committerJunio C Hamano <gitster@pobox.com>2025-10-11 10:10:34 -0700
commitfddb4842552b70a8b46a9dd8a2a450b973d3dd1e (patch)
tree7b13730391181c41956f3934746941ac78d540cd
parentc44beea485f0f2feaf460e2ac87fdd5608d63cf0 (diff)
ci: fix broken jobs on Ubuntu 25.10 caused by switch to sudo-rs(1)
Ubuntu 25.10 has been released. One prominent change in this version of Ubuntu is the switch to some Rust-based utilities. Part of this switch is also that Ubuntu now defaults to sudo-rs(1). Unfortunately, this breaks our CI because sudo-rs(1) does not support the `--preserve-env` flag. Let's revert back to the C-based sudo(1) implementation to fix this. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-xci/install-dependencies.sh9
1 files changed, 9 insertions, 0 deletions
diff --git a/ci/install-dependencies.sh b/ci/install-dependencies.sh
index d061a47293..6668c4df84 100755
--- a/ci/install-dependencies.sh
+++ b/ci/install-dependencies.sh
@@ -61,6 +61,15 @@ ubuntu-*|i386/ubuntu-*|debian-*)
libsecret-1-dev libpcre2-dev meson ninja-build pkg-config \
${CC_PACKAGE:-${CC:-gcc}} $PYTHON_PACKAGE
+ # Starting with Ubuntu 25.10, sudo can now be provided via either
+ # sudo(1) or sudo-rs(1), with the latter being the default. The problem
+ # is that it does not support `--preserve-env` though, which we rely on
+ # in our CI. We thus revert back to the C implementation.
+ if test -f /etc/alternatives/sudo
+ then
+ sudo update-alternatives --set sudo /usr/bin/sudo.ws
+ fi
+
case "$distro" in
ubuntu-*)
mkdir --parents "$CUSTOM_PATH"