Skip to main content

Package self-contained Python applications

Project description

PyOxidizer

Build Status

PyOxidizer is a utility for producing binaries that embed Python. The over-arching goal of PyOxidizer is to make complex packaging and distribution problems simple so application maintainers can focus on building applications instead of toiling with build systems and packaging tools.

PyOxidizer is capable of producing a single file executable - with a copy of Python and all its dependencies statically linked and all resources (like .pyc files) embedded in the executable. You can copy a single executable file to another machine and run a Python application contained within. It just works.

PyOxidizer exposes its lower level functionality for embedding self-contained Python interpreters as a tool and software library. So if you don't want to ship executables that only consist of a Python application, you can still use PyOxidizer to e.g. produce a library containing Python suitable for linking in any application or use PyOxidizer's embedding library directly for embedding Python in a larger application.

The Oxidizer part of the name comes from Rust: executables produced by PyOxidizer are compiled from Rust and Rust code is responsible for managing the embedded Python interpreter and all its operations. If you don't know Rust, that's OK: PyOxidizer tries to make the existence of Rust nearly invisible to end-users.

While solving packaging and distribution problems is the primary goal of PyOxidizer, a side-effect of solving that problem with Rust is that PyOxidizer can serve as a bridge between these two languages. PyOxidizer can be used to easily add a Python interpreter to any Rust project. But the opposite is also true: PyOxidizer can also be used to add Rust to Python. Using PyOxidizer, you could bootstrap a new Rust project which contains an embedded version of Python and your application. Initially, your project is a few lines of Rust that instantiates a Python interpreter and runs Python code. Over time, functionality could be (re)written in Rust and your previously Python-only project could leverage Rust and its diverse ecosystem. Since PyOxidizer abstracts the Python interpreter away, this could all be invisible to end-users: you could rewrite an application from Python to Rust and people may not even know because they never see a libpython, .py files, etc.

Project Info

:house: The official home of the PyOxidizer project is https://github.com/indygreg/PyOxidizer.

:notebook_with_decorative_cover: Documentation (generated from the docs/ directory) is available at https://pyoxidizer.readthedocs.io/en/latest/index.html.

:speech_balloon: The pyoxidizer-users mailing list is a forum for users to discuss all things PyOxidizer.

:moneybag: If you want to financially contribute to PyOxidizer, do so via GitHub Sponsors or on Patreon.

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

pyoxidizer-0.15.0-py3-none-win_amd64.whl (7.0 MB view details)

Uploaded Python 3 Windows x86-64

pyoxidizer-0.15.0-py3-none-win32.whl (6.6 MB view details)

Uploaded Python 3 Windows x86

pyoxidizer-0.15.0-py3-none-manylinux2010_x86_64.whl (9.7 MB view details)

Uploaded Python 3 manylinux: glibc 2.12+ x86-64

pyoxidizer-0.15.0-py3-none-manylinux2010_i686.whl (10.3 MB view details)

Uploaded Python 3 manylinux: glibc 2.12+ i686

pyoxidizer-0.15.0-py3-none-macosx_10_9_universal2.whl (15.0 MB view details)

Uploaded Python 3 macOS 10.9+ universal2 (ARM64, x86-64)

pyoxidizer-0.15.0-py3-none-macosx_10_7_x86_64.whl (7.7 MB view details)

Uploaded Python 3 macOS 10.7+ x86-64

File details

Details for the file pyoxidizer-0.15.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: pyoxidizer-0.15.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 7.0 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for pyoxidizer-0.15.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 3bf29f6c012cb79099f1e4964dcc3cb3ab8cef477778759a9a1da56ccc1e5afd
MD5 54bedba9b1273db8f0be7bc8120da1fe
BLAKE2b-256 49fd8bccc72667902ee66e93c2c17a73939ec01cafb84aa773e5e801104617db

See more details on using hashes here.

Provenance

File details

Details for the file pyoxidizer-0.15.0-py3-none-win32.whl.

File metadata

  • Download URL: pyoxidizer-0.15.0-py3-none-win32.whl
  • Upload date:
  • Size: 6.6 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for pyoxidizer-0.15.0-py3-none-win32.whl
Algorithm Hash digest
SHA256 2a943c3fee35fcf5832cf8396bef93f795fdb6bede2959e5f418f98987fad3c9
MD5 a66946e510b890fff47f9dce2f231f7e
BLAKE2b-256 3f98d89eba36f463f1c06f7e16777a803361ee06fbeb70b877bf3df2654f50a3

See more details on using hashes here.

Provenance

File details

Details for the file pyoxidizer-0.15.0-py3-none-manylinux2010_x86_64.whl.

File metadata

  • Download URL: pyoxidizer-0.15.0-py3-none-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 9.7 MB
  • Tags: Python 3, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for pyoxidizer-0.15.0-py3-none-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 996c687946eca25734a8de6d1b9a90b6da24204f0d6ff7f8661b00eb1dd6652b
MD5 3ff6c0a762f6fa54ea9408327b23440c
BLAKE2b-256 e7528bbf6c306d2186697981f944b8bd7939f2a82b7b1dfab81201b695e192e6

See more details on using hashes here.

Provenance

File details

Details for the file pyoxidizer-0.15.0-py3-none-manylinux2010_i686.whl.

File metadata

  • Download URL: pyoxidizer-0.15.0-py3-none-manylinux2010_i686.whl
  • Upload date:
  • Size: 10.3 MB
  • Tags: Python 3, manylinux: glibc 2.12+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for pyoxidizer-0.15.0-py3-none-manylinux2010_i686.whl
Algorithm Hash digest
SHA256 386c71a4a68c457420e7c04156c082e5fde0b24d60d2024aac92bb0e8e27d884
MD5 cb6e92ed166a63be3443bef8bd4a72ec
BLAKE2b-256 ef87ae0d6edbc2b75cd9b318d1cec09555f2a551c0b8ebde57c73864e90b0800

See more details on using hashes here.

Provenance

File details

Details for the file pyoxidizer-0.15.0-py3-none-macosx_10_9_universal2.whl.

File metadata

  • Download URL: pyoxidizer-0.15.0-py3-none-macosx_10_9_universal2.whl
  • Upload date:
  • Size: 15.0 MB
  • Tags: Python 3, macOS 10.9+ universal2 (ARM64, x86-64)
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for pyoxidizer-0.15.0-py3-none-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 21f4b70981163eee2e57d0232d79ab023aa038659f1fed91b5462b73c71189aa
MD5 2d704a9531c6acf4ec768637c416d7cc
BLAKE2b-256 cfa413ecb579ec1704a01e44051e5a44d4f3a96b6708ca1716ef6a8b19075b0a

See more details on using hashes here.

Provenance

File details

Details for the file pyoxidizer-0.15.0-py3-none-macosx_10_7_x86_64.whl.

File metadata

  • Download URL: pyoxidizer-0.15.0-py3-none-macosx_10_7_x86_64.whl
  • Upload date:
  • Size: 7.7 MB
  • Tags: Python 3, macOS 10.7+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for pyoxidizer-0.15.0-py3-none-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 2e8a45de6bb8912bc3a68da08d95143ce7335bf3c3f879e35c0b3c49cd64c817
MD5 1c75f255ab5335ba9f6cff86e2885f10
BLAKE2b-256 954b8ca6a3debe86995d523f2f2bbe1025efa474804fa6f489749bc914c69ce3

See more details on using hashes here.

Provenance

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