build: add dev deps for Nuitka onefile binary builds

Run with:
  uv run python -m nuitka --project --mode=onefile \
    --output-dir=build --output-filename=graphify \
    --assume-yes-for-downloads

Produces build/graphify, a self-contained ~60 MB binary that bundles
the package's skill *.md files (picked up automatically from
[tool.setuptools.package-data] via Nuitka's --project flow). The
existing wheel-build path (uv build via setuptools.build_meta) is
unchanged.

[tool.nuitka] config in pyproject.toml is not used: in --project mode
Nuitka builds the option list from setuptools distribution metadata
(_dumpBuildConfiguration in nuitka/distutils/DistutilsCommands.py)
and never reads [tool.nuitka], so output-dir / output-filename / etc.
must be passed on the CLI.

patchelf is required at build time on Linux and macOS for Nuitka's
standalone/onefile linking; gated by sys_platform != 'win32' so
Windows dev installs skip it.
This commit is contained in:
Brian Kanya
2026-05-15 21:58:16 -04:00
parent d14e8a72d1
commit 246f4001d2
+9
View File
@@ -82,3 +82,12 @@ graphify = ["skill.md", "skill-codex.md", "skill-opencode.md", "skill-aider.md",
[tool.bandit]
skips = ["B404"]
[dependency-groups]
dev = [
"build>=1.5.0",
"nuitka>=4.1",
"patchelf>=0.17.2.4 ; sys_platform != 'win32'",
"setuptools>=82.0.1",
"wheel>=0.47.0",
]