fix: bundle all runtime files in aisbf/_share/ so wheel install is self-contained
pip's data_files extraction is unreliable for user installs with --break-system-packages: files either land in the wrong prefix or are silently dropped from the wheel entirely. Fix: build_py hook in setup.py copies main.py, aisbf.sh, requirements.txt, templates/, static/, and config/ into aisbf/_share/ at wheel-build time. These are declared as package_data so pip always installs them to site-packages/aisbf/_share/ regardless of install mode. cli.py now: - Checks all sysconfig-derived paths for a complete share directory - Falls back to bootstrapping: copies the full aisbf/_share/ bundle to ~/.local/share/aisbf/ on first run if data_files were not installed - Works for both wheel installs (uses _share/) and editable installs (uses the project root directly as the bundle source) - Prints a clear error with checked paths and reinstall instructions if bootstrap also fails aisbf/_share/ is gitignored (generated at build time).
Showing
Please
register
or
sign in
to comment