From Fedora Project Wiki
(Wayland windows are applications too!)
Line 4: Line 4:
[http://www.freedesktop.org/Standards/startup-notification-spec StartupNotify]
[http://www.freedesktop.org/Standards/startup-notification-spec StartupNotify]
entries.
entries.
=== Application independence ===
Applications SHOULD be installable independently. If a source package provides multiple applications, those applications SHOULD be packaged in separate subpackages. In cases where this is not feasible for technical reasons, the .desktop files MUST be packaged separately from the application itself in order to feign this effect for users. That is, if a single source package provides multiple applications with .desktop files, those .desktop files MUST be packaged in separate binary packages, and binary packages MUST NOT contain multiple .desktop files (unless all but one of those .desktop files contains the line <code>NoDisplay=true</code>).
Packages that contain a .desktop file without the line <code>NoDisplay=true</code> MUST NOT have a Requires, Recommends, or Supplements on any other package containing a desktop file without the line <code>NoDisplay=true</code>. If a source package provides both a library intended to be used by other packages and also an associated application, that application SHOULD be packaged in a subpackage in order to allow other applications to depend on only the library; otherwise, applications will not be able to use the library without violating the previous rule.

Revision as of 04:09, 3 May 2017

Desktop files

If a package contains a GUI application, then it needs to also include a properly installed .desktop file. For the purposes of these guidelines, a GUI application is defined as any application which draws a window and runs from within that window. Installed .desktop files MUST follow the desktop-entry-spec , paying particular attention to validating correct usage of Name, GenericName, Categories , StartupNotify entries.

Application independence

Applications SHOULD be installable independently. If a source package provides multiple applications, those applications SHOULD be packaged in separate subpackages. In cases where this is not feasible for technical reasons, the .desktop files MUST be packaged separately from the application itself in order to feign this effect for users. That is, if a single source package provides multiple applications with .desktop files, those .desktop files MUST be packaged in separate binary packages, and binary packages MUST NOT contain multiple .desktop files (unless all but one of those .desktop files contains the line NoDisplay=true).

Packages that contain a .desktop file without the line NoDisplay=true MUST NOT have a Requires, Recommends, or Supplements on any other package containing a desktop file without the line NoDisplay=true. If a source package provides both a library intended to be used by other packages and also an associated application, that application SHOULD be packaged in a subpackage in order to allow other applications to depend on only the library; otherwise, applications will not be able to use the library without violating the previous rule.