# Install fdroidserver with Homebrew, apt, MacPorts, Nix

Create and manage Android app repositories for F-Droid. Version 2.4.5 via Homebrew; verified 2026-06-05.

## Install

```sh
sudo av install brew:fdroidserver
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install fdroidserver
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install fdroidserver
```

  Evidence: MacPorts ports tree: devel/fdroidserver/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Debian apt (92%):

```sh
sudo apt install fdroidserver
```

  Evidence: Debian stable package indexes: fdroidserver from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#fdroidserver
```

  Evidence: nixpkgs package indexes: pkgs/by-name/fd/fdroidserver/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:fdroidserver
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/fdroidserver>
- **Version:** 2.4.5
- **Source summary:** Create and manage Android app repositories for F-Droid
- **Homepage:** <https://f-droid.org>
- **Repository:** <https://gitlab.com/fdroid/fdroidserver>
- **Upstream docs:** <https://f-droid.org/en/docs>
- **License:** AGPL-3.0-or-later
- **Source archive:** <https://files.pythonhosted.org/packages/f4/d8/7beac4add64c4b3d03dac01a073dc7c6beb69a7adbd4215bc8def3075d46/fdroidserver-2.4.5.tar.gz>
- **Last updated:** 2026-06-05T04:15:19Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- fdroid (cli)
- fdroid (alias)

## Dependencies

- certifi
- cryptography
- freetype
- libmagic
- libsodium
- libyaml
- numpy
- pillow
- python@3.14
- qhull
- rclone
- s3cmd

## Build dependencies

- cmake
- ninja
- pkgconf
- pybind11
- rust

## Uses from macOS

- libffi
- libxml2
- libxslt

## Install behavior

- Post-install hook: not defined
- Caveats: For complete functionality, fdroidserver requires that the Android SDK's "build-tools" and "platform-tools" are installed, and those require a Java JDK. Also, it is best if the base path of the Android SDK is set in the environment variable ANDROID_HOME. To do this all from the command line, run: brew install --cask android-commandlinetools temurin export ANDROID_HOME=$HOMEBREW_CELLAR/fdroidserver/2.4.5/share/android-commandlinetools $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager "platform-tools" "build-tools;34.0.0"
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 2.4.5
- Package-manager updated: 2026-06-05
- Local data: ok
- Upstream repository: https://f-droid.org
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

fdroidserver is the server-side and repository-maintenance tool suite behind F-Droid. It creates indexes, manages metadata, builds and publishes Android app repositories, and supports both the public f-droid.org repository and independent F-Droid-compatible repositories.

### Project history

F-Droid says the project was founded in 2010 by Ciaran Gultnieks. fdroidserver began as the complete server-side setup that ran f-droid.org, but its README explains that the website and other pieces were later split into separate projects while the fdroidserver name remained for the tooling suite.

The fdroidserver README describes the project as tools for maintaining an F-Droid repository system. It is used to maintain the f-droid.org application repository, to create alternative repositories, and to help create, test, and submit metadata to fdroiddata.

The project lives in F-Droid's GitLab namespace and has long-running branches and merge requests because the production f-droid.org setup runs directly from master on a regular schedule. Stable releases are also provided, mainly for custom repositories and for contributors who want packaged tooling.

### Adoption history

fdroidserver's adoption follows F-Droid's role as the free-software Android app repository. Anyone publishing an F-Droid-compatible repository needs the same primitives: app metadata, APK handling, signing keys, index generation, and deployment. fdroidserver packages those primitives into the fdroid CLI.

The supplied package facts show fdroidserver in Homebrew, Debian, MacPorts, Nix, and Ubuntu. That cross-platform packaging is important because repository maintainers and app contributors often work from ordinary desktop or CI environments rather than from a dedicated server.

F-Droid's own about page positions the ecosystem as privacy-respecting, account-free, open, and community-run. fdroidserver is the infrastructure-facing half of that promise: it makes app distribution auditable and reproducible enough for a community repository and for third-party repositories.

### How it is used

Typical usage is through the fdroid command to initialize and maintain a repository, process app metadata, build packages, update repository indexes, and deploy signed repository data. The current curation records config.yml in a repository directory and a default keystore path under ~/.local/share/fdroidserver.

The tool is also part of the contributor workflow for fdroiddata. Maintainers can test metadata and builds locally before submitting changes to the public F-Droid app collection.

### Why package nerds care

fdroidserver is package-manager machinery in the purest sense: metadata, signatures, indexes, build recipes, repository publishing, and policy checks. For package nerds, it is the Android-world analogue of distro repository tooling, with extra attention to source availability and user freedom.

It also explains why F-Droid is more than an APK download site. The server tools embody the reviewable supply chain: build metadata, reproducible-ish processes, signed indexes, and independent repository creation.

### Timeline

- 2010: F-Droid project founded.
- 2014: fdroidserver GitLab project created in the F-Droid namespace.
- 2019: fdroidserver 1.1 appears in release tag history.
- 2021: fdroidserver 2.0 released.
- 2026: fdroidserver 2.4.5 appears in release tag history.

### Related projects

- fdroiddata contains app metadata for the public F-Droid repository.
- F-Droid Client is the Android app-store client that consumes repositories produced by the server tooling.
- Repomaker and other F-Droid ecosystem tools build on the same repository model.

### Sources

- <https://f-droid.org/en/about/>
- <https://gitlab.com/fdroid/fdroidserver>
- <https://gitlab.com/fdroid/fdroidserver/-/raw/master/README.md>
- <https://f-droid.org/en/docs>
- <https://formulae.brew.sh/formula/fdroidserver>


## Security Notes

No matching local secret-handling manifest was found for fdroidserver. Nucleus package metadata is still published here so future coverage has a stable package URL.



## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: config.yml, ~/fdroid/config.yml

## Credential files

- Unix: ~/.local/share/fdroidserver/keystore.jks
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** fdroidserver
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Debian apt - fdroidserver - 2.4.2-1: normalized package name match | Debian stable package indexes: fdroidserver from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | F-Droid build server and repository tools for Android | https://f-droid.org
- Nix - fdroidserver: normalized package name match | nixpkgs package indexes: pkgs/by-name/fd/fdroidserver/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - fdroidserver - 2.2.1-2: normalized package name match | Ubuntu 24.04 LTS package indexes: fdroidserver from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | F-Droid build server and repository tools for Android | https://f-droid.org
- MacPorts - fdroidserver: normalized package name match | MacPorts ports tree: devel/fdroidserver/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [freetype](https://www.automicvault.com/pkg/brew/freetype/) - Runtime dependency declared by Homebrew.
- [numpy](https://www.automicvault.com/pkg/brew/numpy/) - Runtime dependency declared by Homebrew.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [ninja](https://www.automicvault.com/pkg/brew/ninja/) - Build dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [pybind11](https://www.automicvault.com/pkg/brew/pybind11/) - Build dependency declared by Homebrew.
- [fdroidcl](https://www.automicvault.com/pkg/brew/fdroidcl/) - Shares av.db curated category or tags: android, cli, developer-tools, fdroid.
- [adb-enhanced](https://www.automicvault.com/pkg/brew/adb-enhanced/) - Shares av.db curated category or tags: android, cli, developer-tools.
- [bundletool](https://www.automicvault.com/pkg/brew/bundletool/) - Shares av.db curated category or tags: android, cli, developer-tools.
- [dex2jar](https://www.automicvault.com/pkg/brew/dex2jar/) - Shares av.db curated category or tags: android, cli, developer-tools.
- [payload-dumper-go](https://www.automicvault.com/pkg/brew/payload-dumper-go/) - Shares av.db curated category or tags: android, cli, developer-tools.
- [pidcat](https://www.automicvault.com/pkg/brew/pidcat/) - Shares av.db curated category or tags: android, cli, developer-tools.
- [purr](https://www.automicvault.com/pkg/brew/purr/) - Shares av.db curated category or tags: android, cli, developer-tools.
- [redex](https://www.automicvault.com/pkg/brew/redex/) - Shares av.db curated category or tags: android, cli, developer-tools.
- [gptme](https://www.automicvault.com/pkg/brew/gptme/) - Both packages touch the same language runtime or ecosystem. Shared terms: certifi, cli, cryptography, developer, developer-tools.
- [mlx-lm](https://www.automicvault.com/pkg/brew/mlx-lm/) - Both packages touch the same language runtime or ecosystem. Shared terms: certifi, cli, developer, developer-tools, libyaml.
- [snapcraft](https://www.automicvault.com/pkg/brew/snapcraft/) - Both packages touch the same language runtime or ecosystem. Shared terms: certifi, cli, cryptography, developer, developer-tools.

## Combined YAML source

View the package source record on GitHub. [combined/fdroidserver.yml](https://github.com/automic-vault/db/blob/main/combined/fdroidserver.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
