renderers
lib.renderers.withPackages
Type: withPackages :: AttrSet -> lambda
Renders a project as an argument that can be passed to withPackages
Evaluates PEP-508 environment markers to select correct dependencies for the platform but does not validate version constraints.
For validation see lib.validators
.
structured function argument
: project
: Project metadata as returned by lib.project.loadPyproject
python
: Python derivation
pythonPackages
: Nixpkgs Python package set
extras
: Python extras (optionals) to enable
groups
: PEP-735 dependency groups to enable.
extraPackages
: Extra withPackages function
environ
: PEP-508 environment
::: {.example #function-library-example-lib.renderers.withPackages}
lib.renderers.withPackages
usage example
# withPackages (lib.project.loadPyproject { ... })
«lambda @ «string»:1:1»
:::
lib.renderers.buildPythonPackage
Type: buildPythonPackage :: AttrSet -> AttrSet
Renders a project as an argument that can be passed to buildPythonPackage/buildPythonApplication.
Evaluates PEP-508 environment markers to select correct dependencies for the platform but does not validate version constraints.
For validation see lib.validators
.
structured function argument
: project
: Project metadata as returned by lib.project.loadPyproject
python
: Python derivation
pythonPackages
: Nixpkgs Python package set
extras
: Python extras (optional-dependencies) to enable.
groups
: PEP-735 dependency groups to enable.
extrasAttrMappings
: Map a Python extras group name to a Nix attribute set like: { dev = "checkInputs"; } This is intended to be used with optionals such as test dependencies that you might want to remap to checkInputs.
format
: Which package format to pass to buildPythonPackage If the format is "wheel" PEP-518 build-systems are excluded from the build.
environ
: PEP-508 environment
::: {.example #function-library-example-lib.renderers.buildPythonPackage}
lib.renderers.buildPythonPackage
usage example
# buildPythonPackage { project = lib.project.loadPyproject ...; python = pkgs.python3; }
{ pname = "blinker"; version = "1.3.3.7"; dependencies = [ ]; }
:::
lib.renderers.mkPythonEditablePackage
Type: mkPythonEditablePackage :: AttrSet -> AttrSet
Renders a project as an argument that can be passed to mkPythonEditablePackage.
Evaluates PEP-508 environment markers to select correct dependencies for the platform but does not validate version constraints.
For validation see lib.validators
.
Note for Nix Flake users:
Flakes are copied to the store when using pure evaluation, meaning that the project root will point to a store directory.
Either set root manually to a string using the returned attribute set, or evaluate using --impure
.
::: {.example #function-library-example-lib.renderers.mkPythonEditablePackage}
lib.renderers.mkPythonEditablePackage
usage example
# mkPythonEditablePackage { project = lib.project.loadPyproject ...; python = pkgs.python3; }
{ pname = "blinker"; version = "1.3.3.7"; dependencies = [ ]; }
:::
lib.renderers.meta
Type: meta :: AttrSet -> AttrSet
Renders a project as a meta attribute
This is used internally in renderers.mkPythonPackages
structured function argument
: project
: Function argument