The F-Droid free app repository for Android
F for Freedom
The F-Droid project provides an easy way to browse and install open source Android apps.
Finding open source apps in the Google Play Store is like trawling the sea floor with a sieve: You can occasionally find something useful, but it requires perseverance and time. However, if you want to supplement or replace proprietary apps on your Android device with open source software, you'll appreciate F-Droid [1], a combination of dedicated client app and software repository featuring open source apps for the Android platform.
Although F-Droid is often called an alternative to the Google Play Store, it isn't exactly a drop-in replacement. Of course, if you're using a device without the Google Play Store on it, F-Droid is probably your only option for installing third-party apps (besides side-loading APK packages manually). In reality, F-Droid serves better as a complementary repository of open source software. The F-Droid client app does a few things better than its Google counterpart. F-Droid gives you access to previous versions of an application, along with its development and unstable releases. The availability to access older versions can be particularly useful for owners of obsolete but still usable Android devices. The client also offers direct links to the app's website, source code, and issue tracker.
F-Droid is not without its shortcomings, however. The web interface provides only rudimentary functionality for finding and discovering apps (Figure 1). App descriptions in the F-Droid client interface lack screenshots, and there is no way to add ratings and comments. Additionally, the currently available selection of apps in F-Droid is nowhere near the embarrassment of riches available in the Google Play Store.
Getting Started with F-Droid
The F-Droid client app acts as a portal for browsing and installing open source apps available in the F-Droid repository. So, the first step is to install the client on your Android device. The F-Droid app is not available in the Google Play Store, and you need to download and install it manually. Before you do that, switch to the Settings | Security section on your Android device and enable the Unknown sources option. This allows you to install third-party APK packages. Then, download the latest version of the F-Droid app on your Android device and tap on the downloaded APK package to install it. Once the app has been installed, launch it and tap the Update Repos button to fetch the latest package info.
By default, the client app uses only the official F-Droid repository, but it does support other channels, too. To enable them, switch to the Repositories section and enable the desired repositories. There are not many (if any) third-party F-Droid repositories yet, but if you happen to know one, you can add it manually to the client using the New Repository button.
All apps in F-Droid are organized into categories, such as Internet, Development, System, and so on. As you would expect, there is also a search tool for finding specific apps, so browsing and finding apps in F-Droid is not particularly difficult. When you've found the app you like, tap on it to view its brief description, relevant links, required permissions, and list of available versions (Figure 2). Installing the latest version of the app is as easy as tapping the Install button. Once the app has been installed, you can launch it directly from F-Droid by tapping the Run button. You can uninstall the app at any time using the Uninstall button.
Want to share the app with others? F-Droid has several options for that. The Share button lets you share the app's link on the F-Droid website using Android's sharing capabilities. Instead of sharing a link, you can use the client to make specific apps available to other Android users on the same network. This effectively turns the F-Droid app on your device into an instant mini app store. To activate this feature, tap Swap apps and press the Start a Swap button (Figure 3). Select the desired apps, join the appropriate network, and tap Next to activate swapping. This generates a QR code and a URL that other users can use to access and install the shared apps. Finally, you can send a specific app directly to another user via Bluetooth using the appropriate command on the app's page.
It's easy to figure out how to use F-Droid, so you can start installing open source apps almost immediately. F-Droid currently hosts around 1,500 apps. It's a far cry from the Google Play Store's selection, but quite a few excellent open source apps are available on F-Droid. Which apps to install depends on your specific needs and requirements, but there are a handful of open source apps that you might find useful in most situations.
Internet and Productivity Apps
Face it, an Android device without a browser is borderline useless, and although Mozilla Firefox for Android is available through F-Droid, you might want to give the Lightning browser [2] a try. Thanks to its modest footprint and resource requirements, this browser lives up to its name: It is fast even on older devices (Figure 4).
Lightweight doesn't mean light on features, however, and the browser offers several useful features and creature comforts. Lightning also supports tabs, bookmarks, and incognito mode. The browser's Reader Mode feature can come in useful for reading pages with complex layouts, while the built-in ad blocker does a good job of removing pesky ads (Figure 5). The browser also boasts several privacy and security features, including the ability to block third-party cookies, disable JavaScript and images as well as clear browsing data (cache, history, and cookies) on exit.
A task manager is a productivity staple for many Android users, and Mirakel [3] makes a perfect tool for keeping tabs on to-dos. Although Mirakel may look like a basic app, it has all the essential task management features – and then some (Figure 6). The app lets you assign priorities and deadlines to each task as well as attach a file or a photo, add a note, configure a reminder, and specify recurrence. Although it's possible to add a task in a regular manner (i.e., entering the task's name and tapping the Add button), you can also use the dedicated buttons to snap a photo or make an audio recording, and then create a task from it.
Mirakel also offers several creature comforts for keeping tabs on tasks. The sliding sidebar lets you quickly switch between different views, such as Tasks Today, This Week, Overdue, and Inbox. Using the built-in search feature, you can find tasks that match specific search criteria, and the app's sorting functionality lets you sort all tasks by deadline, priority, and date.
A decent task manager is not complete without synchronization capabilities, and Mirakel offers two ways to keep your tasks in sync across multiple devices and platforms. The app supports the CalDAV protocol, so it should work with any CalDAV-enabled server. Users of Taskwarrior will appreciate the fact that Mirakel can also sync tasks using the taskd
server, and the Setup Sync with Taskwarrior page [4] explains how to deploy tasks on your own server and make Mirakel work with it.
If you are looking for a more simple – and less conventional – way to manage tasks, to-dos, and reminders, try MicroPinner [5]. This nifty little tool lets you add pin text items to the statusbar (Figure 7). The app lets you specify a priority for each pin, which can come in handy for managing to-dos and tasks, and make a pin persistent (to avoid accidental deletion by swiping).
Despite a wealth of sharing options at your disposal, email-to-self still remains a popular way to save links, notes, and everything in between. On Android, sharing an item via email usually requires several steps, which makes the entire process slightly cumbersome. BlitzMail [6] solves this problem by reducing the sharing action to a single tap.
Once installed and configured, BlitzMail integrates with Android's sharing capabilities, so sharing an item is as easy as choosing the Share | BlitzMail command. The app also features the standalone BlitzNote utility that lets you send short notes – perfect for quickly mailing reminders, tasks, and short text snippets (Figure 8). To avoid the sent items clogging your inbox, you can create a filter that neatly moves messages coming from BlitzMail to a separate folder.
Photography Apps
In case the default camera app on your Android device doesn't cut it for you, Open Camera [7] is what you need. Despite its somewhat unpolished interface, Open Camera is a rather capable app suitable for Android shooters of all levels. Casual snappers will appreciate the ability to choose between different scene modes and the auto-stabilizing feature, which lets you take perfectly leveled photos every time. The face detection functionality can come in useful for snapping portraits, and overlay grids provide assistance with composing shots.
Open Camera caters to more demanding photographers, too, offering features like exposure lock and exposure compensation, manual white balance, and ISO selection. The burst mode is perfect for taking multiple photos in a rapid succession or at predefined intervals. The app also supports geotagging, video recording, customizable interface, and much more. In short, Open Camera may lack some polish, but it's one of the most capable camera apps for Android (Figure 9).
Photos are often the most precious data on your Android device, so a reliable offsite photo backup system is a must. PhotoBackup [8] has got you covered. It consists of a simple Android client app and a Python-based backup server. The former connects to the latter and pushes all the photos on the Android device to a specified folder on the server. Because the app is available through F-Droid [9], you can install it on your Android device in the usual manner; then, you can grab the server source code from the project's GitHub repository. Although deploying the server on a Debian-based Linux server isn't overly complicated, it does require some manual work.
To begin, install all the required packages using the following command:
sudo apt-get update && \ sudo apt-get install python3 python-pip git-core
Then, clone the GitHub repository, create the photobackup
folder for storing transferred photos, and make it writable:
git clone https://github.com/ \ PhotoBackup/server-bottle.git cd server-bottle mkdir photobackup/ chmod 777 -R photobackup/
Next, install the virtualenv Python packages, create a virtual environment for running the backup server, and activate the environment:
sudo pip install virtualenv virtualenv venv virtualenv -p /usr/bin/python3 venv source venv/bin/activate
Once you've done that, install the server:
make ./venv/bin/python install.py
During the installation, you'll be prompted to specify the destination folder (enter photobackup
) and a password. Once the installation has been completed, start the server using the following command:
./venv/bin/python photobackup.py
To run the server continuously, you might want to use the screen utility. Use the sudo apt-get install screen
command to install the utility, then run screen to start a new session.
On your Android device, open the PhotoBackup app, specify the server's URL and password, then enable the service. If everything works properly, the app should find all photos and images on the Android device and push them to the server (Figure 10). Running the service in the background also means that as soon as you take a photo, it's automatically uploaded to the server. To save bandwidth, you can enable the Wi-Fi only option to back up photos only via a WiFi connection.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Halcyon Creates Anti-Ransomware Protection for Linux
As more Linux systems are targeted by ransomware, Halcyon is stepping up its protection.
-
Valve and Arch Linux Announce Collaboration
Valve and Arch have come together for two projects that will have a serious impact on the Linux distribution.
-
Hacker Successfully Runs Linux on a CPU from the Early ‘70s
From the office of "Look what I can do," Dmitry Grinberg was able to get Linux running on a processor that was created in 1971.
-
OSI and LPI Form Strategic Alliance
With a goal of strengthening Linux and open source communities, this new alliance aims to nurture the growth of more highly skilled professionals.
-
Fedora 41 Beta Available with Some Interesting Additions
If you're a Fedora fan, you'll be excited to hear the beta version of the latest release is now available for testing and includes plenty of updates.
-
AlmaLinux Unveils New Hardware Certification Process
The AlmaLinux Hardware Certification Program run by the Certification Special Interest Group (SIG) aims to ensure seamless compatibility between AlmaLinux and a wide range of hardware configurations.
-
Wind River Introduces eLxr Pro Linux Solution
eLxr Pro offers an end-to-end Linux solution backed by expert commercial support.
-
Juno Tab 3 Launches with Ubuntu 24.04
Anyone looking for a full-blown Linux tablet need look no further. Juno has released the Tab 3.
-
New KDE Slimbook Plasma Available for Preorder
Powered by an AMD Ryzen CPU, the latest KDE Slimbook laptop is powerful enough for local AI tasks.
-
Rhino Linux Announces Latest "Quick Update"
If you prefer your Linux distribution to be of the rolling type, Rhino Linux delivers a beautiful and reliable experience.