CINXE.COM

Inclusion Policy | F-Droid - Free and Open Source Android App Repository

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Inclusion Policy | F-Droid - Free and Open Source Android App Repository</title> <meta property="og:title" content="Inclusion Policy | F-Droid - Free and Open Source Android App Repository"> <meta name="description" content="All applications in the repository must be Free, Libre and Open SourceSoftware (FLOSS) – for example, released under a GPL or Apachelicense. Every effort is ..."> <meta property="og:description" content="All applications in the repository must be Free, Libre and Open SourceSoftware (FLOSS) – for example, released under a GPL or Apachelicense. Every effort is ..."> <meta property="og:image" content="https://f-droid.org/assets/fdroid-logo_bfHl7nsLHOUQxzdU8-rGIhn4bAgl6z7k2mA3fWoCyT4=.png"> <link rel="preload" href="/assets/roboto_ln5c7Pv79kCZw8EjInNILddDbwVxQmaVPE0sjunCivU=.ttf" as="font" type="font/ttf" crossorigin /> <link rel="preload" as="style" href="/css/main.css"/> <link rel="dns-prefetch" href="https://search.f-droid.org"/> <link rel="stylesheet" href="/css/main.css"/> <link rel="canonical" href='https://f-droid.org/docs/Inclusion_Policy/'/> <meta property="og:url" content='https://f-droid.org/docs/Inclusion_Policy/'/> <link rel="alternate" type="application/rss+xml" title="F-Droid - Free and Open Source Android App Repository" href="/feed.xml"/> <link href="/en/osd.xml" rel="search" title="F-Droid" type="application/opensearchdescription+xml"> <link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon_ypJwtCrcixeH_qV6LdcMYk1anFIR9o-_ufR__1wNdJY=.png"> <link rel="icon" type="image/png" sizes="48x48" href="/assets/favicon_AfYQ36xPEzFjJiCTyBFVmfWkajkehilUd2geASywhxM=.png"> <link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32_Dk3aeG3k_A20gYe5zAlPSBx_CEcpJaCI89K2X2z6CFY=.png"> <link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16_7yyppfDSTAVyGb3ycHY84PYjHUwP96NKICAibLRpnXw=.png"> <link rel="manifest" href="/assets/site_J9OLInBmO2hLlutzRFC4mdstNJjL44B6NzBbT0ecmA0=.webmanifest"> <link rel="mask-icon" href="/assets/safari-pinned-tab_jVj0QIYK2TEAcXlrhjrienjgRnccBVzvX22tYumPb9Q=.svg" color="#5bbad5"> <link rel="shortcut icon" href="/assets/favicon_yJPr4UNteJc-cseeq16P0Hvl1kDbJjTVYcj-KA6-_Fs=.ico"> <meta name="msapplication-TileColor" content="#ffffff"> <meta name="msapplication-config" content="/assets/browserconfig_sI0d7L-NQ2rondQpLn2DRSqXxvj7iPI0-WPzXn-uLZA=.xml"> <meta name="theme-color" content="#ffffff"> <link rel="alternate" hreflang="ar" href='https://f-droid.org/ar'> <link rel="alternate" hreflang="bo" href='https://f-droid.org/bo'> <link rel="alternate" hreflang="cs" href='https://f-droid.org/cs'> <link rel="alternate" hreflang="de" href='https://f-droid.org/de'> <link rel="alternate" hreflang="en" href='https://f-droid.org/en'> <link rel="alternate" hreflang="es" href='https://f-droid.org/es'> <link rel="alternate" hreflang="fa" href='https://f-droid.org/fa'> <link rel="alternate" hreflang="fr" href='https://f-droid.org/fr'> <link rel="alternate" hreflang="he" href='https://f-droid.org/he'> <link rel="alternate" hreflang="hu" href='https://f-droid.org/hu'> <link rel="alternate" hreflang="id" href='https://f-droid.org/id'> <link rel="alternate" hreflang="is" href='https://f-droid.org/is'> <link rel="alternate" hreflang="it" href='https://f-droid.org/it'> <link rel="alternate" hreflang="ja" href='https://f-droid.org/ja'> <link rel="alternate" hreflang="ko" href='https://f-droid.org/ko'> <link rel="alternate" hreflang="pl" href='https://f-droid.org/pl'> <link rel="alternate" hreflang="pt" href='https://f-droid.org/pt'> <link rel="alternate" hreflang="pt-BR" href='https://f-droid.org/pt_BR'> <link rel="alternate" hreflang="ro" href='https://f-droid.org/ro'> <link rel="alternate" hreflang="ru" href='https://f-droid.org/ru'> <link rel="alternate" hreflang="sq" href='https://f-droid.org/sq'> <link rel="alternate" hreflang="tr" href='https://f-droid.org/tr'> <link rel="alternate" hreflang="uk" href='https://f-droid.org/uk'> <link rel="alternate" hreflang="zh-Hans" href='https://f-droid.org/zh_Hans'> <link rel="alternate" hreflang="zh-Hant" href='https://f-droid.org/zh_Hant'> <link rel="alternate" hreflang="x-default" href='https://f-droid.org/'> </head> <body> <div class="site-wrapper"> <header class="site-header"> <a class="site-title" href="/en/"> <img src="/assets/fdroid-logo-text_S0MUfk_FsnAYL7n2MQye-34IoSNm6QM6xYjDnMqkufo=.svg" alt="F-Droid" /> </a> <nav class="site-nav"> <a class="page-link " href="/en/packages/">Apps</a> <a class="page-link" href="https://forum.f-droid.org">Forum</a> <a class="page-link current " href="/en/docs/">Docs</a> <a class="page-link " href="/en/news/">News</a> <a class="page-link " href="/en/issues/">Issues</a> <a class="page-link " href="/en/contribute/">Contribute</a> <a class="page-link " href="/en/about/">About</a> </nav> </header> <div class="main-content with-sidebar"> <div class="article-area"> <article class="page"> <header class="post-header"> <h2 class="post-title">Inclusion Policy</h2> </header> <div class="post-content"> <p>All applications in the repository must be Free, Libre and Open Source Software (FLOSS) – for example, released under a GPL or Apache license. Every effort is made to verify that this is actually the case, both by visual inspection of the source, and by building the application from the published source. To determine which licenses are FLOSS, We defer to widely trusted organizations that have a proven track record. Specifically, we acknowledge these standards: <a href="https://wiki.debian.org/DFSGLicenses">DFSG</a>, <a href="https://www.fsf.org/licensing">FSF</a>, <a href="https://www.gnu.org/licenses/license-list.html">GNU</a>, and <a href="https://opensource.org/licenses">OSI</a> <em>(read a quick overview of them all on <a href="https://spdx.org/licenses/">SPDX</a>)</em>.</p> <p>For software to be FLOSS, the software in its entirety must be so - including all libraries and dependencies used. Additionally, it must be buildable with only FLOSS tools.</p> <p>Notably:</p> <ul> <li>The original app author has been notified (and does not oppose the inclusion). Distributing an app will bring more support cases for the developers, not only from the actual users but from F-Droid itself as app development is never a done and set deal in an ever evolving Android landscape.</li> <li>We cannot build apps using Google’s proprietary “Play Services”. Please talk to upstream about an untainted build flavor (either using microg or removing Non-Free dependencies completely).</li> <li>We cannot build apps using proprietary tracking/analytic dependencies like Crashlytics and Firebase. Please talk to upstream about an untainted build flavor (either using a FLOSS analytics software like ACRA or by removing Non-Free dependencies completely).</li> <li>We cannot build apps using proprietary ad libraries. We have nothing against advertisements (see <a href="../Anti-Features"><em>Anti-Features</em></a>), but they must be provided by a FLOSS-compatible way.</li> <li>We cannot build apps requiring Non-Free build tools, including Oracle’s JDK or some pre-release toolchains.</li> </ul> <p>Additionally:</p> <ul> <li>The source code for the application must be maintained in a publicly accessible Version Control System which we have support for (git, hg, svn, bzr), and the source code needs to be maintained in an up to date state.</li> <li>The software must not download additional executable binary files (e.g. addons, auto-updates, etc.) without explicit user consent. Consent means it needs to be opt-in (it must not be harder to decline than to accept or presented in a way users are likely to press accept without reading) and structured in a way that clearly explains to users that they’re choosing to bypass F-Droid’s checks if they activate it.</li> <li>The software should use its own unique Android “<a href="https://developer.android.com/studio/build/configure-app-module">Application ID</a>” based on a domain name under the developer’s control. For example, if the app is in a group called “foo” on <a href="https://gitlab.com">gitlab.com</a>, then the domain name could be <code class="language-plaintext highlighter-rouge">io.gitlab.foo</code>. It should not be based on someone’s domain name, (e.g. <code class="language-plaintext highlighter-rouge">com.google.foo</code>). Maven Central OSSRH provides <a href="https://central.sonatype.org/publish/requirements/coordinates/">good guidance</a>.</li> <li>Where the application is a fork of another (even one not included in the F-Droid repository) it must have a new ID, different from the original. Make sure to rename your fork accordingly (including all active translations). Forks which only re-brand an app but do not add value for users might not get accepted.</li> <li>Although not ideal, “non-functional” assets (e.g. artwork) <em>may</em> be acceptable under less permissive licenses than functional code - an example would be artwork assets that are licensed only for use with that particular game. In any case though, they must be included under some kind of license, and not be copyright violations.</li> <li>Trademarks must not be infringed, and any other legal requirements must be adhered to.</li> <li>F-Droid does not sign up for any API keys. Even if provided by a third party, we include them in both, binary and sourcecode releases.</li> <li>Binary dependencies such as JAR files have to be built from source or installed from Debian repos.</li> </ul> <p>Ideally:</p> <ul> <li>Releases should be clearly tagged (or otherwise marked).</li> </ul> <p>Though we tried to build everything from source, we still need some prebuilt binaries. Therefore we have some exceptions:</p> <ul> <li>Trusted maven repository. While there is no guarantee that those binaries are free and correspondent to the source code, F-Droid allows the following known repositories currently: <ul> <li>Maven Central - the original repo, hardcoded in Maven and Gradle.</li> <li>Google Maven Repo - hardcoded in Gradle, this repo hosts Google’s own libs.</li> <li>OSS Sonatype - maintained by the people behind Maven Central, this repository focuses on hosting services for open source project binaries. It’s synced with Maven Central, and include some extra libs</li> <li>OSS JFrog - this repository focuses on hosting services for open source project binaries.</li> <li>JitPack.io - builds directly from GitHub repositories. However, they do not provide any option to reproduce or verify the resulting binaries. Builds pre-release versions in some cases.</li> <li>Clojars - Clojure libraries repo.</li> <li>CommonsWare - repo holding a collection of open-source libs.</li> <li>Gradle plugin repo - hardcoded in Gradle, this repo hosts Gradle plugins.</li> </ul> </li> <li>Android SDK/NDK. They are released as proprietary binaries but we don’t have an alternative currently. There is in-progress work to package recent Android SDK versions in Debian.</li> <li>Gradle. Only some old versions of Gradle are packaged in Debian. Currently we download them from the developer website.</li> <li>Flutter SDK. They are FOSS but not packaged in Debian and we are not able to build it from source. Currently we download them from the developer website with the Flutter srclib scripts.</li> <li>JSC/Hermes. They can be built from source which takes hours. Currently we downloaded them from npm and scanignore them.</li> <li>Binaries from pip wheels. Some apps install deps with pip and we just trust the untrustworthy Pypi.</li> <li>Binaries from Nix cache. These binaries are mostly reproducible.</li> <li>Rust/Rustup. Currently we download them from the developer website with the scripts in the rustup srclib. We may be able to use the Debian packages.</li> <li>Golang &amp; Nodejs. They are available in Debian but recent versions are not available immediately. Currently we might download them from the developer website.</li> <li>Some other compilers/build tools not packaged in our Debian version.</li> </ul> <p>Some software, while being Free and Open Source, may engage in practices which are undesirable to some or all users. Where possible, we still include these applications in the repository, but they are flagged with the appropriate <a href="../Anti-Features"><em>Anti-Features</em></a>. Even though such software can be included, when appropriately flagged, it is frequently the case that other “FLOSS” software with these features is actually not entirely free. For example, advertising and tracking users is often enabled via proprietary binary libraries which we cannot include.</p> <p>When including donation information, the relevant donation links (e.g. Liberapay/Open Collective/Bitcoin/etc) must also be available either:</p> <ul> <li>In a README or similar file in the project’s source code.</li> <li>In a <a href="https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository#about-funding-files"><em>FUNDING.yml</em></a> file included in the project’s source code.</li> <li>On the applications main website.</li> <li>If the software is hosted on GitLab, then it is sufficient that the person requesting donation info to be added to the fdroiddata repository is the same user account which manages the application source code.</li> </ul> <p>This is to prevent arbitrary people from maliciously changing the donation links of applications in the main F-Droid repository without the consent of upstream developers.</p> <p>For more information on adding applications to the F-Droid Repository, see the <a href="../Inclusion_How-To">Inclusion How-To</a>.</p> </div> </article> </div> <div class="sidebar"> <div class="sidebar-widget language"> <form action="/docs/Inclusion_Policy/" method="get"> <select id="language-chooser-select" name="lang" autocomplete="off"> <option value="ar" > العربية </option> <option value="bo" > བོད་སྐད་ </option> <option value="cs" > čeština </option> <option value="de" > Deutsch </option> <option value="en" selected="selected"> English </option> <option value="es" > español </option> <option value="fa" > فارسی </option> <option value="fr" > français </option> <option value="he" > עברית </option> <option value="hu" > magyar </option> <option value="id" > Bahasa Indonesia </option> <option value="is" > íslenska </option> <option value="it" > italiano </option> <option value="ja" > 日本語 </option> <option value="ko" > 한국어 </option> <option value="pl" > polski </option> <option value="pt" > português </option> <option value="pt_BR" > português do Brasil </option> <option value="ro" > română </option> <option value="ru" > русский </option> <option value="sq" > shqip </option> <option value="tr" > Türkçe </option> <option value="uk" > українська </option> <option value="zh_Hans" > 简体中文 </option> <option value="zh_Hant" > 繁體中文 </option> </select> <script src="/assets/sidebar-lang_j4kvB8VghKUiWGs4HpqMvN0Ucx0tTmJ_lRfuoUmiaqc=.js" async></script> <noscript> <input id="language-chooser-submit" type="submit" value="Change" /> </noscript> </form> </div> <div class="sidebar-widget"> <h3>Find Apps</h3> <div> <form method="get" class="search-form" action="https://search.f-droid.org/"> <div class="search-input-wrp"> <input type="search" class="search-input" name="q"> </div> <input type="hidden" name="lang" value="en"> <input type="submit" value="Search" class="material-button" /> </form> </div> </div> <div class="sidebar-widget"> <h3 id="donate">Donate</h3> <p>F-Droid is powered by your donations!</p> <ul class="donate-options"> <li class="donate-option opencollective"><a href="https://opencollective.com/f-droid/donate"><img src="/assets/opencollective_button_iIGF0Hixdj0EaYR3Sd7FRigTVcl7QPGu6kaoBmXHjZI=.png" alt="Donate to our Collective" /></a></li> <li class="donate-option liberapay"><a href="https://liberapay.com/F-Droid-Data/donate"><img src="/assets/liberapay_donate_button_GHdOOfmFJNeSXjfjnA-98XtIuEfvE6cNJjHgHOhjdv0=.svg" alt="Donate via Liberapay" /></a></li> <li class="donate-option more"><a href="/en/donate">More Options</a></li> </ul> </div> <div class="sidebar-widget sidebar-hidden"> <h3>Connect</h3> <a class="connect-item" rel="me" href="https://floss.social/@fdroidorg"> <img class="connect-icon" src="/assets/mastodon_-c62Zo613I00cO-RavNTybrSJhBC3vZToN5u4zSoMdM=.svg" alt="mastodon" /> <div class="connect-label">@fdroidorg@floss.social</div> </a> </div> <div class="sidebar-widget"> <h3>News</h3> <ul class="post-list" dir="auto"> <li> <a class="post-link" href="/en/2025/03/27/twif.html">What were you installing back in March 2015?</a> <span class="post-meta">Mar 27, 2025</span> </li> <li> <a class="post-link" href="/en/2025/03/20/twif.html">Group improvements</a> <span class="post-meta">Mar 20, 2025</span> </li> <li> <a class="post-link" href="/en/2025/03/13/twif.html">Fashion change - UI rewrites</a> <span class="post-meta">Mar 13, 2025</span> </li> <li> <a class="post-link" href="/en/2025/03/06/twif.html">Join our ranks of digital luddites</a> <span class="post-meta">Mar 06, 2025</span> </li> <li> <a class="post-link" href="/en/2025/03/04/even-my-keyboard-is-built-reproducibly.html">Even my keyboard is built reproducibly</a> <span class="post-meta">Mar 04, 2025</span> </li> </ul> </div> </div> </div> <footer class="site-footer"> <div class="wrapper"> <div class="site-description"> <p>© 2010-2025 F-Droid Contributors <span class="edit-this-page-area"> <a href="https://fdroidstatus.org/" target="_blank"> Status </a> &#124;<a href="https://gitlab.com/fdroid/fdroid-website/edit/master/_docs/Inclusion_Policy.md" target="_blank"> Edit on GitLab </a></span> </p> </div> </div> </footer> </div> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10