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
Direct Download
Read full article as PDF:
Price $2.95
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Find SysAdmin Jobs
News
-
MNT Seeks Financial Backing for New Seven-Inch Linux Laptop
MNT Pocket Reform is a tiny laptop that is modular, upgradable, recyclable, reusable, and ships with Debian Linux.
-
Ubuntu Flatpak Remix Adds Flatpak Support Preinstalled
If you're looking for a version of Ubuntu that includes Flatpak support out of the box, there's one clear option.
-
Gnome 44 Release Candidate Now Available
The Gnome 44 release candidate has officially arrived and adds a few changes into the mix.
-
Flathub Vying to Become the Standard Linux App Store
If the Flathub team has any say in the matter, their product will become the default tool for installing Linux apps in 2023.
-
Debian 12 to Ship with KDE Plasma 5.27
The Debian development team has shifted to the latest version of KDE for their testing branch.
-
Planet Computers Launches ARM-based Linux Desktop PCs
The firm that originally released a line of mobile keyboards has taken a different direction and has developed a new line of out-of-the-box mini Linux desktop computers.
-
Ubuntu No Longer Shipping with Flatpak
In a move that probably won’t come as a shock to many, Ubuntu and all of its official spins will no longer ship with Flatpak installed.
-
openSUSE Leap 15.5 Beta Now Available
The final version of the Leap 15 series of openSUSE is available for beta testing and offers only new software versions.
-
Linux Kernel 6.2 Released with New Hardware Support
Find out what's new in the most recent release from Linus Torvalds and the Linux kernel team.
-
Kubuntu Focus Team Releases New Mini Desktop
The team behind Kubuntu Focus has released a new NX GEN 2 mini desktop PC powered by Linux.