Spec URL: http://people.redhat.com/jdennis/python-nss.spec SRPM URL: http://people.redhat.com/jdennis/python-nss-0.0-1.fc9.src.rpm Description: Python bindings for Network Security Services (NSS) and Netscape Portable Runtime (NSPR)
review is here, see notes at the end N/A* source files match upstream: OK package meets naming and versioning guidelines. OK* specfile is properly named, is cleanly written and uses macros consistently. OK dist tag is present. OK build root is correct. OK license field matches the actual license. OK* license is open source-compatible (GPLv2). License text not included upstream. N/A latest version is being packaged. OK BuildRequires are proper. OK compiler flags are appropriate. OK %clean is present. BAD* package builds in mock (Rawhide/x86_64). N/A debuginfo package looks complete. N/A* rpmlint is silent. N/A final provides and requires look sane. N/A %check is present and all tests pass. OK no shared libraries are added to the regular linker search paths. OK owns the directories it creates. OK doesn't own any directories it shouldn't. OK no duplicates in %files. OK file permissions are appropriate. OK no scriptlets present. OK code, not content. OK documentation is small, so no -docs subpackage is necessary. OK %docs are not necessary for the proper functioning of the package. OK no headers. OK no pkgconfig files. OK no libtool .la droppings. OK not a GUI app. * could you start a project on fedorahosted.org? http://fedoraproject.org/wiki/Packaging/SourceURL#We_are_Upstream * could be adding Provides: python-nspr useful for users? * you should include license text in the package and install it as %doc * you must use %python_sitearch instead of %python_sitelib * rpmlint on binary package is not silent - files %python_sitearch/nss/*.so are 0775, should be 0755 - examples/ssl_example.py is executable and this leads into dependency on /usr/bin/python => no executable scripts in %doc
Thank you for your prompt and thorough review Dan. I have corrected each of the issues you raised and uploaded new versions of the spec file and srpm at the url's above. Your suggestion of hosting this project on fedorahosted is one I would normally agree with but in this instance the NSS folks would prefer the source code live in the Mozilla CVS tree along with the rest of the upstream NSS code, which seems reasonable to me. The upstream NSS folks and I just need to finish that process, at which time I'll update the spec file with the proper URL (which by the way is the only rpmlint warning at this point).
Oh, it is completely right to use Mozilla CVS as the upstream location. I just wanted to assure that some upstream location exists. I have also notice that -O0 is added at the end of the compile command, but the reason is understandable. Just don't forget to remove it in the future :-) What is the purpose of the added Provides: %{name}-%version}? I was talking about python-nspr in my previous comment, but only when it can be useful. And last note - please increase the release in each iteration, it makes tracking the changes easier.
I had misunderstood your comment about the Provides. I looked at all the other python spec files and saw many of them included what looked like a Provides of their own package which didn't make much sense to me, but I figured there was some mechanism at play I was unaware of. More careful examination reveals in those cases the names had subtle variations in spelling, hence the need for the provides. You are correct the %{name}-%{version} is meaningless, as to whether Provides: python-nspr would be useful is hard to say at this point. My expectation is folks will only use the NSPR component if they are using NSS. Why? Because NSPR is a platform independent wrapper around system services much like Python and it's libraries are so there is little point in using the NSPR component of the binding unless you're compelled to because NSS depends on it. Thus I think the right thing is to remove the provides completely at this juncture, which I have done. I will update the files with a new revision number shortly, the only change from a packaging perspective will be the removal of the Provides.
All issues are fixed or explained, so this PACKAGE is APPROVED.
New Package CVS Request ======================= Package Name: python-nss Short Description: Python bindings for Network Security Services (NSS) Owners: jdennis Branches: F-9 InitialCC: jdennis Cvsextras Commits: yes
cvs done.
John, you should close the bug after importing and building.
Discussed with John on IRC, requesting branch for EPEL. Package Change Request ====================== Package Name: python-nss New Branches: EL-5 Owners: jkeating
CVS done.