You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildstream.apache.org by GitBox <gi...@apache.org> on 2022/08/30 11:21:10 UTC

[GitHub] [buildstream] ssssam commented on pull request #1741: Update install instructions for final BuildStream 2.0 release

ssssam commented on PR #1741:
URL: https://github.com/apache/buildstream/pull/1741#issuecomment-1231527256

   I'm taking another look at this today, thanks for the detailed guidance.
   
   On dependencies and package lists, I will move them into a table, but we should still separate the install-time requirements (gcc, pip, python3-devel) from the runtime requirements. Let's try a table with 2 columns.
   
   About a suitable 'install' command for distro packagers, it's useful to give some guidance on this. The `python3 setup.py install` command will work (as long as Bst doesn't change buildsystem), but it may not be what distro package guidelines recommend now. did some quick research to satisfy my own curiousity:
   
     * Fedora recommends use of [a %pyproject_install macro](https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_build_macros), which runs `pip install --no-deps --no-index --use-pep517 .` ([link](https://src.fedoraproject.org/rpms/pyproject-rpm-macros/blob/rawhide/f/macros.pyproject#_60))
     * Debian doesn't give any strong recommendation, the existing [buildstream package](https://tracker.debian.org/pkg/buildstream) uses [pybuild](https://manpages.debian.org/bullseye/dh-python/pybuild.1.en.html) via debhelper, which autodetects one of multiple backends. Running `pybuild --detect` in buildstream.git reports `distutils`, so they do indeed [run `setup.py` directly](https://salsa.debian.org/python-team/tools/dh-python/-/blob/master/dhpython/build/plugin_distutils.py), although there is a `pyproject` backend that may become default in future which [runs `python3 -m build`](https://salsa.debian.org/python-team/tools/dh-python/-/blob/master/dhpython/build/plugin_pyproject.py).
   
   All this to highlight there's no "one size fits all" distro packager command, they should use whatever the Python guidelines for that distro recommends, and that can be either running setuptools directly or any PEP517 compatible frontend.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@buildstream.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org