Skip to content
This repository has been archived by the owner on May 28, 2023. It is now read-only.

Before You Publish

Cassidy James Blaede edited this page Nov 6, 2017 · 38 revisions

AppCenter Dashboard has a few requirements that must be met in order to publish your app. For a quick intro on writing apps for elementary OS, check out our Getting Started guide.

Technical Requirements

Your app must be hosted in a GitHub repository. AppCenter Dashboard works by importing source code from a GitHub repository and building it in a clean environment. Binaries cannot be uploaded.

Your app must install an appdata.xml file to /usr/share/metainfo. AppCenter uses this metadata to create a listing for your app. It cannot be displayed in AppCenter without it.

Your app must install a .desktop file to /usr/share/applications. elementary OS uses a .desktop file to display your app in the applications launcher and the dock. Without this file, your app will not be visible to users.

Your app must install icons to /usr/share/icons/hicolor in 32px, 48px, 64px, and 128px. These are the icon sizes that will be displayed in the Applications menu's search, grid, and category views, Multitasking View, the dock, and in AppCenter.

Your app must come with Debian packaging. elementary OS uses Debian packages to manage software installation and updates. Your app cannot be downloaded without it. Your Debian packaging must not manually modify filesystem permissions.

Your app must be a native Gtk3 app. Web apps, Electron apps, Qt apps, and other non-native apps will be rejected during the review process. An exception to this rule would be for games, in which case as long as it uses the native system window decorations, it should be okay.

Your app must not attempt to modify, replace, or append software sources on the target system.

Legal Requirements

You must have permission to redistribute any software you attempt to publish through AppCenter. If you are not the copyright holder or the source code is not openly licensed, you likely do not have permission to redistribute the software.

You must have permission to use any trademarks in your software or its metadata. You may not publish your app using trademarks reserved by others.

Your app must comply with all applicable laws as well as the terms of any services your app utilizes.

Other Publishing Requirements

Naming

To protect both users and developers, your app's name must not be the same as or confusingly similar to an existing app in AppCenter, as determined by app reviewers.

Your app should not be named generically like "Web Browser" or "File Manager".