F-Droid
Official F-Droid logo
F-Droid 1.2 screenshot.png
Screenshot of F-Droid 1.2 on Android showing the latest apps
Developer(s)Ciaran Gultnieks[1] Edit this on Wikidata
Initial release29 September 2010[2] Edit this on Wikidata
Stable release
1.14[3] Edit this on Wikidata (25 January 2022; 4 months ago (25 January 2022))
Repository
Written inPython (server tools), Jekyll (software) (site), Java (client)
Operating systemAndroid (client), Linux, macOS, Windows 10, FreeBSD (server)
TypeDigital distribution of free software, Software repository
LicenseGNU Affero General Public License, version 3.0 or later[4] Edit this on Wikidata
Websitef-droid.org Edit this on Wikidata

F-Droid is an app store and software repository for Android, serving a similar function to the Google Play store. The main repository, hosted by the project, contains only free and open source apps. Applications can be browsed, downloaded and installed from the F-Droid website or client app without the need to register for an account. "Anti-Features" such as advertising, user tracking, or dependence on non-free software are flagged in app descriptions.[5]

The website also offers the source code of applications it hosts, as well as the software running the F-Droid server, allowing anyone to set up their own app repository.[6][7][8]

History

Development of F-Droid data over time from 2010 through 2018[9]
Development of F-Droid data over time from 2010 through 2018[9]

F-Droid was founded by Ciaran Gultnieks in 2010. The client was forked from Aptoide's source code.[10][11] The project was initially run by the English nonprofit F-Droid Limited.[11] As of 2021, F-Droid Limited was no longer used for donations,[12] and was being shutdown, according to spokesman Hans-Cristoph Steiner.[13]

In a 2014 interview for Free Software Foundation, Gultnieks said he was inspired to launch F-Droid because of "lock-down, lock-in and general nefarious behavior from software" on phones.[14]

From 2010 to 2015 F-Droid used AGPL licensed Gitorious repository system for development.[15] In 2015 it transitioned to proprietary licensed Gitlab[16] when Gitorious was acquired by Gitlab. According to Daniel Marti, Former F-Droid Developer, in 2013, removal of AdAway from the Google Play Store caused a spike in searches and downloads of F-Droid, and he estimated there were 30 to 40 thousand users.[17]

Replicant, a fully free software Android operating system, previously used F-Droid as its default and recommended app store.[18][19] In 2016, the Replicant project determined F-Droid did not comply with GNU Free System Distribution Guidelines, and asked for assistance correcting it, but progress stalled.[20]

Guardian Project, a suite of free and secure Android applications, started running their own F-Droid repository in early 2012.[21] In 2012, Free Software Foundation Europe featured F-Droid in their Free Your Android! campaign to raise awareness of the privacy and security risks of proprietary software.[22][23]

In 2014 F-Droid was chosen as part of the GNU Project's GNU a Day initiative during their 30th anniversary to encourage more use of free software.[24]

In January 2016 Hans-Christoph Steiner, a developer for Calyx Institute,[25] Debian, F-Droid, and Guardian Project, said F-Droid was focusing on issues like security, building with Debian, reproducible builds, software requiring trust of as few people as possible, transparency, user privacy, non-internet distribution of apps, block avoidance, and media distribution.[26]

In March 2016 F-Droid partnered with Guardian Project and CopperheadOS with the goal of creating "a solution that can be verifiably trusted from the operating system, through the network and network services, all the way up to the app stores and apps themselves".[27] Follow-on project GrapheneOS does not include F-Droid, and is developing their own app distribution method for "higher robustness and security".[28]

On 16 July 2019 the project published a "Public Statement on Neutrality of Free Software". This statement was issued to address the project's failure to prevent "oppression or harassment ... at its communication channels, including its forum", controversy surrounding alt-tech social media website Gab, and to explain how Fediverse client Tusky blocking access to it, while client Fedilab allowed its users to choose, was consistent with their principles.[29][30][31][32] Action was considered against several applications, including Purism's Librem One, to exclude them for allowing access to sites such as Gab or spinster.xyz.[33][34][35]

According to Ankush Das writing for ItsFoss.com in 2021, F-Droid is known for hosting open-source apps such as Element or Tusky that have been removed from Google Play store.[36]

Scope of project

The F-Droid website lists the apps hosted, over 3,800;[37] the Google Play Store lists about 3 million apps.[38] The project incorporates several software sub-projects:

F-Droid builds apps from publicly available and freely licensed source code. The project says it is run entirely by volunteers and has no formal app review process,[39] but some contributors have been paid for their work.[40][41][42] New apps, which must be free of proprietary software are contributed by user submissions or the developers themselves.[43]

Client application

"Get it on F-Droid" badge
"Get it on F-Droid" badge

F-Droid is not available on the Google Play Store. To install the F-Droid client, the user has to allow installation from "Unknown sources" in Android settings[44] and retrieve the F-Droid Android application package (.apk file) from the official site.

The client was designed to be resilient against surveillance, censorship, and unreliable Internet connections. To promote anonymity, it supports HTTP proxies and repositories hosted on Tor onion services. Client devices can function as impromptu "app stores", distributing downloaded apps to other devices over local Wi-Fi, Bluetooth, and Android Beam.[45][46] The F-Droid client app automatically offers updates for installed F-Droid apps; when the F-Droid Privileged Extension is installed, updates can also be installed by the app itself in the background.[47] However, automatic updates are not turned on by default.[48] The extension requires the device to have root access, or to be able to flash a zip file.[49]

Key management

The Android operating system checks that updates are signed with the same key, preventing others from distributing updates that are signed by a different key.[50][51] Originally, the Google Play store required applications to be signed by the developer of the application, while F-Droid only allowed its own signing keys. So apps previously installed from another source have to be reinstalled to receive updates.[52]

In September 2017 Google Play started offering developers a signing key service managed by Google Play,[53] offering a similar service to what F-Droid offered since 2011, and F-Droid now lets developers use their own keys via the reproducible build process.[54]

Security issues

In 2012 F-Droid announced they had removed an app because of a security flaw that could leak personal information.[55] In 2017 F-Droid stated "No malware has been found in f-droid.org in its 7 years of operation."[56]

See also

References

  1. ^ "Contributors"; retrieved: 29 September 2020; title of broader work: About.
  2. ^ "F-Droid Is Here". 29 September 2010. Retrieved 29 September 2020.
  3. ^ "1.14 · Tags · F-Droid _ Client". 24 January 2022. Retrieved 16 April 2022.
  4. ^ "License"; retrieved: 29 September 2020; title of broader work: About.
  5. ^ "Client 0.54 released". F-droid.org. 5 November 2013. Archived from the original on 26 April 2015.
  6. ^ Hildenbrand, Jerry (27 November 2012). "F-Droid is the FOSS application store for your Android phone". Android Central. Archived from the original on 16 June 2018. Retrieved 29 August 2013.
  7. ^ Nardi, Tom (27 August 2012). "F-Droid: The Android Market That Respects Your Rights". The Powerbase. Archived from the original on 3 December 2013. Retrieved 29 August 2013.
  8. ^ "F-Droid Server Manual". Archived from the original on 6 November 2013. Retrieved 30 August 2013.
  9. ^ "Commits by year and month of F-Droid data reported by gitstats". 2017. Archived from the original on 9 July 2017. Retrieved 19 July 2017.
  10. ^ "F-Droid initial source code". F-Droid. 19 October 2010. Archived from the original on 10 December 2014. Retrieved 10 December 2014.
  11. ^ a b "F Droid About". Archived from the original on 23 January 2014. Retrieved 28 January 2014.
  12. ^ F-Droid. "Donations | F-Droid". F-Droid. Retrieved 10 May 2022.((cite web)): CS1 maint: url-status (link)
  13. ^ "Apply for the GitLab Open Source Program (#223) · Issues · F-Droid / admin · GitLab". GitLab. Retrieved 10 May 2022.
  14. ^ "Interview with Ciaran Gultnieks of F-Droid — Free Software Foundation — Working together for free software". www.fsf.org. Retrieved 21 April 2022.
  15. ^ "F-Droid - Gitorious". 25 December 2010. Archived from the original on 25 December 2010. Retrieved 21 April 2022.
  16. ^ "ee/LICENSE · master · GitLab.org / GitLab · GitLab". GitLab. Retrieved 11 May 2022.
  17. ^ Martí, Daniel (February 2014). "F-Droid". archive.fosdem.org. Retrieved 21 April 2022.((cite web)): CS1 maint: url-status (link)
  18. ^ "FDroid: a free software alternative to Google Market". Replicant Project. 26 November 2010. Archived from the original on 17 January 2015. Retrieved 17 January 2015.
  19. ^ "FDroid". Replicant Wiki. Archived from the original on 9 March 2018. Retrieved 8 March 2018.
  20. ^ "Replicant 6.0 early work, upstream work and F-Droid issue | Replicant". blog.replicant.us. Retrieved 21 April 2022.
  21. ^ "Our New F-Droid App Repository". The Guardian Project. 15 March 2012. Archived from the original on 23 March 2017. Retrieved 29 August 2013.
  22. ^ Walker-Morgan, Dj (28 February 2012). "FSFE launches "Free Your Android!" campaign". H-online. Archived from the original on 23 July 2014. Retrieved 27 July 2014.
  23. ^ "Liberate Your Device!". Free Software Foundation Europe. Archived from the original on 15 August 2014. Retrieved 27 July 2014.
  24. ^ "GNU-a-Day". GNU Project. Archived from the original on 28 July 2014. Retrieved 23 July 2014. Day 9: Have an Android phone? Install F-Droid, a repository with hundreds of free software apps. ((cite web)): External link in |quote= (help)
  25. ^ "Team - Calyx Institute". calyxinstitute.org. Retrieved 21 April 2022.
  26. ^ Steiner, Hans-Christoph (January 2016). "F-Droid: building the private, unblockable app store". archive.fosdem.org. Retrieved 21 April 2022.((cite web)): CS1 maint: url-status (link)
  27. ^ "Copperhead, Guardian Project and F-Droid Partner to Build Open, Verifiably Secure Mobile Ecosystem". The Guardian Project. 28 March 2016. Archived from the original on 20 April 2016. Retrieved 19 April 2016.
  28. ^ "Frequently Asked Questions | GrapheneOS". grapheneos.org. Retrieved 21 April 2022.
  29. ^ "Public Statement on Neutrality of Free Software". F-Droid. Retrieved 3 August 2020.
  30. ^ Robertson, Adi (12 July 2019). "How the biggest decentralized social network is dealing with its Nazi problem". The Verge. Retrieved 10 February 2021.
  31. ^ "TWIF 64: We are back!". F-Droid. Retrieved 8 February 2021.
  32. ^ "Fedilab (fr.gouv.etalab.mastodon) and FreeTusky (com.thechiefmeat.freetusky) explicitly promote violence (#1736) · Issues · F-Droid / Data". GitLab. Retrieved 8 February 2021.
  33. ^ "remove spinster app (!6013) · Merge Requests · F-Droid / Data". GitLab. Retrieved 21 January 2021.
  34. ^ "depackage Clover (org.floens.chan), Overchan, Overchan (fork), Ouroboros (#1722) · Issues · F-Droid / Data". GitLab. Retrieved 8 February 2021.
  35. ^ "Consider Depackaging Librem One Apps (#1734) · Issues · F-Droid / Data". GitLab. Retrieved 8 February 2021.
  36. ^ "Decentralized Networks Under Attack? Google Removes Open-Source Mastodon Client "Tusky" from the Play Store". It's FOSS News. 18 March 2021. Retrieved 22 April 2022.
  37. ^ "F-Droid Main Repository". F-Droid. Retrieved 7 February 2021.
  38. ^ "Number of available applications in the Google Play Store from December 2009 to December 2020". Statista. 4 February 2021. Retrieved 7 February 2021.
  39. ^ "Contribute". F-Droid. Archived from the original on 18 March 2015. Retrieved 29 March 2015.
  40. ^ "F-Droid · Expenses - Open Collective". opencollective.com. Retrieved 9 February 2021.
  41. ^ "Payout request (#194) · Issues · F-Droid / admin". GitLab. Retrieved 9 February 2021.
  42. ^ "Mozilla Speed Dating grant payout and further work (#189) · Issues · F-Droid / admin". GitLab. Retrieved 9 February 2021.
  43. ^ "Inclusion Policy". F-Droid. 4 April 2014. Archived from the original on 25 March 2015. Retrieved 29 March 2015.
  44. ^ "Android Open Distribution". 31 October 2012. Archived from the original on 24 March 2018. Retrieved 31 October 2012.
  45. ^ "Client 0.76 Released". F-Droid. 14 October 2014. Archived from the original on 2 February 2017. Retrieved 28 March 2015.
  46. ^ Brandom, Russell (10 June 2014). "Your survival guide for an internet blackout". The Verge. Archived from the original on 8 August 2014. Retrieved 2 August 2014.
  47. ^ "F-Droid Privileged Extension". F-Droid. Archived from the original on 19 June 2018. Retrieved 19 June 2018.
  48. ^ Orphanides, K. G. (14 January 2021). "How to move all your WhatsApp groups and get started on Signal". Wired UK. ISSN 1357-0978. Retrieved 10 February 2021.
  49. ^ "org.fdroid.fdroid.privileged.ota_2070". F-Droid. Archived from the original on 19 June 2018. Retrieved 19 June 2018.
  50. ^ Marlinspike, Moxie (12 February 2013). "moxie0 commented Feb 12, 2013". Archived from the original on 10 January 2018 – via GitHub.
  51. ^ "Signing Your Applications". Android Developers. Google. Archived from the original on 15 April 2016. Retrieved 16 April 2016.
  52. ^ "Release Channels and Signing Keys". F-Droid. 12 August 2014. Archived from the original on 2 April 2015. Retrieved 29 March 2015.
  53. ^ Glick, Kobi (6 September 2017). "Enroll for app signing in the Google Play Console & secure your app using Google's robust security infrastructure". Android Developers Blog. Google. Archived from the original on 10 July 2018. Retrieved 16 April 2016.
  54. ^ "Reproducible Builds". F-Droid. Archived from the original on 11 July 2018. Retrieved 10 July 2018.
  55. ^ F-Droid (23 August 2012). "Security Notice – TextSecure". F-Droid.org. Retrieved 21 April 2022.((cite web)): CS1 maint: url-status (link)
  56. ^ F-Droid (13 December 2017). "F-Droid and the Janus Vulnerability". F-Droid.org. Retrieved 21 April 2022.((cite web)): CS1 maint: url-status (link)

Further reading