pyinstaller-hooks-contrib
Community maintained hooks for PyInstaller
What it is and what it does
PyInstaller-hooks-contrib is a repository of community-contributed hooks that teach PyInstaller how to handle third-party packages that don't bundle correctly on their own. When PyInstaller encounters a package, it doesn't automatically know about that package's data files, hidden imports, or special runtime setup—hooks fill that gap by specifying what should be included in the final bundled application. The package installs as a dependency alongside PyInstaller and is automatically discovered; hooks are applied without requiring explicit configuration.
Hooks come in two forms: standard hooks (which tell PyInstaller what to include in the bundle) and runtime hooks (which set up the environment when the bundled app starts). The repository collects hooks for many popular packages, allowing developers to use PyInstaller with libraries that would otherwise fail to bundle. If a package doesn't have a hook, either it works fine without one or the community hasn't contributed one yet.
Use it for:
- Bundle a Python application that uses a third-party library with data files or hidden imports that PyInstaller can't detect automatically.
- Create standalone executables from scripts that depend on packages known to have compatibility issues with PyInstaller.
- Contribute a hook for a package you maintain or use frequently to help other developers bundle applications with it.
- Ensure runtime environment setup (e.g., library paths, configuration) is correct when PyInstaller launches a bundled app.
- Maintain compatibility across multiple Python versions and platforms when distributing PyInstaller-based applications.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides community-maintained hooks that extend PyInstaller to bundle data files, hidden imports, and runtime configurations for packages that don't work out of the box with PyInstaller.
Yes. Install this automatically when you install PyInstaller (it's a dependency), or explicitly if you're bundling applications with packages that need hooks. The package is actively maintained, has no known vulnerabilities, and low install friction. The only caveat is the unclear license metadata—verify the actual license terms match your project's requirements before use.
Install
pyinstaller-hooks-contrib on PyPI
pip
pip install pyinstaller-hooks-contribuv
uv add pyinstaller-hooks-contribpoetry
poetry add pyinstaller-hooks-contribInstalling pyinstaller-hooks-contrib
Before you install
Low friction installation with only two lightweight runtime dependencies (importlib_metadata and packaging). Actively maintained with a recent release; last commit was 2026-08-10 and the project has 122 stars.
License in practice
License treatment is unclear—the package declares both Apache and GPL v2 classifiers but provides no explicit SPDX or raw license metadata. Verify the actual license terms before use in proprietary or restricted-license projects.
Quickstart
pip install pyinstaller-hooks-contrib
# Hooks are automatically discovered by PyInstaller when installed
# Use PyInstaller normally; hooks for supported packages apply automatically
pyinstaller --onefile your_script.py
Requires Python 3.8 or later. Hooks only apply to packages for which they have been contributed; unsupported packages may still fail to bundle correctly.
Verify before relying
- Whether all hooks are actively maintained and tested across current Python versions
- Coverage of which specific packages have hooks available and how complete those hooks are
- Whether the Apache and GPL v2 license declarations are both accurate or if one is the primary license
Package facts
| License | not declared (unclear) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — importlib_metadata, packaging |
| Maintenance | actively maintained — 67 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 11,545,181/month — #1,383 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyinstaller_hooks_contrib-2026.6-py3-none-any.whl
Keywords: pyinstaller, development, hooks
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
types-pyinstallerProvides type stubs for pyinstaller, enabling…
permissive · top 15,000 on PyPI
pyinstallerPyInstaller bundles a Python application and…
copyleft · top 5,000 on PyPI
pyinstxtractor-ngExtracts Python bytecode and resources from…
copyleft · top 15,000 on PyPI
pyinstaller-versionfileGenerates Windows VERSIONINFO resource files…
permissive · top 15,000 on PyPI
pre-commit-hooksProvides a collection of reusable pre-commit…
permissive · top 5,000 on PyPI
tkinterdnd2Adds native drag-and-drop support to Tkinter…
permissive · top 15,000 on PyPI
mkdocs-simple-hooksA MkDocs plugin that lets you define custom…
permissive · top 15,000 on PyPI
auto-py-to-exeProvides a graphical interface to convert…
permissive · top 15,000 on PyPI
pyproject-hooksCalls build-backend hooks defined in…
permissive · top 1,000 on PyPI
hatchling-autoextras-hookA Hatchling metadata hook that automatically…
permissive · top 5,000 on PyPI