Skip to content

fix(riscv64): switch to jammy and use node v24 with glibc 2.33 support - #43

Merged
daiyam merged 1 commit into
VSCodium:masterfrom
kxxt:master
Jul 9, 2026
Merged

fix(riscv64): switch to jammy and use node v24 with glibc 2.33 support#43
daiyam merged 1 commit into
VSCodium:masterfrom
kxxt:master

Conversation

@kxxt

@kxxt kxxt commented Jul 9, 2026

Copy link
Copy Markdown

Because v24 riscv64 binaries in node.js unofficial builds requires glibc 2.38, fix it by:

  • Switch to ubuntu jammy and drop focal image.
    • The cross toolchain in jammy ships glibc 2.35 while the one in old focal ships glibc 2.31.
  • Use my cross-compiled riscv64 node.js binaries that supports glibc 2.33.

Tested in https://github.com/kxxt/vscodium/actions/runs/29000195155/job/86060642656

@daiyam

daiyam commented Jul 9, 2026

Copy link
Copy Markdown
Member

Can you move focal-devtoolset-riscv64 into archived?

From our previous conversion, is focal-ppc64le working correctly since it's also using nodesource?

@kxxt

kxxt commented Jul 9, 2026

Copy link
Copy Markdown
Author

Can you move focal-devtoolset-riscv64 into archived?

Done.

From our previous conversion, is focal-ppc64le working correctly since it's also using nodesource?

I think it is working correctly since focal-riscv64 is used for the desktop application build, where the native node addons are not compiled against the node binary/headers. Thus it does not need to use a native riscv64 node binary running under QEMU emulation. Instead, in that case, the native node addons are compiled against the electron binary/headers.

@kxxt

kxxt commented Jul 9, 2026

Copy link
Copy Markdown
Author

From our previous conversion, is focal-ppc64le working correctly since it's also using nodesource?

I think it is working correctly since focal-riscv64 is used for the desktop application build, where the native node addons are not compiled against the node binary/headers. Thus it does not need to use a native riscv64 node binary running under QEMU emulation. Instead, in that case, the native node addons are compiled against the electron binary/headers.

Just in case, I examined https://github.com/VSCodium/vscodium/releases/download/1.126.04524/VSCodium-linux-riscv64-1.126.04524.tar.gz to confirm it:

file windows.node
windows.node: ELF 64-bit LSB shared object, UCB RISC-V, RVC, double-float ABI, version 1 (SYSV), dynamically linked, BuildID[sha1]=cc4fa9d1f23f3cb789ce852eef6db33298c39293, not stripped

@daiyam
daiyam merged commit 7c87310 into VSCodium:master Jul 9, 2026
18 checks passed
@kxxt

kxxt commented Jul 9, 2026

Copy link
Copy Markdown
Author

It appears that the Publish Image workflow was cancelled: https://github.com/VSCodium/vscode-linux-build-agent/actions/runs/29020935233. I will wait until the new image is published before opening the next PR at VSCodium/vscodium main repo.

@daiyam

daiyam commented Jul 9, 2026

Copy link
Copy Markdown
Member

The new image should be available (https://github.com/VSCodium/vscode-linux-build-agent/actions/runs/29021429468)

@daiyam

daiyam commented Jul 9, 2026

Copy link
Copy Markdown
Member

I cancelled the workflow because the validation was acting weirdly. Some were validated some others weren't.

@kxxt

kxxt commented Jul 9, 2026

Copy link
Copy Markdown
Author

I cancelled the workflow because the validation was acting weirdly. Some were validated some others weren't.

Thanks for the explanation! I have opened the next PR at VSCodium/vscodium#2921.

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.

2 participants