fdroidcl
Install, update, and manage F-Droid apps
TLDR
Fetch the F-Droid index
Display information about an app
Download the APK file of an app
Search for an app in the index
Install an app on a connected device
Add a repository
Remove, enable or disable a repository
SYNOPSIS
fdroidcl [options] command [arguments...]
fdroidcl [options] subcommand [subcommand-options] [arguments...]
PARAMETERS
--help, -h
Displays a comprehensive help message and exits.
--version, -V
Prints the fdroidcl program's version number and exits.
--verbose, -v
Increases the verbosity of the output, showing more details about operations.
--quiet, -q
Decreases the verbosity of the output, suppressing non-essential messages.
--non-interactive
Runs the command in non-interactive mode, avoiding prompts for user input.
DESCRIPTION
fdroidcl is a robust command-line interface (CLI) for interacting with the F-Droid open-source software repository. It empowers users to manage their F-Droid applications directly from the terminal, offering functionalities such as searching for apps, installing them, keeping them updated, and removing them. Unlike graphical F-Droid clients, fdroidcl is ideal for scripting, automation, and for users who prefer a text-based workflow. It leverages the F-Droid repository's metadata to provide comprehensive information about applications, including their descriptions, versions, and permissions. The tool supports managing multiple repositories, making it flexible for accessing various F-Droid-compatible sources. It's an essential utility for users who want fine-grained control over their Android applications without relying on proprietary app stores or a graphical user interface.
CAVEATS
- fdroidcl requires adb (Android Debug Bridge) to be installed and properly configured on the system to interact with Android devices.
- The Android device must have USB debugging enabled and be authorized for the adb connection.
- It primarily manages F-Droid applications and does not interact with Google Play Store apps.
- Installation typically happens via ADB, which means the device needs to be connected and recognized by ADB.
KEY SUBCOMMANDS
fdroidcl operates primarily through subcommands, each performing a specific task:
- search <query>: Used to find applications in configured F-Droid repositories. The <query> can be part of the app name, package ID, or description.
- install <package_id>: Installs the specified application on the connected Android device. Requires adb to be set up and the device to be connected.
- update: Refreshes the local F-Droid repository index from configured sources, ensuring you have the latest app information.
- show <package_id>: Displays detailed information about an application, including its description, versions, permissions, and metadata.
- list: Lists all applications currently installed on the connected device that were managed by fdroidcl.
- remove <package_id>: Uninstalls the specified application from the connected Android device.
- repo: A subcommand itself, used for managing F-Droid repositories. Common uses include fdroidcl repo add <url> <fingerprint>, fdroidcl repo list, and fdroidcl repo remove <url>.
HISTORY
fdroidcl emerged as a project to provide a command-line alternative to the graphical F-Droid client, catering to developers, system administrators, and users who prefer terminal-based interactions or automation. Its development has focused on leveraging the existing F-Droid repository structure and adb capabilities to offer a seamless experience for managing open-source Android applications without requiring a GUI. It fills a niche for headless server setups or integrating F-Droid app management into larger scripts.