workspace

lib.workspace.loadWorkspace

Load a workspace from a workspace root

Arguments

workspaceRoot: Workspace root as a path

config: Config overrides for settings automatically inferred by loadConfig

Can be passed as either:

  • An attribute set
  • A function taking the generated config as an argument, and returning the augmented config

Workspace attributes

  • mkPyprojectOverlay: Create an overlay for usage with pyproject.nix's builders
  • mkPyprojectEditableOverlay: Generate an overlay to use with pyproject.nix's build infrastructure to install dependencies in editable mode.
  • config: Workspace config as loaded by loadConfig
  • deps: Pre-defined dependency declarations for top-level workspace packages
    • default: No optional-dependencies or dependency-groups enabled
    • optionals: All optional-dependencies enabled
    • groups: All dependency-groups enabled
    • all: All optional-dependencies & dependency-groups enabled

lib.workspace.loadConfig

Load supported configuration from workspace

Supports:

  • tool.uv.no-binary
  • tool.uv.no-build
  • tool.uv.no-binary-packages
  • tool.uv.no-build-packages

lib.workspace.discoverWorkspace

Discover workspace member directories from a workspace root. Returns a list of strings relative to the workspace root.

structured function argument

: workspaceRoot

: Workspace root directory

pyproject

: Workspace top-level pyproject.toml