Hi all,
We've recently decided to take another look at getting Beaker into Fedora.
Reading through the long list of packaging guidelines[1] that are required to be met, I've come up with, what I believe to be, the problems that would need to be resolved before Beaker would meet these guidelines. I list them below in no particular order.
Rpmlint: Some errors, moslty the fiddling we do with RPM_BUILD_ROOT
Changelog: No details about changes included in the release, only an upstream link. The guidelines say, "Links to upstream changelogs can be entered for those who want additional information". So it seems a bit unclear to me as to whether or not 'additional' is the operative word here or not.
Documentation: According to the guidelines, 'relevent' documentation in the source must be inclded marked with %doc. AFAICT, the only docs in the documentation folder that are included in the binary rpms are the man pages, are a recreation of the releases page from the website. Although the guidelines do talk about irrelevant docs, and what they are, I'm not sure if the rest of our docs fall into that category.
PIE: We need to add instructions so that Beaker can make use of position-independent execution.
Requiring Base Package: Subpackages do not have a versioned Requires of their base package
Macros: We currently mix and match some macros (well, on only one case). Need to pick one style.
Directory ownership: Not all directories that beaker creates are owned by it.
Web content: We keep some beaker content in /var/www rather than /usr/share.
Unit tests: Need to execute our unittests in the %check section
Provides/Obsoletes: Need to add versions to some of our Provides/Obsoletes entries
If anyone can point out any misunderstanding of the guidelines, or in general anything else to add, please do.
Cheers, Raymond.
Excerpts from Raymond Mancy's message of 2014-02-10 17:10:02 +1000:
Documentation: According to the guidelines, 'relevent' documentation in the source must be inclded marked with %doc. AFAICT, the only docs in the documentation folder that are included in the binary rpms are the man pages, are a recreation of the releases page from the website. Although the guidelines do talk about irrelevant docs, and what they are, I'm not sure if the rest of our docs fall into that category.
The only relevant documentation for us (that is, relevant to be shipped in the package as %doc) would be COPYING, and the beaker-server upgrade notes. We do this correctly already I believe.
PIE: We need to add instructions so that Beaker can make use of position-independent execution.
Not sure which guideline you are referring to here but I doubt it applies, since Beaker is pure Python.
If anyone can point out any misunderstanding of the guidelines, or in general anything else to add, please do.
Did you also look over the Python guidelines? I think we already adhere to them all.
----- Original Message -----
From: "Dan Callaghan" dcallagh@redhat.com To: "beaker-devel" beaker-devel@lists.fedorahosted.org Sent: Monday, February 10, 2014 5:25:27 PM Subject: Re: [Beaker-devel] Getting Beaker into Fedora
Excerpts from Raymond Mancy's message of 2014-02-10 17:10:02 +1000:
Documentation: According to the guidelines, 'relevent' documentation in the source must be inclded marked with %doc. AFAICT, the only docs in the documentation folder that are included in the binary rpms are the man pages, are a recreation of the releases page from the website. Although the guidelines do talk about irrelevant docs, and what they are, I'm not sure if the rest of our docs fall into that category.
The only relevant documentation for us (that is, relevant to be shipped in the package as %doc) would be COPYING, and the beaker-server upgrade notes. We do this correctly already I believe.
I suppose that's right. What is confusing is it talks about docs 'included in the source distribution'. We have a lot more in the source distribution than what we have in our binary RPMs.
PIE: We need to add instructions so that Beaker can make use of position-independent execution.
Not sure which guideline you are referring to here but I doubt it applies, since Beaker is pure Python.
Apparently any package that meets the following criteria (amongst possible others):
"Your package is long running. This means it's likely to be started and keep running until the machine is rebooted, not start on demand and quit on idle."
Beaker meets that criteria.
If anyone can point out any misunderstanding of the guidelines, or in general anything else to add, please do.
Did you also look over the Python guidelines? I think we already adhere to them all.
Hmm, I saw it was for 'Python addon modules'. I assumed that would be something, that is actually packaged as python-*. I'll double check though and see if it is relevent to us, and if so, what is needed to be in compliance with it.
-- Dan Callaghan dcallagh@redhat.com Software Engineer, Hosted & Shared Services Red Hat, Inc.
Beaker-devel mailing list Beaker-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/beaker-devel
Excerpts from Raymond Mancy's message of 2014-02-10 19:47:51 +1000:
----- Original Message -----
From: "Dan Callaghan" dcallagh@redhat.com To: "beaker-devel" beaker-devel@lists.fedorahosted.org Sent: Monday, February 10, 2014 5:25:27 PM Subject: Re: [Beaker-devel] Getting Beaker into Fedora
Did you also look over the Python guidelines? I think we already adhere to them all.
Hmm, I saw it was for 'Python addon modules'. I assumed that would be something, that is actually packaged as python-*. I'll double check though and see if it is relevent to us, and if so, what is needed to be in compliance with it.
Sorry I should have linked to them. Anything written in Python has to adhere to the Python guidelines:
https://fedoraproject.org/wiki/Packaging:Python
----- Original Message -----
From: "Dan Callaghan" dcallagh@redhat.com To: "beaker-devel" beaker-devel@lists.fedorahosted.org Sent: Tuesday, February 11, 2014 8:58:22 AM Subject: Re: [Beaker-devel] Getting Beaker into Fedora
Excerpts from Raymond Mancy's message of 2014-02-10 19:47:51 +1000:
----- Original Message -----
From: "Dan Callaghan" dcallagh@redhat.com To: "beaker-devel" beaker-devel@lists.fedorahosted.org Sent: Monday, February 10, 2014 5:25:27 PM Subject: Re: [Beaker-devel] Getting Beaker into Fedora
Did you also look over the Python guidelines? I think we already adhere to them all.
Hmm, I saw it was for 'Python addon modules'. I assumed that would be something, that is actually packaged as python-*. I'll double check though and see if it is relevent to us, and if so, what is needed to be in compliance with it.
Sorry I should have linked to them. Anything written in Python has to adhere to the Python guidelines:
Ok, so following up on this, the only problem we should have is that unversioned python macros in the spec have been deprecated for versioned ones.
-- Dan Callaghan dcallagh@redhat.com Software Engineer, Hosted & Shared Services Red Hat, Inc.
Beaker-devel mailing list Beaker-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/beaker-devel
Excerpts from Raymond Mancy's message of 2014-02-20 12:53:37 +1000:
Ok, so following up on this, the only problem we should have is that unversioned python macros in the spec have been deprecated for versioned ones.
Right, plus the much more fundamental problem that beaker depends on rhts and rhts violates the FHS...
Excerpts from Dan Callaghan's message of 2014-02-20 13:02:26 +1000:
Excerpts from Raymond Mancy's message of 2014-02-20 12:53:37 +1000:
Ok, so following up on this, the only problem we should have is that unversioned python macros in the spec have been deprecated for versioned ones.
Right, plus the much more fundamental problem that beaker depends on rhts and rhts violates the FHS...
Oh sorry, you probably meant "the only problem we have with the Python-specific guidelines".
----- Original Message -----
From: "Dan Callaghan" dcallagh@redhat.com To: "beaker-devel" beaker-devel@lists.fedorahosted.org Sent: Thursday, February 20, 2014 1:03:59 PM Subject: Re: [Beaker-devel] Getting Beaker into Fedora
Excerpts from Dan Callaghan's message of 2014-02-20 13:02:26 +1000:
Excerpts from Raymond Mancy's message of 2014-02-20 12:53:37 +1000:
Ok, so following up on this, the only problem we should have is that unversioned python macros in the spec have been deprecated for versioned ones.
Right, plus the much more fundamental problem that beaker depends on rhts and rhts violates the FHS...
Oh sorry, you probably meant "the only problem we have with the Python-specific guidelines".
Yes :-)
-- Dan Callaghan dcallagh@redhat.com Software Engineer, Hosted & Shared Services Red Hat, Inc.
Beaker-devel mailing list Beaker-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/beaker-devel
On 02/10/2014 07:47 PM, Raymond Mancy wrote:
Apparently any package that meets the following criteria (amongst possible others):
"Your package is long running. This means it's likely to be started and keep running until the machine is rebooted, not start on demand and quit on idle."
Beaker meets that criteria.
It's CPython and our extension module support that need to adhere to that requirement, though. Python applications then follow it automatically.
Cheers, Nick.
beaker-devel@lists.fedorahosted.org