TL;DR: There's a proposal for nuking the list of BuildRequires
exceptions from the packaging guidelines.
Important note: this is just an idea. We're not currently changing the
guidelines based on this. Nothing is set in stone. It may end up that
nothing happens. Don't panic.
A couple of times recently, people have floated proposals to the FPC
about removing certain things from the buildroot. (Specifically, perl
and gcc*.) And the bottom line for these is that while FPC tries to
maintain a list of BuildRequires: exceptions, this is really up to
releng and whatever rpm happens to pull in at any particular time.
This means that whatever list FPC maintains, it's going to get outdated
eventually, and giving packagers the idea that they don't have to
actually specify all of their dependencies restricts what releng can do
and, perhaps, what dependencies the RPM package can drop without
breaking builds.
So, the generally stated proposal:
I would like to get FPC out of the business of specifying this list of
exceptions, and instead just indicate that packagers should completely
specify their dependencies.
My specific proposal can be seen in
https://fedorahosted.org/fpc/ticket/497; the draft is at
https://fedoraproject.org/wiki/User:Tibbs/BuildReqDraft2. You can use
the history tab to see the differences between that and the current
guidelines.
Now, the real issue is in what packagers can depend upon. Obviously you
have RPM and an environment necessary to build a package (which means
you have to have a shell to execute the scripts that make up the RPM
sections, and redhat-rpm-config, and whatever RPM happens to use to
execute %patch, which I guess could be some internal library if the RPM
devs wanted). But what else? That's the open question.
The draft currently says:
---
You may assume that you have everything necessary for RPM to function
and process your spec file (so of course RPM is present, along with
redhat-rpm-config and what is necessary for RPM to apply patches, unpack
archives, and run the shell scripts which make up the spec file
sections.) You should not assume any other packages are present, as RPM
dependencies and anything brought into the buildroot by the build system
may change over time.
---
Honestly, I'm not completely satisfied with that but I can't come up
with anything better. Polite discussion is welcomed and encouraged.
- J<

Hi, I'm working to update my packages to use %license, and I have two
questions:
1: Must license files be placed in /usr/share/licenses/<package>, or is
it only required that they are tagged as license files in the package?
For example, if a package's build system installs a license in
/usr/share/doc/<package>, is the spec required to move it from there to
/usr/share/licenses/<package>, or is it enough to tag it with %license
in the file list?
2: When a package has a list of authors separate from the license file,
should that list also be tagged as a license file, or is it considered
regular documentation? It seems to me that *who* gives out a license is
important information that belongs together with the license.
Björn Persson

Been running into a Rawhide rebuild failure caused by a strangely
packaged libcanberra-devel: https://bugzilla.redhat.com/1195363
First observation: The -devel package does not explicitly depend
on all three library base packages. => Two of the three .so symlinks
on the -devel pkg point to non-existing targets.
Closer look: There used to be _automatic_ Requires on the library
SONAMEs. Those are missing in the recently rebuilt libcanberra-devel
package.
Is this an expected change in rpmbuild for Rawhide?

Hey everyone, first message to the mailing list and a new packager in
general. I've gone over the wiki and the docs but a few things are
still unclear to me.
1) rpmlint complains about source0 not being a valid URL, but it
rpmbuild can't find the source if I have it correct... Currently it
says:
Source0:
https://github.com/01org/thermal_daemon/archive/v%{version}.tar.gz
But when I do "rpmbuild -ba thermal_daemon.spec" (following Fedora
Documentation http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/R...
) then rpmbuild complains about:
error: File /home/egriffith/rpmbuild/SOURCES/v1.30.tar.gz: No such
file or directory
presumably because its just looking at "v%{version}.tar.gz". What is
the appropriate fix here? The upstream source is in fact:
https://github.com/01org/thermal_daemon/archive/v%{version}.tar.gz (in
this case v1.30.tar.gz)
but the download link gives you "thermal_daemon-1.3.tar.gz" which is
in my SOURCES directory. So do I rename thermal_daemon-1.3.tar.gz to
be "v1.30.tar.gz" or do I modify "Source0" to not be 100% faithful to
the actual URL? Or is there an override I can use to specify that the
downloaded files have a different name than the upstream source URL?
2) %build section. The original spec file had 'autoreconf' the
compilation instructions had ./autogen.sh. Which is the correct one to
use? Current spec uses autogen.sh
3) Is a "BuildRequires: systemd" necessary or is it just redundant?
4) Can someone link or explain the Requires(post)/(preun)/(postun),
same with %post, %preun, %postun
5) %files does every single file need to be listed here or just
'important ones? I left out /usr/share/src, /usr/lib and a couple
others.
6) Upstream name is "thermal_daemon" but I see it packaged elsewhere
as "thermald" and the binary / .service is thermald. Preference goes
to...?