Nightly cross build environments for building Pyodide packages
This repository contains nightly cross build environments for building Pyodide packages. The target user of this repository is package maintainers who want to build their packages against the unreleased version of Pyodide.
Each release in this repository contains a tip-of-tree build of Pyodide of the given date.
You can use the pyodide xbuildenv install command to install the build environment for a given date.
Note
The --nightly and --debug flags below need pyodide-build >= 0.35.0. If you're on an older version, use the --url form shown further down instead.
pip install pyodide-build>=0.35.0
# See which nightly releases are available
pyodide xbuildenv search --nightly
# Install the latest nightly release
pyodide xbuildenv install --nightly
# Or install a specific nightly release by its date
pyodide xbuildenv install 20250125 --nightly
# Now you can use the build environment to build your package
pyodide buildOn older pyodide-build versions, install directly from the release URL instead:
pip install pyodide-build
# Change the date to the date of the build you want to use
pyodide xbuildenv install --url "https://github.com/pyodide/pyodide-build-environment-nightly/releases/download/20250125/xbuildenv.tar.bz2"
# Now you can use the build environment to build your package
pyodide buildFor debugging purposes, you can also use the debug version of the cross build environment:
pip install pyodide-build
# See which nightly debug releases are available
pyodide xbuildenv search --debug
# Install the latest nightly debug release
pyodide xbuildenv install --debug
# Or install a specific nightly debug release by its date
pyodide xbuildenv install 20250125 --debug
# Now you can use the build environment to build your package
pyodide buildOn older pyodide-build versions, install directly from the release URL instead:
pip install pyodide-build
# Change the date to the date of the build you want to use
pyodide xbuildenv install --url "https://github.com/pyodide/pyodide-build-environment-nightly/releases/download/20250125/xbuildenv-debug.tar.bz2"
# Now you can use the build environment to build your package
pyodide buildThe debug cross build environment is built with PYODIDE_DEBUG=1 and provides additional debugging information.
Note
The debug build does not make a difference in the build process itself. It is useful if you use the Pyodide CLI runner (pyodide venv), as
it will automatically use the installed debug cross build environment for the Pyodide runtime and provide additional debugging information. To
remove the debug build environment, you may use the pyodide xbuildenv uninstall command.
If you would like to verify the provenance and integrity of the release artifacts, you may download them and use the gh attestation command.
gh attestation verify dist/xbuildenv.tar.bz2 --repo pyodide/pyodide-build-environment-nightly
gh attestation verify dist/xbuildenv-debug.tar.bz2 --repo pyodide/pyodide-build-environment-nightlyFor more details on how to use the gh attestation command, please refer to the the GitHub CLI documentation.
For more information on attestations, please refer to the GitHub Attestations documentation.
The build environment is periodically built and released by GHA.
Otherwise, if you want to manually trigger a build, you can create a new tag. Creating a tag will trigger a GHA workflow that builds the cross build environment and uploads it as a release asset.