Skip to content

Use canonical arch names only; drop colliding compat aliases#4

Merged
lacraig2 merged 1 commit into
mainfrom
fix/canonical-arch-names-only
Jun 8, 2026
Merged

Use canonical arch names only; drop colliding compat aliases#4
lacraig2 merged 1 commit into
mainfrom
fix/canonical-arch-names-only

Conversation

@lacraig2

@lacraig2 lacraig2 commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

Reverts the arm64/ppc64/ppc64el/loongarch compat aliases added in v0.0.2.

Why: those names exactly match the real directories hyperfs still ships, so extracting penguin-tools over them makes tar fail (symlink-over-directory, exit 2) — which would break the penguin image build while hyperfs is present (rehosting/penguin#823). I confirmed this with a direct extraction test.

The legacy names are only needed after hyperfs is removed, so that bridging belongs in penguin's hyperfs-removal change, not here. penguin-tools stays on canonical names (same as busybox), which merge cleanly into the shared arch dirs. The pre-existing intel64/powerpc64el aliases are kept — they don't match any hyperfs dir name.

Verified the aarch64 bundle emits aarch64 + dylibs/aarch64 only (no arm64) and still passes the runtime link-closure check.

The arm64/ppc64/ppc64el/loongarch compat aliases (added so penguin-tools
could supply the legacy dylib dir names hyperfs used) collide with the
real directories hyperfs still ships under those exact names: extracting
the tarball over them makes tar fail (symlink-over-directory), breaking
the penguin image build while hyperfs is present.

These legacy names are only needed once hyperfs is gone, so the bridging
belongs in penguin's hyperfs-removal change, not here. Keep penguin-tools
on canonical names (matching busybox), which merge cleanly into the
shared arch dirs. The pre-existing intel64/powerpc64el aliases stay --
they don't match any hyperfs dir name, so they don't collide.

Verified the aarch64 bundle emits aarch64 + dylibs/aarch64 only (no
arm64), and still passes the runtime link-closure check.
lacraig2 added a commit to rehosting/penguin that referenced this pull request Jun 8, 2026
v0.0.2 shipped legacy compat dir symlinks (arm64/ppc64/ppc64el/loongarch)
that collide with the directories hyperfs still ships under those names,
making tar fail when extracting over them. v0.0.3 (rehosting/penguin-tools#4)
reverts to canonical names only, which merge cleanly. Blocked on that
release.
@lacraig2 lacraig2 merged commit be863e8 into main Jun 8, 2026
1 check passed
lacraig2 added a commit to rehosting/penguin that referenced this pull request Jun 8, 2026
v0.0.2 shipped legacy compat dir symlinks (arm64/ppc64/ppc64el/loongarch)
that collide with the directories hyperfs still ships under those names,
making tar fail when extracting over them. v0.0.3 (rehosting/penguin-tools#4)
reverts to canonical names only, which merge cleanly. Blocked on that
release.
lacraig2 added a commit to rehosting/penguin that referenced this pull request Jun 9, 2026
v0.0.2 shipped legacy compat dir symlinks (arm64/ppc64/ppc64el/loongarch)
that collide with the directories hyperfs still ships under those names,
making tar fail when extracting over them. v0.0.3 (rehosting/penguin-tools#4)
reverts to canonical names only, which merge cleanly. Blocked on that
release.
lacraig2 added a commit to rehosting/penguin that referenced this pull request Jun 9, 2026
v0.0.2 shipped legacy compat dir symlinks (arm64/ppc64/ppc64el/loongarch)
that collide with the directories hyperfs still ships under those names,
making tar fail when extracting over them. v0.0.3 (rehosting/penguin-tools#4)
reverts to canonical names only, which merge cleanly. Blocked on that
release.
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