From Fedora Project Wiki

Revision as of 17:10, 17 March 2009 by Toshio (talk | contribs) (Brief para that package names often need file renames as well.)

Where

Packaging:Conflicts. New last section.

Also, link to this section from Packaging: NamingGuidelines After Section 1.1 (will be the new section 1.2)

Package names that could conflict

It is bad practice for a package to use a name that is likely to conflict with other utilities. There are several scenarios in which this could come into play:

  1. There is a conflicting package in Fedora
  2. There is a conflicting package that is not in Fedora yet
  3. There is no conflict yet

In the first case, the conflict Must be resolved. As names usually come from upstream, this means approaching the upstream of both packages (See #Standard_Commands for an exception) to try to get them to rename their packages and any files that conflict (for instance if they both had commands named %{_bindir}/trash. Doing some research about which has been around longer may be useful in this case but may or may not be persuasive to upstream.

If neither upstream renames, we would then approach other distributions (distributions-list[at]freedesktop.org is a good place to discuss this) about renaming that can be done in all distros. That helps end users going from one distro to another to have consistency. Length of time that the projects have been around, how popular each is, and numerous other factors may play a role in this decision. Once a decision is made, we would rename the Fedora packages to match.

In the second case, where a conflicting package is known to exist but is not yet in Fedora, the package should almost always be renamed. If you think your situation is unique, please send email to fedora-devel-list[at]redhat.com to make your case.

In the last case, where there is no known package to conflict with at this time, it is up to the packager to make a decision. Note that it is encouraged that you at least speak to upstream about the potential for conflicts because renaming packages and replacing them with others can be difficult if it has to occur at a later time (for instance, upgrade paths can become complex in these situations.) However, we can hope that any later projects that attempt to use that name can be persuaded to rename based on this project being around longer.

When a package name is changed for being likely to conflict you often have to change filenames as well. Follow the Packaging:Conflicts section to fix these.

Standard Commands

Common names are allowed for standard commands since those will be the only commands to implement them. Standard commands include things provided for in published and widely implemented standards like POSIX and de facto standards such as a program that has traditionally been shipped with a certain filename as part of a large number of Unix variants. If in doubt, send a message to fedora-devel-list[at]redhat.com with details of what standards the command appears in, how long it's been available on what Unix systems, and whether you've found any conflicting programs that implement a substantially different command with the same filename.