Skip to content
Back to top
View this page

# 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 sys
    import sysconfig

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

    # Handler for installation directories and writing into them.
    destination = SchemeDictionaryDestination(
        sysconfig.get_paths(),
        interpreter=sys.executable,
        script_kind="posix",
    )

    with WheelFile.open("sampleproject-1.3.1-py2.py3-none-any.whl") as source:
        install(
            source=source,
            destination=destination,
            # Additional metadata that is generated by the installation tool.
            additional_metadata={
                "INSTALLER": b"amazing-installer 0.1.0",
            },
        )