* [PATCH 1/3] ci: use apt-get in the linux32 job
2026-11-01 11:02 [PATCH 0/3] ci: fix jobs failing on Ubuntu 26.04 Harald Nordgren via GitGitGadget
@ 2026-11-01 11:02 ` Harald Nordgren via GitGitGadget
2026-11-01 11:02 ` [PATCH 2/3] install-dependencies: work around a permission problem Harald Nordgren via GitGitGadget
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Harald Nordgren via GitGitGadget @ 2026-11-01 11:02 UTC (permalink / raw)
To: git; +Cc: Harald Nordgren, Harald Nordgren
From: Harald Nordgren <haraldnordgren@gmail.com>
The linux32 job prints
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
twice, once for "apt update" and once for "apt install". apt is meant
for interactive use. Call apt-get instead, like ci/install-dependencies.sh
already does.
Signed-off-by: Harald Nordgren <haraldnordgren@gmail.com>
---
.github/workflows/main.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index d488fd10db..b564927e2c 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -449,7 +449,7 @@ jobs:
steps:
- name: prepare libc6 for actions
if: matrix.vector.jobname == 'linux32'
- run: apt -q update && apt -q -y install libc6-amd64 lib64stdc++6
+ run: apt-get -q update && apt-get -q -y install libc6-amd64 lib64stdc++6
- name: install git in container
run: |
if command -v git
--
gitgitgadget
^ permalink raw reply related [flat|nested] 5+ messages in thread* [PATCH 2/3] install-dependencies: work around a permission problem
2026-11-01 11:02 [PATCH 0/3] ci: fix jobs failing on Ubuntu 26.04 Harald Nordgren via GitGitGadget
2026-11-01 11:02 ` [PATCH 1/3] ci: use apt-get in the linux32 job Harald Nordgren via GitGitGadget
@ 2026-11-01 11:02 ` Harald Nordgren via GitGitGadget
2026-11-01 11:02 ` [PATCH 3/3] ci: pin linux32 to ubuntu-24.04 to restore networking Harald Nordgren via GitGitGadget
2026-11-03 22:04 ` [PATCH 0/3] ci: fix jobs failing on Ubuntu 26.04 Junio C Hamano
3 siblings, 0 replies; 5+ messages in thread
From: Harald Nordgren via GitGitGadget @ 2026-11-01 11:02 UTC (permalink / raw)
To: git; +Cc: Harald Nordgren, Harald Nordgren
From: Harald Nordgren <haraldnordgren@gmail.com>
When replacing `dirname`, elevation is required, otherwise the command
will fail with:
+ ln -sfT /usr/bin/gnudirname /usr/bin/dirname
ln: failed to create symbolic link '/usr/bin/dirname': Already exists
as observed in
https://github.com/git-for-windows/git/actions/runs/40223871341/job/121274294974?pr=6473#step:3:909
Based-on-patch-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Harald Nordgren <haraldnordgren@gmail.com>
---
ci/install-dependencies.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/ci/install-dependencies.sh b/ci/install-dependencies.sh
index 4b1733ad15..ed2d09a0a9 100755
--- a/ci/install-dependencies.sh
+++ b/ci/install-dependencies.sh
@@ -80,7 +80,7 @@ ubuntu-*|i386/debian-*|debian-*)
# See <https://github.com/uutils/coreutils/issues/10508>.
if test -x /usr/bin/gnudirname
then
- ln -sfT /usr/bin/gnudirname /usr/bin/dirname
+ sudo ln -sfT /usr/bin/gnudirname /usr/bin/dirname
fi
case "$distro" in
--
gitgitgadget
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 3/3] ci: pin linux32 to ubuntu-24.04 to restore networking
2026-11-01 11:02 [PATCH 0/3] ci: fix jobs failing on Ubuntu 26.04 Harald Nordgren via GitGitGadget
2026-11-01 11:02 ` [PATCH 1/3] ci: use apt-get in the linux32 job Harald Nordgren via GitGitGadget
2026-11-01 11:02 ` [PATCH 2/3] install-dependencies: work around a permission problem Harald Nordgren via GitGitGadget
@ 2026-11-01 11:02 ` Harald Nordgren via GitGitGadget
2026-11-03 22:04 ` [PATCH 0/3] ci: fix jobs failing on Ubuntu 26.04 Junio C Hamano
3 siblings, 0 replies; 5+ messages in thread
From: Harald Nordgren via GitGitGadget @ 2026-11-01 11:02 UTC (permalink / raw)
To: git; +Cc: Harald Nordgren, Harald Nordgren
From: Harald Nordgren <haraldnordgren@gmail.com>
The linux32 job fails DNS resolution before checkout because Docker
29.4.2's seccomp profile on Ubuntu 26.04 blocks socketcall in i386 glibc
containers. Ubuntu 24.04 avoids this host-side regression.
https://github.com/actions/runner-images/issues/14790
Based-on-patch-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Harald Nordgren <haraldnordgren@gmail.com>
---
.github/workflows/main.yml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index b564927e2c..d9149e9ecb 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -442,7 +442,9 @@ jobs:
CC: ${{matrix.vector.cc}}
CI_JOB_IMAGE: ${{matrix.vector.image}}
CUSTOM_PATH: /custom
- runs-on: ubuntu-latest
+ runs-on: >-
+ ${{ matrix.vector.jobname == 'linux32'
+ && 'ubuntu-24.04' || 'ubuntu-latest' }}
container:
image: ${{ matrix.vector.image }}
options: ${{ github.repository_visibility == 'private' && '--pids-limit 16384 --ulimit nproc=16384:16384 --ulimit nofile=32768:32768' || '' }}
--
gitgitgadget
^ permalink raw reply related [flat|nested] 5+ messages in thread* Re: [PATCH 0/3] ci: fix jobs failing on Ubuntu 26.04
2026-11-01 11:02 [PATCH 0/3] ci: fix jobs failing on Ubuntu 26.04 Harald Nordgren via GitGitGadget
` (2 preceding siblings ...)
2026-11-01 11:02 ` [PATCH 3/3] ci: pin linux32 to ubuntu-24.04 to restore networking Harald Nordgren via GitGitGadget
@ 2026-11-03 22:04 ` Junio C Hamano
3 siblings, 0 replies; 5+ messages in thread
From: Junio C Hamano @ 2026-11-03 22:04 UTC (permalink / raw)
To: Harald Nordgren via GitGitGadget; +Cc: git, Harald Nordgren
"Harald Nordgren via GitGitGadget" <gitgitgadget@gmail.com> writes:
> Four CI jobs fail since ubuntu-latest moved to Ubuntu 26.04.
>
> * documentation, fuzz smoke test and static-analysis fail with ln: failed
> to create symbolic link '/usr/bin/dirname': Already exists. Run the ln
> with sudo.
I see this breakage. Haven't they corrected the Rust rewrite of
dirname by now, by the way, to make this overwrite unnecessary yet?
> * linux32 cannot resolve deb.debian.org. Pin it to ubuntu-24.04. The Docker
> update in actions/runner-images#15205 fixes this on 26.04, but a new
> runner image will take a long time to roll out, and CI should not stay
> broken while we wait.
Sigh, but this one is rather straightforward. We need to be aware
of this change so that we can revert it when it becomes unnecessary.
> * Use apt-get in linux32 to get rid of the apt does not have a stable CLI
> interface warnings.
I can see this well, but it is a warning only, so I do not know how
much value in addressing it would be.
> The first two are based on Johannes Schindelin's fixes in Git for Windows
> (git-for-windows/git#6473).
>
> Harald Nordgren (3):
> ci: use apt-get in the linux32 job
> install-dependencies: work around a permission problem
> ci: pin linux32 to ubuntu-24.04 to restore networking
Will queue. Thanks.
>
> .github/workflows/main.yml | 6 ++++--
> ci/install-dependencies.sh | 2 +-
> 2 files changed, 5 insertions(+), 3 deletions(-)
>
>
> base-commit: 50fe5cc63f9cd6e89b87a2c9ccf96a444f4cfdb7
> Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2478%2FHaraldNordgren%2Fci-linux32-apt-get-v1
> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2478/HaraldNordgren/ci-linux32-apt-get-v1
> Pull-Request: https://github.com/git/git/pull/2478
^ permalink raw reply [flat|nested] 5+ messages in thread