Hey all,
I'm building python-uswid as a rpm as it's going to be needed by the fwupd-efi package at build time in the near future. I'm also the upstream maintainer, so I'm not against changing upstream and then tagging a new release if there's something that needs to be fixed to build a Fedora package. I'm no python expert, so advice very welcome.
I've uploaded a srpm here and I'd appreciate some early 40,000ft checks before I submit a Fedora package review: https://people.freedesktop.org/~hughsient/temp/python-uswid-0.4.1-1.fc37.src... -- the upstream is https://github.com/hughsie/python-uswid/ for the curious.
Thanks!
Richard.
On Tue, Jan 31, 2023 at 1:12 PM Richard Hughes rhughes@fedoraproject.org wrote:
Hey all,
I'm building python-uswid as a rpm as it's going to be needed by the fwupd-efi package at build time in the near future. I'm also the upstream maintainer, so I'm not against changing upstream and then tagging a new release if there's something that needs to be fixed to build a Fedora package. I'm no python expert, so advice very welcome.
I've uploaded a srpm here and I'd appreciate some early 40,000ft checks before I submit a Fedora package review: https://people.freedesktop.org/~hughsient/temp/python-uswid-0.4.1-1.fc37.src... -- the upstream is https://github.com/hughsie/python-uswid/ for the curious.
Thanks!
It mostly looks okay, but there's some spec details that need tuning up, as I've written below:
License: LGPLv2+
This should be "LGPL-2.1-or-later"
Cf. https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuideline...
Source0: https://files.pythonhosted.org/packages/af/b5/f935629332e1e3bf5bdc0d108c42d4...
You can simply this by using "%{pypi_source %{srcname}}"
Cf. https://docs.fedoraproject.org/en-US/packaging-guidelines/Python_201x/#_sour...
%files -n %{name}
This needs to be python3-%{srcname}, and you need to define "%package -n python3-%{srcname}"
Cf. https://docs.fedoraproject.org/en-US/packaging-guidelines/Python_201x/#_nami...
You may optionally decide to split out the main binary into another subpackage named "%{srcname}" if you choose. If you do, it needs a hard exact dependency on "python3-%{srcname}".
-- 真実はいつも一つ!/ Always, there's only one truth!
On 31. 01. 23 13:12, Richard Hughes wrote:
Hey all,
I'm building python-uswid as a rpm as it's going to be needed by the fwupd-efi package at build time in the near future. I'm also the upstream maintainer, so I'm not against changing upstream and then tagging a new release if there's something that needs to be fixed to build a Fedora package. I'm no python expert, so advice very welcome.
I've uploaded a srpm here and I'd appreciate some early 40,000ft checks before I submit a Fedora package review: https://people.freedesktop.org/~hughsient/temp/python-uswid-0.4.1-1.fc37.src... -- the upstream is https://github.com/hughsie/python-uswid/ for the curious.
Thanks!
Hey Richard.
I agree with what Neal said, plus:
You might want to follow the current Python packaging guidelines, i.e. use this template:
https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_empty_spe...
The main added benefit for this package:
Runtime requires aromatically generated as BuildRequires, so when tests run, they are installed and it works. Currently you don't BR python3-{cbor2,lxml,pefile} and hence the tests might fail. I'd be surprised if the tests pass without the runtime deps (it might indicate the tests are not "good enough").
The added benefit is that if the package would miss runtime dependencies, it won't build and you will realize the problem sooner.
Considering you are also the upstream, it allows you to specify test dependencies upstream (e.g. as an [test] extra, I can help with that) and not copy-paste the information into the spec file (I understand that if the only tests dependency is pytest, this does not sound like a big deal, but generally, it gets the packaging part easier).
On 31. 01. 23 13:12, Richard Hughes wrote:
Hey all,
I'm building python-uswid as a rpm as it's going to be needed by the fwupd-efi package at build time in the near future. I'm also the upstream maintainer, so I'm not against changing upstream and then tagging a new release if there's something that needs to be fixed to build a Fedora package. I'm no python expert, so advice very welcome.
I've uploaded a srpm here and I'd appreciate some early 40,000ft checks before I submit a Fedora package review: https://people.freedesktop.org/~hughsient/temp/python-uswid-0.4.1-1.fc37.src... -- the upstream is https://github.com/hughsie/python-uswid/ for the curious.
Another thing, if you decide not to use the current Packaging guidelines with automatically generated BuildRequires.
The https://github.com/hughsie/python-uswid/blob/main/setup.py file has:
from setuptools import setup
And hence the spec file must have:
BuildRequires: python3-setuptools
For %py3_build and %py3_install to work.
Have you tried to build the package?
Many thanks all; I've fixed up all the issues I think and submitted an actual review here: https://bugzilla.redhat.com/show_bug.cgi?id=2167067
Richard.
On Sat, Feb 4, 2023 at 10:32 AM Richard Hughes rhughes@fedoraproject.org wrote:
Many thanks all; I've fixed up all the issues I think and submitted an actual review here: https://bugzilla.redhat.com/show_bug.cgi?id=2167067
Reviewed. :)
python-devel@lists.fedoraproject.org