Skip to content

[Bug]: [features/bun]: Build fails for Linux arm64/Apple Silicon #146

@tyssejc

Description

@tyssejc

Feature id and version

ghcr.io/devcontainers-extra/features/bun:1

Dev Container base Image

mcr.microsoft.com/devcontainers/javascript-node:1-22-bookworm

What happened?

On arm64/Apple Silicon, install.sh uses ^bun-linux-aarch64-baseline\.zip$ to match the appropriate bun release. However, bun doesn't seem to include a -baseline build for that architecture in its releases. Since none of the releases match the regex, the build fails.

# - bun-linux-aarch64-baseline.zip
# - bun-linux-aarch64-musl-baseline.zip
asset_regex="^bun-linux-${arch_segment}${libc_suffix}-baseline\\.zip$"

Relevant log output

=> ERROR [dev_containers_target_stage 4/6] RUN --mount=type=bind,from=de  9.6s
------
 > [dev_containers_target_stage 4/6] RUN --mount=type=bind,from=dev_containers_feature_content_source,source=bun_0,target=/tmp/build-features-src/bun_0     cp -ar /tmp/build-features-src/bun_0 /tmp/dev-container-features  && chmod -R 0755 /tmp/dev-container-features/bun_0  && cd /tmp/dev-container-features/bun_0  && chmod +x ./devcontainer-features-install.sh  && ./devcontainer-features-install.sh  && rm -rf /tmp/dev-container-features/bun_0:
[2025-09-19T15:03:35.812Z] 0.134 ===========================================================================
0.134 Feature       : Bun
0.134 Description   : Bun is an all-in-one toolkit for JavaScript and TypeScript apps.
0.134 Id            : ghcr.io/devcontainers-extra/features/bun
0.134 Version       : 1.0.0
0.134 Documentation : http://github.com/devcontainers-extra/features/tree/main/src/bun
0.134 Options       :
0.134     VERSION="latest"
0.134 ===========================================================================
[2025-09-19T15:03:35.812Z] 2.371 nanolayer
5.923 cd /tmp/tmpolxmkwrx && chmod +x -R . && _REMOTE_USER="node" _REMOTE_USER_HOME="/home/node" REPO="oven-sh/bun" BINARYNAMES="bun" VERSION="latest" ASSETREGEX="^bun-linux-aarch64-baseline\.zip$" RELEASETAGREGEX="^bun-v" BINLOCATION="/usr/local/bin" LIBNAME="" LIBLOCATION="/usr/local/lib" ADDITIONALFLAGS="" NANOLAYER_VERBOSE="" NANOLAYER_FORCE_CLI_INSTALLATION="" NANOLAYER_PROPAGATE_CLI_LOCATION="1" NANOLAYER_CLI_LOCATION="/tmp/nanolayer-M1ZAaAuEIZ/nanolayer" bash  -i  +H ./install.sh
5.923 Found a pre-existing nanolayer which were given in env variable: /tmp/nanolayer-M1ZAaAuEIZ/nanolayer

6.034 skipping usage of pre-existing nanolayer. (required version v0.5.6 does not match existing version 0.5.6)

8.069 nanolayer

9.122 'bun-darwin-aarch64-profile.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-darwin-aarch64.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 
[2025-09-19T15:03:35.813Z] 
9.122 'bun-darwin-x64-baseline-profile.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-darwin-x64-baseline.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-darwin-x64-profile.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-darwin-x64.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-linux-aarch64-musl-profile.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-linux-aarch64-musl.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-linux-aarch64-profile.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-linux-aarch64.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-linux-x64-baseline-profile.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 
[2025-09-19T15:03:35.813Z] 
9.122 'bun-linux-x64-baseline.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-linux-x64-musl-baseline-profile.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-linux-x64-musl-baseline.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-linux-x64-musl-profile.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-linux-x64-musl.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-linux-x64-profile.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-linux-x64.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-windows-x64-baseline-profile.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-windows-x64-baseline.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-windows-x64-profile.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'bun-windows-x64.zip' filtered by '^bun-linux-aarch64-baseline\.zip$' 
[2025-09-19T15:03:35.813Z] 9.122 'SHASUMS256.txt' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.122 'SHASUMS256.txt.asc' filtered by '^bun-linux-aarch64-baseline\.zip$' 

9.152 Traceback (most recent call last):

9.152   File "<string>", line 1, in <module>

9.152   File "nanolayer.__main__", line 50, in main

9.152   File "typer.main", line 328, in __call__

9.152   File "typer.main", line 311, in __call__

9.153   File "click.core", line 1157, in __call__

9.153   File "typer.core", line 778, in main
[2025-09-19T15:03:35.813Z] 
9.153   File "typer.core", line 216, in _main

9.153   File "click.core", line 1688, in invoke

9.153   File "click.core", line 1688, in invoke

9.153   File "click.core", line 1434, in invoke

9.153   File "click.core", line 783, in invoke

9.153   File "typer.main", line 683, in wrapper

9.153   File "nanolayer.cli.install", line 156, in install_gh_release_binary
[2025-09-19T15:03:35.813Z] 9.153   File "nanolayer.installers.gh_release.gh_release_installer", line 145, in install

9.153   File "nanolayer.installers.gh_release.resolvers.asset_resolver", line 175, in resolve

9.153 nanolayer.installers.gh_release.resolvers.asset_resolver.AssetResolver.AssetResolverError: no matches found for asset regex: ^bun-linux-aarch64-baseline\.zip$

9.445 Traceback (most recent call last):
9.445   File "<string>", line 1, in <module>
9.445   File "nanolayer.__main__", line 50, in main
9.445   File "typer.main", line 328, in __call__
9.445   File "typer.main", line 311, in __call__
[2025-09-19T15:03:35.813Z] 
9.445   File "click.core", line 1157, in __call__
9.446   File "typer.core", line 778, in main
9.446   File "typer.core", line 216, in _main
9.446   File "click.core", line 1688, in invoke
9.446   File "click.core", line 1688, in invoke
9.446   File "click.core", line 1434, in invoke
9.446   File "click.core", line 783, in invoke
9.446   File "typer.main", line 683, in wrapper
[2025-09-19T15:03:35.813Z] 
9.446   File "nanolayer.cli.install", line 66, in install_devcontainer_feature
9.446   File "nanolayer.installers.devcontainer_feature.oci_feature_installer", line 134, in install
9.446   File "nanolayer.utils.invoker", line 59, in invoke
9.446 nanolayer.utils.invoker.Invoker.InvokerException: The command 'cd /tmp/tmpolxmkwrx && chmod +x -R . && _REMOTE_USER="node" _REMOTE_USER_HOME="/home/node" REPO="oven-sh/bun" BINARYNAMES="bun" VERSION="latest" ASSETREGEX="^bun-linux-aarch64-baseline\.zip$" RELEASETAGREGEX="^bun-v" BINLOCATION="/usr/local/bin" LIBNAME="" LIBLOCATION="/usr/local/lib" ADDITIONALFLAGS="" NANOLAYER_VERBOSE="" NANOLAYER_FORCE_CLI_INSTALLATION="" NANOLAYER_PROPAGATE_CLI_LOCATION="1" NANOLAYER_CLI_LOCATION="/tmp/nanolayer-M1ZAaAuEIZ/nanolayer" bash  -i  +H ./install.sh' failed. error: Return Code: 1. see logs for details.
9.620 ERROR: Feature "Bun" (ghcr.io/devcontainers-extra/features/bun) failed to install! Look at the documentation at http://github.com/devcontainers-extra/features/tree/
[2025-09-19T15:03:35.813Z] main/src/bun for help troubleshooting this error.
------
[2025-09-19T15:03:35.815Z] failed to solve: process "/bin/sh -c cp -ar /tmp/build-features-src/bun_0 /tmp/dev-container-features  && chmod -R 0755 /tmp/dev-container-features/bun_0  && cd /tmp/dev-container-features/bun_0  && chmod +x ./devcontainer-features-install.sh  && ./devcontainer-features-install.sh  && rm -rf /tmp/dev-container-features/bun_0" did not complete successfully: exit code: 1

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions