# Install bundletool with Homebrew, Nix, scoop

Command-line tool to manipulate Android App Bundles. Version 1.18.3 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:bundletool
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install bundletool
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#bundletool
```

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

### Windows

- Scoop (92%):

```sh
scoop install main/bundletool
```

  Evidence: Scoop official bucket manifest trees: bucket/bundletool.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:bundletool
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/bundletool>
- **Version:** 1.18.3
- **Source summary:** Command-line tool to manipulate Android App Bundles
- **Homepage:** <https://github.com/google/bundletool>
- **Repository:** <https://github.com/google/bundletool>
- **Upstream docs:** <https://developer.android.com/studio/command-line/bundletool>
- **License:** Apache-2.0
- **Source archive:** <https://github.com/google/bundletool/releases/download/1.18.3/bundletool-all-1.18.3.jar>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- bundletool (cli)
- bundletool (alias)

## Dependencies

- openjdk

## Install behavior

- Post-install hook: not defined
- Bottle: available on all

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.18.3
- Local data: ok
- Upstream repository: https://github.com/google/bundletool
- info: No package-manager update timestamp was available.
- info: No cached GitHub release or tag data was available.
## Project history and usage

bundletool is Google's command-line tool for building, inspecting, generating, extracting, and installing Android App Bundles, Android SDK Bundles, and the APK sets derived from them.

### Project history

bundletool grew out of the Android App Bundle distribution model introduced at Google I/O 2018. The official Android Developers blog described App Bundles and Google Play Dynamic Delivery as a way to publish all code and resources while letting Google Play deliver only the pieces matching a user's device.

The GitHub README defines bundletool's responsibilities around building app bundles from precompiled modules, generating APK Set archives for possible devices, extracting device-compatible APKs, installing those APKs, extracting device specs, and handling code transparency. It later also gained Android SDK Bundle responsibilities for runtime-enabled SDKs.

### Adoption history

bundletool became foundational Android packaging infrastructure because Android Studio, the Android Gradle plugin, and Google Play use it to construct App Bundles and convert them into APKs for deployment. Its command-line interface gives developers and CI systems the same underlying operations for local testing and release validation.

### How it is used

Typical direct use includes generating an `.apks` archive from an `.aab`, extracting APKs compatible with a connected or described device, installing those APKs for testing, dumping bundle metadata, and creating device spec JSON. Most developers encounter it indirectly through Android Studio or Gradle, while release engineers use it explicitly in build pipelines.

### Why package nerds care

bundletool is package-nerd significant because it separates the published Android package from the device-specific install artifact. It is the practical machinery behind App Bundles, split APK generation, dynamic delivery, code transparency checks, and SDK bundle packaging, so it changed what an Android 'package' means after the APK-only era.

### Timeline

- 2018-05: Android App Bundle and Google Play Dynamic Delivery announced at Google I/O.
- 2018: bundletool repository and command-line workflow became the reference tooling for App Bundles.
- 2024: 1.17.x releases added runtime-enabled SDK bundle validations and commands.
- 2025-01: 1.18.0 added device group targeting support.
- 2025-12: 1.18.3 release notes show ongoing bundle and SDK packaging maintenance.

### Related projects

- Related projects and systems include Android Studio, the Android Gradle plugin, Google Play, APKs, Android App Bundles, APK Set archives, dynamic feature modules, R8, and Android SDK Bundles.

### Sources

- <https://android-developers.googleblog.com/2018/05/google-io-2018-whats-new-in-android.html>
- <https://developer.android.com/studio/command-line/bundletool>
- <https://developer.android.com/tools/bundletool>
- <https://github.com/google/bundletool>
- <https://github.com/google/bundletool/releases>
- <https://raw.githubusercontent.com/google/bundletool/master/README.md>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** bundletool
- **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

- Nix - bundletool: normalized package name match | nixpkgs package indexes: pkgs/by-name/bu/bundletool/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Scoop - main/bundletool: normalized package name match | Scoop official bucket manifest trees: bucket/bundletool.json from https://api.github.com/repos/ScoopInstaller/Main/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.
- [openjdk](https://www.automicvault.com/pkg/brew/openjdk/) - Runtime dependency declared by Homebrew.
- [dex2jar](https://www.automicvault.com/pkg/brew/dex2jar/) - Shares av.db curated category or tags: android, cli, developer-tools, java.
- [adb-enhanced](https://www.automicvault.com/pkg/brew/adb-enhanced/) - Shares av.db curated category or tags: android, cli, developer-tools.
- [fdroidcl](https://www.automicvault.com/pkg/brew/fdroidcl/) - Shares av.db curated category or tags: android, cli, developer-tools.
- [fdroidserver](https://www.automicvault.com/pkg/brew/fdroidserver/) - 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.
- [asciidoctorj](https://www.automicvault.com/pkg/brew/asciidoctorj/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, developer, developer-tools, java, openjdk.
- [fernflower](https://www.automicvault.com/pkg/brew/fernflower/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, developer, developer-tools, java, openjdk.

## Combined YAML source

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


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- 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
