[Guidelines Change] Changes to the Packaging Guidelines

Tom Callaway tcallawa at redhat.com
Wed Jun 6 18:03:18 UTC 2012

Here is the latest set of changes to the Fedora Packaging Guidelines:


In Fedora, you can assume that the default shell (/bin/sh) is bash.
Thus, all scriptlets can safely assume that if they are running in shell
code, they are running within bash.



A bundling exception was granted for calibre to bundle their forked
version of pyPdf.



A new set of MinGW guidelines are in place for Fedora 17+. These
guidelines reflect the existence of mingw32 and mingw64.


Older guidelines remain in place for older versions of Fedora (and RHEL
6 or older):



A section of the Ruby Guidelines concerning the appropriate place to
copy C extensions in the spec file template has been clarified and enhanced:



Guidelines for usage of tmpfiles.d have been updated to better reflect
the current stage of Fedora and other Fedora guidelines. In summary:

* Dropped the irrelevant talk of "both systemd and upstart"
* Prefer talking of /run everywhere instead of /var/run
* Ship the packaged files in %{_prefix}/lib/tmpfiles.d/, not
* Do not mark the files as %config and add an explanation why.
* Use the more usual 'd' specifier instead of 'D'.
* Nudge packagers into thinking about the permission mode of their
  directories, rather than copying the "0710" dogmatically.


The systemd guidelines have been update to reflect the fact that unit
files should avoid using StandardOutput= or StandardError=. The default
is the right choice for almost all cases, and using the default allows
users to change global defaults in /etc/systemd/system.conf.

Also, all references to "After=syslog.target" have been dropped, as that
is no longer correct or relevant in current versions of Fedora.



The packaging guidelines now mention that the %make_install macro (*not*
to be confused with %makeinstall) may be used instead of "make



A new section was added to the guidelines to indicate that Fedora uses
gcc as the compiler (for all languages that gcc supports). Packages may
only build with an alternative compiler to gcc if upstream does not
support gcc.



These guidelines (and changes) were approved by the Fedora Packaging
Committee (FPC).

Many thanks to Kevin Fenzi, Hans de Goede, Vít Ondruch, Erik van
Pienbroek, Petr Pisar, Lennart Poettering, Michal Schmidt, Rahul
Sundaram, and all of the members of the FPC, for assisting in drafting,
refining, and passing these guidelines.

As a reminder: The Fedora Packaging Guidelines are living documents! If
you find something missing, incorrect, or in need of revision, you can
suggest a draft change. The procedure for this is documented here:


devel-announce mailing list
devel-announce at lists.fedoraproject.org

More information about the devel mailing list