Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Include non-Python data files into Python package
Update our pyproject.toml file to include some non-Python data files, e.g., our container image and assets. This way, we can use `poetry build` to create a source distribution / Python wheel from our source repository. Note that this list of data files is already defined in our `setup.py` script. In that script, one can find some extra goodies: 1. We can conditionally include data files in our Python package. We use this to include Qubes data only in our Qubes packages. 2. We can specify where will the data files be installed in the end-user system. The above are non-goals for Poetry [1], especially (2), because modern Python wheels are not supposed to install files in arbitrary places within the user's host, nor should the install invocation use sudo. Instead, this is a task that's better suited for the .deb / .rpm packages. So, why do we bother updating our `pyproject.toml` and not use `setup.py` instead? Because `setup.py` is deprecated [2,3], and the latest Python packaging RFCs [4], as well as most recent Fedora guidelines [5] use `pyproject.toml` as the source of truth, instead of `setup.py`. In subsequent commits, we will also use just `pyproject.toml` for RPM packaging. [1]: python-poetry/poetry#890 [2]: https://peps.python.org/pep-0517/#source-trees [3]: https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html [4]: https://peps.python.org/pep-0517/ [5]: https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/
- Loading branch information