Skip to main content

A thin wrapper to distribute https://github.com/jesseduffield/lazydocker via pip.

Project description

pybin

This project was inspired by how Maturin packages rust binaries. The key observation is that in the wheel format, the distribution-1.0.data/scripts/ directory is copied to bin, which means we can leverage this to seamlessly copy binaries into a user's PATH.

Combined with Python's platform-specific wheels, this allows us to use pip as a "cross-platform package manager" for distributing single-binary CLI applications.

Wheel Building Process

The core of the logic lies in the buildlib.py module.

  • A mapping from download URL (often github releases) to pypi platform tag is required.
  • For each platform:
    • Download the release & extract the binary.
    • Set file permissions and place into scripts directory within wheel archive.
    • Create the METADATA and WHEEL files within wheel archive.
    • Place wheel into dist/ folder.
  • Once all wheels are constructed, the distribution is uploaded to PyPI.

CICD is configured to automatically recognize new PyPI releases by looking for a diff on the PYPI_VERSION. When this happens, a build-and-release cycle is performed for that release version.

Catalog

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

lazydocker_bin_edge-0.23.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl (4.0 MB view details)

Uploaded Python 3 manylinux: glibc 2.17+ ARM64 musllinux: musl 1.1+ ARM64

lazydocker_bin_edge-0.23.3-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.musllinux_1_1_x86_64.whl (4.5 MB view details)

Uploaded Python 3 manylinux: glibc 2.12+ x86-64 musllinux: musl 1.1+ x86-64

lazydocker_bin_edge-0.23.3-py3-none-macosx_11_0_arm64.whl (4.4 MB view details)

Uploaded Python 3 macOS 11.0+ ARM64

lazydocker_bin_edge-0.23.3-py3-none-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded Python 3 macOS 10.9+ x86-64

File details

Details for the file lazydocker_bin_edge-0.23.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for lazydocker_bin_edge-0.23.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 5ca6d64fb79f17bcd6400a887d8bbc13185b3911e339e3adca37c2944c3aa6cf
MD5 9dd7a0fa03c67e8bd475175aa04a9f92
BLAKE2b-256 c653c0e64bdd94103d3c970cefa37623afd1adeea88effd89ba69e85155ec6a0

See more details on using hashes here.

File details

Details for the file lazydocker_bin_edge-0.23.3-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for lazydocker_bin_edge-0.23.3-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 5e3dd20ddc572c46c266c8fb912b5ea5547270dea0dcfa142e9959da8b6d0d56
MD5 9d9f8614a3a9f8923d9234445223e185
BLAKE2b-256 18dc95f8b2c940421653268e22c11d38e99fa42ac394b6e0a60545084058a35d

See more details on using hashes here.

File details

Details for the file lazydocker_bin_edge-0.23.3-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for lazydocker_bin_edge-0.23.3-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3ef1363f8e5fd579a8b93e2d6ffc2c78395488309080b198081949317cf610f4
MD5 8a74ea61f0b6fcb89f260da2fe1eff6f
BLAKE2b-256 7c659819ecc3a688a613149504f8addb3478f6fbed411a0105e4c68072421d4d

See more details on using hashes here.

File details

Details for the file lazydocker_bin_edge-0.23.3-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for lazydocker_bin_edge-0.23.3-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b1be9be8f287d03dd0d0f17c8e32bb0d7a5a69c44f95157a4dae097e9b8a3031
MD5 fe35e9350e9423d62504d1fad471ae7f
BLAKE2b-256 8344134d427cc4eb66c4d7dac247fec81f87c3d312e76c530849c73fe36558c8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page