F-Droid 2.0
After more than a year of hard work, we are thrilled to announce the launch of F-Droid 2.0, a complete redesign of the official F-Droid app and the largest app update in 10 years.
For more than a decade, F-Droid has helped people discover and install free and open source Android apps. F-Droid 2.0 builds on that foundation with a modern interface, better app discovery, improved search, and a simpler experience that works well, whether you’re new to F-Droid or have been using it for years.
This isn’t just a visual refresh. The user experience was redesigned to integrate smoothly with current Android patterns, like Material Design, while keeping familiar F-Droid interactions in place. Key components were reworked and rewritten using Kotlin Compose, the standard toolkit these days, creating a foundation that will help us deliver improvements more quickly in the years ahead.
We are excited to begin rolling out F-Droid 2.0 to users over the coming weeks after 14 test releases.
One of our main goals for F-Droid 2.0 was to make it easier to discover, install, and maintain the apps you rely on. We simplified the main navigation into three core areas: Discover, Search and My Apps. Categories are now integrated into Discover, making it easier to browse and explore, while My Apps provides a central place to manage installed apps, updates, and potential issues. Settings and Nearby Swap are still only a tap away from the top bar, but no longer compete for space in the main navigation.
Helping people discover relevant free and open source software (FOSS) was one of the primary goals of F-Droid 2.0. As the F-Droid ecosystem has grown to thousands of applications, finding the right app has become increasingly challenging. The new release introduces improvements throughout the app from browsing and categories to search to make it easier to find software that matches your needs. And of course, F-Droid does this without tracking you, or trying to “engage” you to spend increasingly more time in the app.
The new Discover screen helps uncover apps you might otherwise miss. In addition to highlighting newly added and recently updated apps, it now showcases the most downloaded apps in the repository. Whether you’re new to F-Droid or looking for something different, Discover provides several ways to explore the growing ecosystem of free and open source Android applications.
Categories play an important role in helping users browse the repository, so we’ve expanded and refined them significantly, including more specialized categories that make it easier to find specific types of apps, such as VPNs, firewalls, password managers, launches and navigation tools. Here is what you can expect:
First, we’ve significantly expanded the category system. Instead of relying on a small number of broad categories, F-Droid now includes many more specialized categories, helping you get closer to the kind of app you want in just a few taps, even before you start searching.
Second, to make this expanded category system easier to navigate, we’ve introduced higher-level “meta” categories in the Discover screen. These group related categories together and provide a more approachable entry point for browsing the growing F-Droid ecosystem.
Finally, categories now play a larger role throughout the app. Their names and descriptions are used to improve app discovery and help guide users toward relevant free and open source applications.
As an example of this effort, we’ve completely reworked the Games category. Rather than grouping all games together, F-Droid 2.0 now distinguishes between 17 different game genres, making it much easier to find the kinds of games you actually enjoy playing.
Search has also been significantly improved. In addition to app names, it can now search app descriptions, categories, and translated content. This makes it easier to find apps based on what they do rather than what they’re called.
We’ve also made major improvements for users searching in Chinese, Japanese, and Korean. The new search system provides much better support for CJK writing systems, helping users find relevant apps more reliably in their own language.
Search also remembers your recent queries, allowing you to quickly return to previous searches without having to type them again.
Browsing and searching are only part of the story. F-Droid 2.0 also introduces powerful filtering options that help you narrow down large lists of apps to exactly what you’re looking for.
Filters can be combined using multiple criteria, such as app category, device compatibility, or anti-features. For example, you can choose to view only Action Games that are compatible with your device and exclude apps that depend on non-free network services.
To help users discover these and other advanced capabilities, F-Droid 2.0 introduces onboarding screens throughout the app. Rather than hiding features behind complex settings, the app provides contextual guidance to help both new and experienced users get the most out of F-Droid.
For the longest time, the experience of clicking install or update was forced to be second rate by Android. Now, thanks largely to pressure from the EU’s Digital Markets Act (DMA) and anti-trust actions around the world, Android offers all app stores an option for a smoother and more automatic install and update experience than before. F-Droid 2.0 includes groundbreaking work on utilizing these new abilities. This allows F-Droid to use a unified installer for all F-Droid installs, whether built into the OS or you installed it on your device yourself. The unified installer makes use of the new pre-approval API, so that on supported devices the user can confirm right after deciding to install the app, instead of after the app was downloaded. That brings the F-Droid install experience on official Android devices much closer to what the built-in app store can provide.
A redesign of this size means making careful decisions about what belongs in the new app, what can be handled differently, and what no longer makes sense to carry forward. Some familiar features have changed, moved, or been removed as part of making F-Droid 2.0 more streamlined and easier to maintain, without sacrificing core functionality or features users rely on.
F-Droid 2.0 now fetches and installs app updates by default. If you prefer more control, no worries, your existing preferences are still respected.
Some users missed the pull-to-refresh gesture for checking all repositories for updates. In F-Droid 2.0, the pulling gesture is exclusively for scrolling. This is now possible because the app can now automatically check for updates in the background. Rather than preserving a familiar action, we focused on removing the need for it. The best refresh button is the one you never have to press.
Users who want more control still have fine-grained and manual update options available. If you used pull-to-refresh to manually trigger updates, that is now available under the action overflow menu, e.g. the “three dots”, on the My Apps screen.
F-Droid gives you control of what get’s downloaded when. This helps fit our diverse users around the world, who have varying requirements. Many users have cheap access to mobile data, while mobile data is prohibitively expensive for others. Some users have heightened privacy requirements, so they need to control their network traffic. While others are using limited devices which bog down when F-Droid updates in the background. The settings which control all this were reworked to make adapting F-Droid to your needs more intuitive.
Some F-Droid users operate in environments where simply having certain apps installed or even using F-Droid can attract unwanted attention. To help support these users, F-Droid has long included a set of privacy and security features designed to protect both the user and their data.
One key privacy tool is Tor, and F-Droid has long supported using Tor for all network connections, and using Tor Onion Services for repositories and mirrors. The landscape of how Tor is integrated into Android has changed quite a bit since Tor support was first integrated. Now there is TorVPN, Orbot, TorServices and more. We took this opportunity to simplify the settings and remove the auto-detection that was no longer reliable. If you enabled “Use Tor”, that will be migrated to generic Proxy Settings. Going forward, Tor VPN is the recommended approach for easy Tor support, and the Proxy Settings are still available for those who need manual control.
Another key part is the set of “panic” features, which allow users to quickly remove some specific kinds of sensitive information from their device in emergency situations. These features are still included in F-Droid 2.0 and remain an important part of supporting users with elevated security needs.
Notably, the F-Droid app hiding feature has been simplified, to give users an accurate idea of the kind of protection they can expect. F-Droid was one of the first apps that began providing app hiding features to protect user privacy, including our “panic” feature which disguised the F-Droid app as a simple calculator app. This simple feature was requested by many users, and since then Orbot, TorVPN, Signal and others have added such masking features. Over time, a standard design has emerged across widely used apps, and we have adopted this design in the new release as well. This feature is designed so that users can better understand the limits of the disguise. Instead of the mask looking and functioning as a simple calculator app, now the mask only affects the app icon, name and nothing else. This informs users that the F-Droid app will still appear in the “Apps” settings and would be detectable during forensic inspection. This change will hopefully make it easier for users to understand the limits of this feature, while still utilizing it when needed.
One feature that has not yet returned is the ability to remove and wipe apps as a response to a panic trigger app like Ripple. We recognize that some users rely on this functionality for privacy and personal safety reasons and understand it is more than a usability feature. However, it requires highly specialized work to maintain, and given the small user base, we felt it should no longer block so many other important improvements.
The app-wiping feature remains an important feature. We would especially welcome feedback from people who use it, to help us understand how and when it is used, so we can evaluate the best path forward as we continue improving F-Droid 2.0. Users who rely on the current app-wiping implementation may opt to postpone updating to F-Droid 2.0 while we evaluate bringing the feature back.
F-Droid is designed to be integrated into any version of Android or AOSP, as we can see in CalyxOS, emteriaOS, iodéOS, Lineage-for-microG and ShiftOS. Each OS can include their own repositories by default using the “additional repos” mechanism. If you use one of these OSes, these will be visible in your Repositories overview. For additional info on what changed, check out this blog post.
Also, F-Droid Privileged Extension (FPE) is not currently supported by 2.0. That means even if FPE is installed, F-Droid 2.0 won’t use it. This overhaul focused on full featured support for the Android “session” installer. That lets F-Droid run background updates on any recent Android version without requiring FPE. Like with any of the changes here, we welcome feedback.
While many of the improvements in F-Droid 2.0 are visible on the surface, some of the most important changes happened behind the scenes.
All new code in this effort uses modern Android code standards and designs. This gives us a codebase that is easier to maintain, test, and easier to extend with new features in the future.
One of the goals of the rewrite was to lower the barrier for new contributors. Android development has changed significantly over the past decade, and F-Droid 2.0 is now built using Kotlin, the language that has become the standard for modern Android development. This makes it easier for developers familiar with today’s Android ecosystem to contribute to the project.
The new user interface is built with Jetpack Compose, the standard toolkit for Android applications. Beyond simplifying development, this helped us align F-Droid more closely with Material Design, the design system used throughout Android. As a result, F-Droid feels more familiar to Android users while remaining true to its own identity and values.
Most importantly, these changes provide a foundation for the next decade of F-Droid development. By reducing maintenance burden and making contributions easier, we can spend more time improving the experience for users and less time fighting technical debt. Some new tools also depend on fixes in Android itself, one such fix was added in Android 7 forcing us to drop support for Android 6. As always, old