Guidelines for applications and launchers
This policy is written with two facts in mind:
- Fedora's default desktop offering is Fedora Workstation.
- Fedora Workstation uses GNOME by default.
As such, if the WG would decide to switch desktops, this policy will need to be re-evaluated.
Furthermore, this policy does not aim to apply to all applications in the distribution. It's meant to apply to anything we include by default in our default desktop product. If other applications want to follow it it'd be great, because it will improve user experience, but I can't force them to.
In the following policy, I differentiate between "app launcher" and "app".
An "app launcher" is a desktop file+icon that is shown in the application view, clicking on it would launch the app.
An "app" is an application as defined by the GNOME 3 HIG (link TBD when HIG is published).
As always in policies, mandatory items are marked with the words "must" and "must not", the rest is nice-to-have.
App launchers in Fedora workstation must:
- Have a unique 64x64 launcher icon with an alpha channel.
- Have a matching High Contrast icon.
- Have a name that is either short enough to not be elipsized by the shell (shorter than 15 characters) or immediately recognizable even when elipsized.
- Have a comment field in the desktop file with a one line summary of what the app is.
App launchers in Fedora workstation should:
- Launch software that is an actual app - see the GNOME 3 HIG on the exact definition (link TBD when the HIG is published)
- If the app is not an actual app, it should have the appropriate desktop file categories to be placed in the Sundry folder in GNOME Shell.
Apps in Fedora Workstation must:
- Not depend on / pull in other apps OR app launchers.
- Have exactly one app launcher - ie. two launchers to two separate parts of the same app is not allowed.
- Be packaged separately (subpackages are okay) form other apps OR launchers OR plugins.
- Installable and removable independently from within GNOME Software, unless part of the "core applications" set, in which case they must NOT be removable.
Default apps in Fedora Workstation should:
- Have appdata metadata.
- Have a good reason for being included in the default set, especially if not considered part of the core desktop experience by the GNOME upstream.
- Start in under than 10 seconds (on modern hardware).
An app or launcher that fails to complies with these guidelines MUST NOT be included in the default install.
Furthermore, if an app that doesn't follow this policy is included by default, it should be considered a Final Release blocker until the app is fixed to conform the policy or removed from the default install.