Skip to content

Feature Request: Provide musl binaries for Alpine Linux support #754

@latel

Description

@latel

Summary

I would like to request native musl binaries for the new Sentry CLI (sentry) to support Alpine Linux environments.

Background

I'm building a Docker image based on Alpine Linux for my team's development workflow. Alpine uses musl libc instead of glibc, which is incompatible with the current Linux binaries provided in GitHub releases.

Current Situation

Looking at the releases, the following binaries are provided:

Platform Binary
macOS ARM sentry-darwin-arm64
macOS x64 sentry-darwin-x64
Linux ARM sentry-linux-arm64
Linux x64 sentry-linux-x64

There are no sentry-linux-x64-musl or sentry-linux-arm64-musl binaries.

Workaround

The npm package sentry is a pure JavaScript bundle (no native dependencies, no postinstall script), which works on Alpine with Node.js ≥ 22:

npm install -g sentry  # Works on Alpine

However, the curl-based installer downloads a glibc binary that cannot run on Alpine:

curl https://cli.sentry.dev/install -fsS | bash  # Fails on Alpine

Comparison with @sentry/cli

The older @sentry/cli package provides musl binaries:

  • sentry-cli-Linux-x86_64 (glibc)
  • sentry-cli-Linux-aarch64 (glibc)
  • sentry_cli-...musllinux_1_2_x86_64.whl (musl)
  • sentry_cli-...musllinux_1_2_aarch64.whl (musl)

Proposed Solution

  1. Add musl builds to the release artifacts:

    • sentry-linux-x64-musl
    • sentry-linux-arm64-musl
  2. Update the install script to detect musl-based systems and download the appropriate binary.

Use Case

Alpine Linux is popular for Docker images due to its small size (~5MB base image). Many teams use Alpine-based images for CI/CD and development environments. Native musl binaries would:

  • Improve performance compared to the JS bundle
  • Allow users who prefer the curl-based installer to use it on Alpine
  • Provide feature parity with the older @sentry/cli

Thank you for considering this feature request!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions