Skip to content

General infrastructure for packaging Python packages that use PyO3 / maturin to build native Rust extensions #83614

@glittershark

Description

@glittershark

I've encountered two separate (not currently provided by nixpkgs) python packages that are built with maturin in the last week - orjson and tokenizers - and I can only imagine both that there are more out there, and that more are coming. I have orjson packaged very jankily by building it as a Rust crate directly using naersk, then stripping off the env vars from the resulting derivation and throwing them unceremoniously into buildPythonPackage. That works, but not in a way that I'd even dream of submitting it to nixpkgs - now that I've encountered my second package built using maturin it really is beginning to feel like this is something that buildPythonPackage should "just" handle transparently, the way it does Python packages with C extensions built-in. Anyone have any thoughts?

Metadata

Metadata

Assignees

Labels

0.kind: packaging requestRequest for a new package to be added6.topic: pythonPython is a high-level, general-purpose programming language.6.topic: rustGeneral-purpose programming language emphasizing performance, type safety, and concurrency.
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions