F-Droid desktop client
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Daniel Martí e6a3f65f49 move main package into root directory 7 years ago
adb all: refactor to use the new JSON index format 8 years ago
basedir all: move to mvdan.cc/fdroidcl, merge basedir 8 years ago
contrib/completion/zsh contrib: update zsh completion 8 years ago
fdroid move main package into root directory 7 years ago
.gitignore Split up command line interface into cmd/fdroidcl 11 years ago
.travis.yml CI: test on 1.11 and 1.12, use modules 7 years ago
LICENSE Fix license wording 10 years ago
README.md move main package into root directory 7 years ago
defaults.go move main package into root directory 7 years ago
devices.go move main package into root directory 7 years ago
download.go move main package into root directory 7 years ago
endtoend_test.go move main package into root directory 7 years ago
go.mod all: port to a Go module 8 years ago
go.sum all: port to a Go module 8 years ago
install.go move main package into root directory 7 years ago
list.go move main package into root directory 7 years ago
main.go move main package into root directory 7 years ago
search.go move main package into root directory 7 years ago
show.go move main package into root directory 7 years ago
uninstall.go move main package into root directory 7 years ago
update.go move main package into root directory 7 years ago

README.md

fdroidcl

GoDoc Build Status

F-Droid desktop client.

go get -u mvdan.cc/fdroidcl

While the Android client integrates with the system with regular update checks and notifications, this is a simple command line client that talks to connected devices via ADB.

Quickstart

Download the index:

fdroidcl update

Show all available apps:

fdroidcl search

Install an app:

fdroidcl install org.adaway

Commands

update                Update the index
search <regexp...>    Search available apps
show <appid...>       Show detailed info about an app
devices               List connected devices
download <appid...>   Download an app
install <appid...>    Install or upgrade app
uninstall <appid...>  Uninstall an app
defaults              Reset to the default settings

A specific version of an app can be selected by following the appid with an colon (:) and the version code of the app to select.

Config

You can configure what repositories to use in the config.json file. On Linux, you will likely find it at ~/.config/fdroidcl/config.json.

You can run fdroidcl defaults to create the config with the default settings.

Advantages over the Android client

  • Command line interface
  • Batch install/update/remove apps without root nor system privileges
  • No need to install a client on the device

What it will never do

  • Run as a daemon, e.g. periodic index updates
  • Act as an F-Droid server
  • Swap apps with devices

Caveats

  • Index verification relies on HTTPS (not the JAR signature)
  • The tool can only interact with one device at a time
  • Hardware compatibility of packages is not checked