# Debian Package Manager `apt` (Advanced Package Tool) is the standard Debian/Ubuntu package manager. It manages `.deb` files and their dependencies. ## Basic Commands Update package lists from repositories: ```bash sudo apt update ``` Install a package: ```bash sudo apt install package-name ``` Remove package but keep config: ```bash sudo apt remove package-name ``` Remove package and config files: ```bash sudo apt purge package-name ``` Upgrade installed packages: ```bash sudo apt upgrade ``` Upgrade including dependency changes (riskier): ```bash sudo apt full-upgrade ``` ## Searching Find packages: ```bash apt search keyword apt search --names-only keyword ``` Show package details: ```bash apt show package-name ``` ## Low-Level Package Info List installed packages: ```bash dpkg -l dpkg -l | grep keyword ``` List files in a package: ```bash dpkg -L package-name ``` Check if package is installed: ```bash dpkg -l package-name ``` ## Repository Management `apt-get` is the older CLI with identical functionality: ```bash apt-get update apt-get install package-name ``` Prefer `apt` for interactive use; `apt-get` for scripts (stable interface). ## Tips - Always run `sudo apt update` before installing to ensure fresh metadata - Use `sudo apt autoremove` to clean up unused dependencies - `sudo apt-cache search` is equivalent to `apt search` - Check for broken packages: `sudo apt check` - Hold a package from upgrades: `sudo apt-mark hold package-name` - Unhold: `sudo apt-mark unhold package-name` `apt` is wrapper around `dpkg` (lower-level) and `apt-cache` (search). For most purposes, `apt` is sufficient.