Skip to content

fix(ci): build linux-arm64 in Debian Buster container for GLIBC 2.28 compat#255

Merged
binaricat merged 3 commits intomainfrom
fix/linux-arm64-glibc-compat
Mar 4, 2026
Merged

fix(ci): build linux-arm64 in Debian Buster container for GLIBC 2.28 compat#255
binaricat merged 3 commits intomainfrom
fix/linux-arm64-glibc-compat

Conversation

@binaricat
Copy link
Copy Markdown
Owner

@binaricat binaricat commented Mar 4, 2026

Problem

Netcatty 1.0.39 fails to run on UOS/Deepin (Debian 10 based) ARM64 systems:

GLIBC_2.34 not found (required by pty.node)

The node-pty native module is compiled on ubuntu-24.04-arm (GLIBC 2.39), producing binaries that require GLIBC ≥ 2.34 — but UOS only ships GLIBC 2.28.

Solution

Split linux-arm64 out of the build matrix into a dedicated job that runs inside a debian:bullseye Docker container (GLIBC 2.31) on the ARM64 runner. GLIBC < 2.34 avoids the libpthread-merge symbol requirement.

Changes

  • Removed linux-arm64 from the matrix build job
  • Added new build-linux-arm64 job with container: debian:bullseye
  • Installs Node.js 20 + build dependencies inside the container
  • Updated release job to depend on both build and build-linux-arm64
  • Removed the old ARM64 npm_config_arch workaround (now set directly in the dedicated job)

Closes #253

…compat\n\nSplit linux-arm64 out of the build matrix into a dedicated job that\nruns inside a debian:buster container (GLIBC 2.28) on the ARM64 runner.\nThis ensures the compiled node-pty native module is compatible with\nolder distros like UOS/Deepin.\n\nCloses #253
…\n\nBuster's Python 3.7 is too old for node-gyp@11 (walrus operator).\nBullseye provides Python 3.9 and GLIBC 2.31 which is still below\nthe critical 2.34 boundary (libpthread merge into libc).
@binaricat binaricat merged commit 18b77f9 into main Mar 4, 2026
1 of 5 checks passed
@binaricat binaricat deleted the fix/linux-arm64-glibc-compat branch March 4, 2026 02:23
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.0.39版本在国产uos系统环境下存在GLIBC版本过高问题

1 participant