This release is a pre-release and may not be stable for production use.
bdapt: Bundle APT
Manage multiple Debian / Ubuntu APT packages as bundles
bdapt (Bundle APT) is a command-line tool for managing collections of APT packages as "bundles" on Debian-based systems (e.g. Ubuntu, Debian, etc.). It lets you install, remove, and track related packages together with a single command.
When software is installed from source or outside your package manager, dependencies often have to be installed manually using apt install. Later, when you remove the software, these dependencies remain because apt autoremove only removes packages marked as "automatically installed." Over time, this leads to clutter and orphaned packages. bdapt solves this by grouping dependencies into bundles, making cleanup straightforward.
Installation
You can install bdapt using pip:
pip install bdapt
Or if you prefer uv:
uv tool install bdapt
Quickstart
Let's say you're setting up a server for a web application. You need Nginx, PostgreSQL, and Redis.
Create bundle
bdapt new web-stack nginx postgresql redis -d "Core web services stack"
Add packages
Your application now requires PHP. Instead of installing it manually, add it to your bundle.
bdapt add web-stack php-fpm php-pgsql
Remove packages
You've decided to move Redis to a different server and no longer need it locally.
bdapt rm web-stack redis
Remove bundle
You are decommissioning the server and want to clean up everything.
bdapt del web-stack
Now your system is clean!
Usage
Usage: bdapt [OPTIONS] COMMAND [ARGS]...
Bundle APT: Group multiple Debian APT packages as bundles.
╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --version Show version and exit │
│ --quiet -q Minimal output │
│ --non-interactive -y Skip all confirmation prompts │
│ --install-completion Install completion for the current shell. │
│ --show-completion Show completion for the current shell, to copy it or customize the installation. │
│ --help Show this message and exit. │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ new Create and install new bundle. │
│ add Add packages to a bundle. │
│ rm Remove packages from a bundle. │
│ del Delete the bundle. │
│ ls List all bundles. │
│ show Display bundle contents. │
│ sync Force reinstall bundle to match definition. │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Metadata
Release files for bdapt 0.2.0a1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| bdapt-0.2.0a1.tar.gz | 12.9 kB | Without provenance | Details for bdapt-0.2.0a1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| bdapt-0.2.0a1-py3-none-any.whl | Python 3 | none | any | Details for bdapt-0.2.0a1-py3-none-any.whl |
Total release size: 27.7 kB
Release files / bdapt-0.2.0a1.tar.gz
| Download URL | bdapt-0.2.0a1.tar.gz |
|---|---|
| Size | 12.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
33307c2936d44b8bbe49ac8c7808c142ba773c4948576ef00bca8de41313adea
|
|
BLAKE2b-256 checksum How to use checksums |
d5933be93b8999da93f13bebcc8a63b453f5364c65604b38191b71ebf2ec634f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.22
|
Release files / bdapt-0.2.0a1-py3-none-any.whl
| Download URL | bdapt-0.2.0a1-py3-none-any.whl |
|---|---|
| Size | 14.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ad09ac1216083cfb413da625c4f82d7ee481702ac3d5398ea2372bfe47d03f92
|
|
BLAKE2b-256 checksum How to use checksums |
bea5bbe9c3e37ed702cc04aac20d4c441f3bf146ee0a0338127a1c3f028bcbf8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.22
|
Security for bdapt 0.2.0a1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.