Skip to main content

Package Python applications as self-contained AppImages

Project description

appimage

Package Python applications as self-contained AppImages.

Read the Docs

PyPI Python versions License Documentation Status


appimage bundles a complete Python distribution together with your application and all its dependencies into a single executable file.

The same Python that uv installs. The bundled interpreter comes from python-build-standalone — identical to what uv python install provides. What you develop with locally is what gets shipped in the AppImage.

Quick Start

pip install appimage

A pyproject.toml is all that's needed — and if your project already has one, you're ready to build. app, entry_point, and python version are read from [project] automatically.

# Check what will be detected before building
python -m appimage.build --check

# Build — the AppImage is written to dist/myapp-x86_64.AppImage
python -m appimage.build

# Optionally: persist detected values to pyproject.toml to pin or adjust them
python -m appimage.build --init

Bundled interpreter access

The bundled Python is accessible at runtime without extracting the AppImage:

./myapp-x86_64.AppImage --python-interpreter            # interactive REPL
./myapp-x86_64.AppImage --python-interpreter script.py  # run a script
./myapp-x86_64.AppImage --python-interpreter -m pip list
./myapp-x86_64.AppImage --python-list-entry-points      # list all entry points
./myapp-x86_64.AppImage --python-entry-point other:main # switch entry point

Virtual environments

The AppImage can act as the Python interpreter for a virtual environment. Packages installed into the venv extend the bundled ones — without repackaging the AppImage:

./myapp-x86_64.AppImage --python-interpreter -m venv ~/.venv/myapp
~/.venv/myapp/bin/pip install extra-package
~/.venv/myapp/bin/myapp

When launched through a venv symlink, the bundled appimage module activates the environment automatically.

Reproducible builds

Pin the exact Python release to get byte-for-byte reproducible AppImages:

[tool.appimage.build]
python_date = "20260211"

Configuration

All options go in [tool.appimage.build] inside pyproject.toml — every key is optional. Lifecycle hooks, extra files, custom AppRun scripts, and environment variable injection are supported.

Full documentation

Project details


Download files

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

Source Distribution

appimage-2.0.0.tar.gz (54.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

appimage-2.0.0-py3-none-any.whl (52.2 kB view details)

Uploaded Python 3

File details

Details for the file appimage-2.0.0.tar.gz.

File metadata

  • Download URL: appimage-2.0.0.tar.gz
  • Upload date:
  • Size: 54.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for appimage-2.0.0.tar.gz
Algorithm Hash digest
SHA256 053849a79f5376022e48f1b2f4ba9fd595660182486fa4f9b0c3f1f8cb49f651
MD5 fb270df7ede355c7b6637df8cb60b32c
BLAKE2b-256 451ace4d4918b85bf7fa0da7093c65be1badd4d9e86f3eab9190ff50cc42dd62

See more details on using hashes here.

Provenance

The following attestation bundles were made for appimage-2.0.0.tar.gz:

Publisher: python-publish.yml on ssh-mitm/appimage

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file appimage-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: appimage-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 52.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for appimage-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 18df34f9f5a01c4cacf97254f28531c443a48e54c4be4ce44fa1dfea52bd63a2
MD5 d1b7cb53cd88dc52edb9e31e1f95ac9f
BLAKE2b-256 12fc2055c4f53f508fe63a8fadd58e393c5c02c51e620805b7d0c724eb71ac21

See more details on using hashes here.

Provenance

The following attestation bundles were made for appimage-2.0.0-py3-none-any.whl:

Publisher: python-publish.yml on ssh-mitm/appimage

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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