fromager
Fromager is a tool for rebuilding complete dependency trees of Python wheels from source.
Goals
Fromager is designed to guarantee that:
-
Every binary package you install was built from source in a reproducible environment compatible with your own.
-
All dependencies are also built from source, no prebuilt binaries.
-
The build tools themselves are built from source, ensuring a fully transparent toolchain.
-
Builds can be customized for your needs: applying patches, adjusting compiler options, or producing build variants.
Design Principles
Fromager automates the build process with sensible defaults that work for most PEP-517–compatible packages. At the same time, every step can be overridden for special cases, without baking those exceptions into Fromager itself.
Build Collections of Wheels
Fromager can also build wheels in collections, rather than individually. Managing dependencies as a unified group ensures that:
-
Packages built against one another remain ABI-compatible.
-
All versions are resolved consistently, so the resulting wheels can be installed together without conflicts.
This approach makes Fromager especially useful in Python-heavy domains like AI, where reproducibility and compatibility across complex dependency trees are essential.
Authentication
Fromager automatically authenticates to GitHub and GitLab APIs using credentials from netrc or environment variables. See the authentication guide for details.
Additional docs
What's with the name?
Python's name comes from Monty Python, the group of comedians. One of their skits is about a cheese shop that has no cheese in stock. The original Python Package Index (pypi.org) was called The Cheeseshop, in part because it hosted metadata about packages but no actual packages. The wheel file format was selected because cheese is packaged in wheels. And "fromager" is the French word for someone who makes or sells cheese.
Metadata
Release files for fromager 0.96.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fromager-0.96.0.tar.gz | 599.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fromager-0.96.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 806.3 kB
Release files / fromager-0.96.0.tar.gz
| Download URL | fromager-0.96.0.tar.gz |
|---|---|
| Size | 599.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
369a14e722d27c3abd670143123cf6b7ee942b51e37b2abdfa8509b3b9b30a61
|
|
BLAKE2b-256 checksum How to use checksums |
3e428397292646e490ee21de61c5d9c5ff11164d6152f90a5a6b426eccf7c681
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 18, 2026.
Transparency logRelease files / fromager-0.96.0-py3-none-any.whl
| Download URL | fromager-0.96.0-py3-none-any.whl |
|---|---|
| Size | 207.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2d347c7063124d958213761f9640a72854fd0d8bf58c6fc1275be02aa47e0b12
|
|
BLAKE2b-256 checksum How to use checksums |
e127cd0cbda18c15d797976e48ca76e720ffee7eb52261f766752388f98e2f6a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 18, 2026.
Transparency log