Installation#
shakeout is a command-line tool for CPython 3.10 or newer. Its only dependency is tomli, on 3.10.
Build with the interpreter you deploy on
shakeout locates the standard library and third-party packages the way the running
interpreter would. To target a specific version, run it with that interpreter, for example
uvx --python 3.13 shakeout .... For third-party dependencies, --uv installs the locked
versions for a chosen --python-version and --platform. See
Dependencies and uv.
uv integration#
uv has no plugin interface, so shakeout runs as a separate tool:
- it reads its settings from
[tool.shakeout]in the samepyproject.tomluv uses; - it uses uv to install the dependencies pinned in
uv.lockwhen you pass--uv.