libretro.py
A Python binding for libretro intended for testing cores, but suitable for any purpose. Ease of use, flexibility, and complete API support are top priorities.
Supported Environments
libretro.py has the following requirements:
- Python 3.12 or newer. May not work on alternative Python implementations like PyPy.
- Supported on Windows, macOS, and Linux. May work on other platforms, but no promises.
Nothing else is required for most functionality, but some extra features have additional dependencies or constraints.
If contributing then just is optional but recommended,
as it will simplify most development tasks.
For details, run just (no arguments) in the project root.
Installing
libretro.py supports Python 3.12 or newer. Nothing else is required for most functionality, but some extra features have additional dependencies.
You can install libretro.py with pip like so:
# Install the base libretro.py
pip install libretro.py
Using a virtual environment is recommended:
# Create a virtual environment
python -m venv ./venv
# Activate the virtual environment (in Bash)
source ./venv/bin/activate
# Activate the virtual environment (in PowerShell)
./venv/Scripts/activate.ps1
Extras
To install additional features,
add one or more of the following extras to the install command:
cli: Test scripts that don't rely on the nuances of any particular core. Use these to simplify your own core's test process.opengl: Support for the built-in OpenGL video driver. Required if testing a core's OpenGL support.opengl-window: Same as theopenglextra, but with support for opening an actual window. Can help simplify some debugging tasks, e.g. RenderDoc usage.
For example, if you want to submit an improvement to the OpenGL video driver, you would install libretro.py like so:
pip install -e .[opengl] --group dev
And if you just want to test your libretro core's OpenGL support:
pip install libretro.py[opengl]
Some of these extras have additional dependencies.
OpenGL
If using OpenGL support on Linux,
you may need to install the libopengl0 package.
Metadata
Release files for libretro.py 0.12.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| libretro_py-0.12.0-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| libretro_py-0.12.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl | Python 3 | none | Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 | Details |
| libretro_py-0.12.0-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl | Python 3 | none | Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 | Details |
| libretro_py-0.12.0-py3-none-macosx_11_0_arm64.whl | Python 3 | none | macOS 11.0+ ARM64 | Details |
| libretro_py-0.12.0-py3-none-macosx_10_15_x86_64.whl | Python 3 | none | macOS 10.15+ x86-64 | Details |
| libretro_py-0.12.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 3.4 MB
Release files / libretro_py-0.12.0-py3-none-win_amd64.whl
| Download URL | libretro_py-0.12.0-py3-none-win_amd64.whl |
|---|---|
| Size | 723.7 kB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ed6ad64cd42551a702bc3cff9cd0f7e9ce9f61bcc8f46efb60eaf70ce63fa189
|
|
BLAKE2b-256 checksum How to use checksums |
8b16a5b528779591d1b97686da853ccbe9567e4fd83549d0a12ba9dafa1502a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 23, 2026.
Transparency logRelease files / libretro_py-0.12.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | libretro_py-0.12.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 745.7 kB |
| Tags | Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
717f5a50f86652e32ada93d489e2123a7e2517d9caa9ea6340db6405f0a60086
|
|
BLAKE2b-256 checksum How to use checksums |
4a6c4ed3ef8f87797df78567ea4328170a5ee00ab7daa9ddca13b268cc0c7506
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 23, 2026.
Transparency logRelease files / libretro_py-0.12.0-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | libretro_py-0.12.0-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 750.5 kB |
| Tags | Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
a071a50d2a156d2eb14bb006e9db2e5af0dc0fc9e08b9bc7c65c66d523fbba22
|
|
BLAKE2b-256 checksum How to use checksums |
832c900f34177df70a21140e1e6d0922dff8ae0b8f096010a9be1bcf15e81351
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 23, 2026.
Transparency logRelease files / libretro_py-0.12.0-py3-none-macosx_11_0_arm64.whl
| Download URL | libretro_py-0.12.0-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 446.6 kB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
50e7101ea0045c7491a06be8342d2daea2939ce6daf5756452035877bf6b77c4
|
|
BLAKE2b-256 checksum How to use checksums |
959871912ca3c231f473589ea42596a6eb90be345076bde33fc375f4cecfd9f5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 23, 2026.
Transparency logRelease files / libretro_py-0.12.0-py3-none-macosx_10_15_x86_64.whl
| Download URL | libretro_py-0.12.0-py3-none-macosx_10_15_x86_64.whl |
|---|---|
| Size | 430.8 kB |
| Tags | Python 3 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
a47c664699bd0589f7dc5d06585c42cb621c56e7a02bc24c7a9e5ff090f659b6
|
|
BLAKE2b-256 checksum How to use checksums |
4ba1e44be7b84e40be7501ecc941aaf38decaf33bf90a2272bf1d1222072b197
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 23, 2026.
Transparency logRelease files / libretro_py-0.12.0-py3-none-any.whl
| Download URL | libretro_py-0.12.0-py3-none-any.whl |
|---|---|
| Size | 258.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2e99f5586c20cf68336da5faa4038225d906c2d3696d79403201ced72fa402aa
|
|
BLAKE2b-256 checksum How to use checksums |
9c11abb30ff480eac39e6003926984a017985b0508d37bba3da96e43c1277a7f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
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 23, 2026.
Transparency log