Skip to content

fix(ci): pin Linux runner to ubuntu-22.04 for glibc 2.35 compatibility#89

Merged
VariableThe merged 1 commit into
mainfrom
fix/linux-glibc-runner
Jun 30, 2026
Merged

fix(ci): pin Linux runner to ubuntu-22.04 for glibc 2.35 compatibility#89
VariableThe merged 1 commit into
mainfrom
fix/linux-glibc-runner

Conversation

@VariableThe

@VariableThe VariableThe commented Jun 30, 2026

Copy link
Copy Markdown
Owner

Summary

GitHub Actions recently updated the default ubuntu-latest runner image from Ubuntu 22.04 LTS to Ubuntu 24.04 LTS.

When Linux AppImages and binaries are built on Ubuntu 24.04, they link against glibc 2.38+. When users running Ubuntu 22.04 LTS (or Debian 12 / older distributions) attempt to launch the AppImage or execute the binary, the dynamic linker fails immediately with:

version glibc 2.38 not found

Changes

  • Pin Linux matrix runner in release.yml and ci.yml to ubuntu-22.04 instead of ubuntu-latest.
  • Update OS condition checks to startsWith(matrix.os, 'ubuntu') for robustness.
  • Ensure all release artifacts are built against glibc 2.35, enabling native compatibility across Ubuntu 22.04 LTS, Ubuntu 24.04 LTS, Debian 12, Arch Linux, and Fedora without requiring OS upgrades.

Summary by CodeRabbit

  • Bug Fixes

    • Updated build and release workflows to use a fixed Ubuntu runner, improving reliability for Linux builds.
    • Linux packages now link against a more compatible system library version, helping them run more smoothly on common distributions like Ubuntu 22.04 and Debian 12.
  • Chores

    • Updated project notes to reflect the CI and release workflow changes.

@coderabbitai

coderabbitai Bot commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 04b0a21e-fd3b-47dc-9b2a-1237412f8a23

📥 Commits

Reviewing files that changed from the base of the PR and between ea4d211 and 29a4a5d.

📒 Files selected for processing (4)
  • .github/workflows/ci.yml
  • .github/workflows/release.yml
  • AUDIT_LOG.md
  • CHANGELOG.md

📝 Walkthrough

Walkthrough

Both CI and release GitHub Actions workflows replace ubuntu-latest with ubuntu-22.04 in the OS matrix and update Ubuntu-only step conditions to use startsWith(matrix.os, 'ubuntu'). The changelog and audit log are updated to document this change.

Ubuntu runner pinning

Layer / File(s) Summary
CI and release workflow runner pinning
.github/workflows/ci.yml, .github/workflows/release.yml
matrix.os updated to ubuntu-22.04; Ubuntu-only step conditionals changed from exact == 'ubuntu-latest' to startsWith(matrix.os, 'ubuntu') in both workflows.
Changelog and audit log
CHANGELOG.md, AUDIT_LOG.md
CHANGELOG.md adds a Fixed entry and AUDIT_LOG.md adds a 2026-06-30 section documenting the glibc compatibility rationale.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐇 Hopping past the latest tag,
I pinned the runner, no more lag.
ubuntu-22.04 is the way,
glibc 2.35 here to stay!
A tiny fix, a big hooray! 🎉

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main change: pinning Linux CI runners to ubuntu-22.04 for glibc compatibility.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/linux-glibc-runner

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@VariableThe VariableThe merged commit d83cd7a into main Jun 30, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant