deb-get
Install Debian packages from third-party repositories
TLDR
Update the list of available packages and versions
Search for a given package
Show information about a package
Install a package, or update it to the latest available version
Remove a package (using purge instead also removes its configuration files)
Upgrade all installed packages to their newest available versions
List all available packages
SYNOPSIS
deb-get [OPTIONS] COMMAND [ARGUMENTS]
PARAMETERS
-h, --help
Displays general help or help for a specific command.
-v, --version
Shows the installed deb-get version.
-y, --yes, --no-prompt
Assume 'yes' to all prompts, running non-interactively.
--dry-run
Simulate actions without making any actual changes to the system.
--no-install-recommends
Do not install recommended packages, similar to apt's option.
install <package>
Downloads and installs the specified package.
remove <package>
Removes the specified package, analogous to apt remove.
update
Refreshes the list of available packages from deb-get's index.
upgrade
Upgrades all installed deb-get managed packages to their latest versions.
list
Lists all packages known to deb-get, or optionally only installed ones.
search <keyword>
Searches for packages matching the given keyword in the deb-get index.
info <package>
Displays detailed information about a specific package, including its source.
cleanup
Removes cached .deb files and other temporary data.
self-update
Updates deb-get itself to the latest version.
DESCRIPTION
deb-get is a command-line utility designed to simplify the installation of .deb packages that are not available in standard APT repositories. While APT is the primary package manager for Debian-based systems, many modern applications, especially proprietary software or tools from smaller projects, distribute their software as standalone .deb files or via GitHub releases, rather than through official APT repositories or PPAs.
deb-get acts as a convenient wrapper, enabling users to install these packages with an apt-like syntax (e.g., deb-get install <package>). It maintains an index of known packages and their download locations, often directly linking to official developer sites or GitHub release pages. When a package is requested, deb-get intelligently fetches the correct .deb file for the user's architecture, verifies its integrity (where possible), and then leverages apt (specifically apt install ./package.deb) to perform the actual installation, ensuring all dependencies are correctly resolved and handled by the system's robust package management infrastructure.
This tool bridges the gap between traditional APT package management and the need to easily install software distributed outside of official channels, reducing the manual effort of downloading, verifying, and installing .deb files, and subsequently resolving dependencies. It aims to provide a smoother, more integrated experience for managing a broader range of software on Debian/Ubuntu systems.
CAVEATS
deb-get is a third-party tool and not part of the official Debian or Ubuntu package management system. While it leverages apt for installation, it relies on its own curated list of packages and their external download sources. Users should be aware that the integrity and security of packages depend on the trustworthiness of the original upstream developers and the deb-get project's maintenance of its package index. Unlike apt's official repositories, there isn't the same level of cryptographic signing and verification infrastructure for packages sourced directly by deb-get. It is designed to complement, not replace, apt.
PACKAGE INDEX
deb-get maintains an internal index (a YAML file in its GitHub repository) of available packages, their versions, architectures, and the URLs from which their .deb files can be downloaded. This index is regularly updated when you run deb-get update, ensuring access to the latest available software versions. This model allows it to support a wide array of applications without requiring each application to host its own APT repository.
DEPENDENCY HANDLING
Crucially, after deb-get downloads the appropriate .deb file, it hands off the actual installation process to apt (e.g., via sudo apt install ./package.deb). This means that all dependency resolution, conflict checking, and post-installation scripting are handled by apt, leveraging the robustness and security of the underlying Debian package management system.
HISTORY
deb-get was created by Martin Wimpress, well-known in the Linux community for his work on Ubuntu MATE and Snap packaging. It was developed to address a common pain point for Linux users: installing modern, often cross-platform software that provides .deb packages but doesn't maintain its own APT repository. The project began as a pragmatic solution to simplify the process of finding, downloading, and installing these applications, providing an apt-like interface for a broader range of software. It quickly gained traction among users looking for a streamlined way to manage applications like Zoom, VS Code, Slack, and various developer tools without manually adding PPAs or managing individual .deb files.