Home - installer

# Welcome to installer’s documentation

This is a low-level library for installing a Python package from a wheel distribution. It provides basic functionality and abstractions for handling wheels and installing packages from wheels.

- Logic for “unpacking” a wheel (i.e. installation).

- Abstractions for various parts of the unpacking process.

- Extensible simple implementations of the abstractions.

- Platform-independent Python script wrapper generation.

## Basic Usage

    import sysconfig

    from installer import install
    from installer.destinations import SchemeDictDestination
    from installer.sources import WheelFile

    # This represents the wheel file, and handle reading from it.
    source = WheelFile("sampleproject-1.3.1-py2.py3-none-any.whl")

    # This represents the installation directories, and writes to them.
    destination = SchemeDictDestination(sysconfig.get_config_vars())

    # This is the additional metadata, generated during installation.
    additional_metadata = {
        "INSTALLER": b"amazing-installer 0.1.0",
    }

    install(
        source=source,
        destination=destination,
        additional_metadata=additional_metadata,
    )

Attention

The `WheelFile` class mentioned above has not been implemented yet. Contributions are welcome!