Skip to main content

ruby-to-wheel

PyPI version Test

Package pre-built Ruby binaries into Python wheels.

ruby-to-wheel takes compiled Ruby binaries and wraps them into platform-specific Python wheels with proper entry points, so they can be installed via pip and run as CLI commands.

Installation

pip install ruby-to-wheel

Usage

There are three modes of operation:

1. From pre-built binaries (explicit)

Provide binaries for each platform explicitly:

ruby-to-wheel \
  --name my-tool \
  --version 1.0.0 \
  --binary linux-amd64=/path/to/my-tool-linux-amd64 \
  --binary darwin-arm64=/path/to/my-tool-darwin-arm64

2. From a directory of binaries (auto-detect)

Point to a directory containing binaries with platform suffixes in their filenames:

ruby-to-wheel \
  --name my-tool \
  --version 1.0.0 \
  --binary-dir ./binaries/

Binaries are matched by filename patterns like my-tool-linux-amd64, my-tool-darwin-arm64, etc.

3. From Ruby source (via Tebako)

Build a standalone binary from Ruby source using Tebako and package it into a wheel:

ruby-to-wheel \
  --name my-tool \
  --version 1.0.0 \
  --source ./my-ruby-project/

Supported Platforms

Platform Key Wheel Tag
linux-amd64 manylinux_2_17_x86_64
linux-arm64 manylinux_2_17_aarch64
linux-amd64-musl musllinux_1_2_x86_64
linux-arm64-musl musllinux_1_2_aarch64
darwin-amd64 macosx_10_9_x86_64
darwin-arm64 macosx_11_0_arm64
windows-amd64 win_amd64
windows-arm64 win_arm64

Options

--name              Python package name (required)
--version           Package version (default: 0.1.0)
--output-dir        Directory for built wheels (default: ./dist)
--entry-point       CLI command name (defaults to package name)
--description       Package description
--requires-python   Python version requirement (default: >=3.10)
--author            Author name
--author-email      Author email
--license           License identifier
--url               Project URL
--readme            Path to README for PyPI long description
--extra-lib         Shared library to bundle (repeatable)
--ruby-version      Ruby version for Tebako (default: 3.3.7)
--source-entry-point  Ruby entry point for Tebako (default: bin/{entry-point})
--platform          Override platform detection (for --source mode)

How It Works

Each generated wheel contains:

  • A Python package with __init__.py and __main__.py
  • The compiled binary in a bin/ subdirectory
  • Optional shared libraries in a lib/ subdirectory
  • A console script entry point that delegates to the binary

When installed, pip creates a wrapper script so the binary can be invoked directly by name from the command line.

License

Apache-2.0

Metadata

Release files for ruby-to-wheel 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ruby-to-wheel 0.1.0
File Size Uploaded
ruby_to_wheel-0.1.0.tar.gz 20.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ruby-to-wheel 0.1.0
File Interpreter ABI Platform
ruby_to_wheel-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 28.3 kB

Release files / ruby_to_wheel-0.1.0.tar.gz

Download URL ruby_to_wheel-0.1.0.tar.gz
Size 20.0 kB
Tags Source
SHA-256 checksum
How to use checksums
580879d93c63240b584a38443b5ed14fb49013b7813b3d6d345cb81911f3b3e7
BLAKE2b-256 checksum
How to use checksums
20a1ef3ccb1b0f86c5011731f1f5349e6aee12762efa7d86fbff1169387bf379
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 11, 2026.

Transparency log

Release files / ruby_to_wheel-0.1.0-py3-none-any.whl

Download URL ruby_to_wheel-0.1.0-py3-none-any.whl
Size 8.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8230a40bb5b144354281e5e39ceb86f060cbc9bfcff55a9df5f03b82c6e0017f
BLAKE2b-256 checksum
How to use checksums
1dd9180d24e9b604767ee3435148013e5eeca98116d795c1fb82604edbfafa39
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 11, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page