The topic of alternative sources of software for Android and alternative "markets" in particular has already been raised several times on Habré, but most of their described sites were frankly vareznymi nurseries (so I don’t give links to them). Here I would like to talk about the project
F- Droid.org , which aims to build and make easily accessible to users of open source applications (Open Source) and clear licenses for use and change.


')
Market, Schwarket and Appstore
Before going directly to the F-Droid, I would like to say a few words about the phenomenon of “Markets” and the state of Open Source on the Android platform.
The fact that marketers have now dubbed “AppStora” and “Markets” has actually been available for more than a decade for Linux users and is known as the “networked repository of packages”. The concept of a package manager is generally decades old and is one of the strengths of Linux. Unsurprisingly, this concept has actually become “best practice” in the field, so that even Microsoft released and promotes its package manager.
Well, sound ideas won out, and the Android Marketplace exists for Android. It would seem to use - not to rejoice, as the majority of users who are not familiar with anything else and do. But the Android Market has a number of problems:
- Market is a closed component of the whole open platform.
- From the previous paragraph it follows that there is no Market on devices made on the basis of the AOSP (Android Open Source Project) code, and this is a typical situation for inexpensive devices (note, regardless of whether it’s cheap Chinese Noname, Inc., or vendors with the name like Amazon)
- If users themselves want to modify Android and make it better (for example, CyanogenMod), then they also cannot legally use the Market
- The quality of software in the Market leaves much to be desired. In the sense that a lot of "garbage" and frankly suspicious programs.
- The last point is aggravated by the fact that Google artificially filters the availability of certain programs for certain groups of users (by geography or otherwise), so that high-quality, paid programs are often not available.
- Filtering is performed on other grounds, for example, by the type of device from which access is being made, in other words, the Market is knocked down to be smarter than the user (which, as we know, computer programs do not get well)
- The market does not provide sufficient search and categorization, for example, the inability to find software offered under a specific license.
Open Source again?
There are several (many?) Projects designed to solve some of the problems above, but F-Droid is designed to solve them radically, namely to transfer control of both the repository itself and the software available in it to the users themselves (actually, community of such users who are interested in the questions above, the project represents). It achieves this with the help of Open Source licenses - both for the repository software itself and the pact manager, and for software available in the repository.
For many who are familiar with Open Source, it is clear why this is important, for those who know more by hearsay and “intuitively” (“Freebie, Sir!”), I would like to clarify: Open Source is a very good way to guarantee the minimum acceptable software quality. The "minimum quality" means the absence of malicious code and obvious errors and omissions. This is achieved simply by controlling the users themselves for the code. Of course, for a particular user, such control may be difficult to implement, but Open Source is completely based on the concept of a mutually assisting community (and not on the concept of consumer / producer). That is why the headline contains the phrase "F-Droid -" Market "for those who like to send patches."
F-Droid, a bearded robot with an addiction to FOSS
But enough theory. The F-Droid project was founded by Ciaran Gultnieks in October 2010, i.e. he is not even a year old. This is not a very long time, but the project has developed quite well during this time. So he has a
website and a
forum . Applications available in the repository can be viewed through the
web interface . There are so few applications by the standards of Market (full of junk frivariu) and even a typical Linux distribution: about a hundred names. On the one hand, this seems to be a very small amount, but on the other hand, the capacity of the Open Source Android ecosphere is not great either (in 200-300 more or less work programs, in my opinion). In addition, even 100 applications you hardly want to install simultaneously on your device, and you will undoubtedly find several useful programs there.
Of course, the main charm of F-Droid in the package manager running on the device. It can be downloaded from
this page (or a
direct link , QR code at the beginning of the article). A screenshot of the main window is shown below:
On three tabs are presented: software available for installation, already installed, and updates for the installed (by the way, the manager himself is updated the same way). Supported by search by name. You can get more detailed information about the application you are interested in - a description, a link to the home page, a bug tracker, a source code repository, a link for donations. Finally, the version of the application available for installation is also presented here. And here F-Droid has a feature that is not always accessible even for Linux distributions: several versions of the application are supported, which owners of inexpensive and “old” devices will appreciate, the vendors of which refused to release upgrades for new versions of Android: if the newest version of the program does not work You can always try one of the previous ones.

In addition to the repository and the client for it, F-Droid is also a mass (cross) compilation system, i.e. Most of the packages available in the repository are compiled by the F-Droid developers themselves from the source code.
All the abundance of F-Droid functionality is available in source code in the following 2 git repositories:
Future plans
F-Droid has a lot to do:
- Build user base
- Find your regular developers and regular contributors
- Add a couple of thousand applications to the repository (most of them are not yet written ;-))
- To improve the interface and capabilities, for example, work is now underway on adding support for categories, because 100 applications only seem to be a little ;-)
If you are interested, visit us often and join us!