apt-get functionality for .debs published in 3rd party repositories or via direct download. It works on Ubuntu and derivative distributions.
Made with π for
deb-get
makes is easy to install and update .debs
published in 3rd party
apt repositories or made available via direct download on websites or GitHub
release pages.
Use deb-get
to install deb-get
sudo apt install curl
curl -sL https://raw.githubusercontent.com/wimpysworld/deb-get/main/deb-get | sudo -E bash -s install deb-get
Alternatively, you can download the .deb
of deb-get
from the releases page
and install it manually.
Here's an example of how to install Google Chrome.
sudo deb-get install google-chrome-stable
You can see what applications are supported by using sudo deb-get list
or you
can search the available applications with sudo deb-get search <app>
You can upgrade packages installed using deb-get
by running
sudo deb-get upgrade
.
deb-get {update | upgrade | show pkg | install pkg | reinstall pkg | remove pkg
| purge pkg | search pkg | cache | clean | list | prettylist | help | version}
deb-get provides a high-level commandline interface for the package management
system to easily install and update packages published in 3rd party apt
repositories or via direct download.
update
update is used to resynchronize the package index files from their sources.
upgrade
upgrade is used to install the newest versions of all packages currently installed on the system.
install
install is followed by one package desired for installation or upgrading.
reinstall
reinstall is followed by one package desired for reinstallation.
remove
remove is identical to install except that packages are removed instead of installed.
purge
purge is identical to remove except that packages are removed and purged (any configuration files are deleted too).
clean
clean clears out the local repository (/var/cache/deb-get) of retrieved package files.
search
search for the given regex(7) term(s) from the list of available packages supported by deb-get and display matches.
show
show information about the given package including its install source and update mechanism.
list
list the packages available via deb-get.
prettylist
markdown formatted list the packages available via deb-get. Use this to update README.md
cache
list the contents of the deb-get cache (/var/cache/deb-get)
3rd party apt repositories exist. They are not going away.
Some application vendors and projects express their support for Debian/Ubuntu
by publishing .debs
of their software as direct downloads or via
their own apt repositories. deb-get
makes it easy to find, install and update
.debs
published in this way.
- Perhaps you want to use software that is not (yet) officially packaged for Debian/Ubuntu.
- Perhaps you want to use software that is fast moving and newer versions are available from the vendor/project.
- Perhaps you want to use some non-free software that Debian/Ubuntu cannot distribute due to licensing restrictions.
deb-get
tries to remedy this by providing a curated index of software
available for Ubuntu that is published by the project or vendor. deb-get
is
inspired by Software Boutique, a graphical application I co-authored that does
much the same thing and has been included in Ubuntu MATE
since 2015.
The software below can be installed, updated and removed using deb-get
.
sudo deb-get install <packagename>
sudo deb-get update
sudo deb-get upgrade
sudo deb-get remove <packagename>
sudo deb-get purge <packagename>
1Password (
1password
) - The easiest way to store and use strong passwords.
AntiMicroX (
antimicrox
) - A graphical program used to map keyboard buttons and mouse controls to a gamepad.
Atom (
atom
) - A hackable text editor for the 21st Century.
Azure CLI (
azure-cli
) - Command-line interface used to create and manage Azure resources.
Azure Data Studio (
azuredatastudio
) - Data management tool for working with SQL Server, Azure SQL DB and SQL DW.
Etcher (
balena-etcher-electron
) - Flash OS images to SD cards & USB drives, safely and easily.
bat (
bat
) - A 'cat' clone with wings.
BeerSmith (
beersmith3
) - Home Brewing Software.
Bitwarden (
bitwarden
) - Open Source Password Manager.
Brave (
brave-browser
) - Browse privately. Search privately. And ditch Big Tech.
Caprine (
caprine
) - Elegant Facebook Messenger desktop app.
Cawbird (
cawbird
) - Twitter client for the Linux desktop.
Visual Studio Code (
code
) - Code editing. Redefined.
VSCodium (
codium
) - Community-driven, freely-licensed binary distribution of Microsoft's Code editor.
deb-get (
deb-get
) - 'apt-get' functionality for .debs published in 3rd party repositories or via direct download package.
Discord (
discord
) - A place that makes it easy to talk every day and hang out more often.
Docker Engine (
docker-ce
) - Open source containerization technology for building and containerizing your applications.
Docker Desktop (
docker-desktop
) - The fastest way to containerize applications.
Dropbox (
dropbox
) - Securely share, store and do more with your content.
duf (
duf
) - Disk Usage/Free Utility - a better 'df' alternative.
Element (
element-desktop
) - Secure and independent communication, connected via Matrix.
Enpass (
enpass
) - Remember one master password and let Enpass take care of the rest.
Exodus (
exodus
) - Bitcoin & Crypto Wallet.
Expressvpn (
expressvpn
) - Popular VPN software
fd (
fd
) - A simple, fast and user-friendly alternative to 'find'.
Figma Linux (
figma-linux
) - Unofficial Electron-based Figma desktop app for Linux.
Firefox ESR (
firefox-esr
) - Firefox Extended Support Release.
Franz (
franz
) - A messaging app for WhatsApp, Facebook Messenger, Slack, Telegram and many many more.
GitHub CLI (
gh
) - GitHub CLI brings GitHub to your terminal. Free and open source.
git-delta (
git-delta
) - A syntax-highlighting pager for 'git', 'diff', and 'grep' output.
GitHub Desktop (
github-desktop
) - Simple collaboration from your desktop.
GitKraken (
gitkraken
) - Intuitive Git GUI & powerful Git CLI.
Gitter (
gitter
) - A chat and networking platform to manage and connect communities through messaging, content and discovery.
Google Chrome (
google-chrome-stable
) - Fast, Secure Browser from Google.
Google Earth Pro (
google-earth-pro-stable
) - Explore worldwide satellite imagery and 3D buildings and terrain for hundreds of cities.
Grype (
grype
) - A vulnerability scanner for container images and filesystems.
Heroic Games Launcher (
heroic
) - An Open Source GOG and Epic games launcher.
IGdm Messenger (
igdm
) - Continue your Instagram direct messages from your phone to your desktop.
Insomnia (
insomnia
) - The API Design Platform and API Client.
Insync (
insync
) - Manage your Google Drive, OneDrive, and Dropbox files straight from your Desktop.
IRCCloud Desktop (
irccloud-desktop
) - IRCCloud desktop application.
JabRef (
jabref
) - The efficient way to collect, organize & discover.
Jami (
jami
) - Share, freely and privately.
Jellyfin (
jellyfin
) - The Free Software Media System.
KeePassXC (
keepassxc
) - Cross-Platform Password Manager.
Keybase (
keybase
) - End-to-end encryption for things that matter. Secure messaging and file-sharing.
LSDeluxe (
lsd
) - The next gen 'ls' command.
Ludo (
ludo
) - A minimalist frontend for emulators.
Lutris (
lutris
) - Open Gaming Platform.
Mailspring (
mailspring
) - Boost your productivity and send better email with the best mail client.
Mattermost Desktop (
mattermost-desktop
) - Open Source platform for developer collaboration.
micro (
micro
) - A modern and intuitive terminal-based text editor.
Microsoft Edge (
microsoft-edge-stable
) - Fast and secure browser that helps you protect your data and save time and money.
Nextcloud Desktop (
nextcloud-desktop
) - The self-hosted productivity platform that keeps you in control.
Obsidian (
obsidian
) - A powerful knowledge base on top of a local folder of plain text Markdown files.
ocenaudio (
ocenaudio
) - Easy, fast and powerful audio editor.
ONLYOFFICE Desktop Editors (
onlyoffice-desktopeditors
) - Free desktop office suite for document editing and collaboration.
Opera (
opera-stable
) - Faster, safer and smarter than default browsers.
Pandoc (
pandoc
) - A universal document converter.
Plex (
plexmediaserver
) - Stream Movies and TV Shows.
PowerShell (
powershell
) - Cross-platform automation and configuration tool/framework and optimized for dealing with structured data.
Quickemu (
quickemu
) - Quickly create and run optimised Windows, macOS and Linux desktop virtual machines.
Quickgui (
quickgui
) - A Flutter frontend for Quickemu.
Rambox (
rambox
) - Workspace simplifier.
Rclone (
rclone
) - Syncs your files to cloud storage.
Rocketchat Desktop (
rocketchat
) - Official Desktop Client for Rocket.Chat.
Raspberry Pi Imager (
rpi-imager
) - Raspberry Pi Imaging Utility.
RStudio (
rstudio
) - Professional software for data science teams.
Sengi (
sengi
) - Tweetdeck inspired Mastodon & Pleroma Multi-account Desktop Client.
Signal (
signal-desktop
) - Private Messenger.
Simplenote (
simplenote
) - The simplest way to keep notes.
Skype (
skypeforlinux
) - Stay connected with free video calls worldwide.
Slack (
slack-desktop
) - One platform for your team and your work.
Spotify (
spotify-client
) - Millions of songs and podcasts.
Sublime Merge (
sublime-merge
) - Git Client, done Sublime.
Sublime Text (
sublime-text
) - Text Editing, Done Right.
Syft (
syft
) - CLI tool and library for generating a Software Bill of Materials from container images and filesystems.
Syncthing (
syncthing
) - Continuous file synchronization program.
Tailscale (
tailscale
) - Zero config VPN. Works on any device, manages firewall rules for you, and works from anywhere.
Microsoft Teams (
teams
) - Team chat and collaboration.
TeamViewer (
teamviewer
) - The Remote Desktop Software.
Terraform (
terraform
) - Automate Infrastructure on Any Cloud.
Tidal-hifi (
tidal-hifi
) - Web version of listen.tidal.com running in Wlectron with hifi support thanks to widevine.
Tixati (
tixati
) - A New and Powerful P2P System.
Trivy (
trivy
) - A simple and comprehensive vulnerability/misconfiguration/secret scanner for containers and other artifacts.
Ubuntu-Make (
ubuntu-make
) - Easy setup of common tools for developers on Ubuntu.
Vivaldi (
vivaldi-stable
) - The most feature-packaged, customisable browser.
VueScan (
vuescan
) - Scanner Software that supports over 6500 scanners.
Wavebox (
wavebox
) - Rethink the Web. Productivity Browser.
Webex (
webex
) - Video Conferencing, Cloud Calling and Screen Sharing.
WeeChat (
weechat
) - The extensible chat client.
Whalebird (
whalebird
) - A Mastodon, Pleroma, and Misskey client for desktop application.
WhatsApp for Linux (
whatsapp-for-linux
) - An unofficial WhatsApp desktop application for Linux.
Wire (
wire-desktop
) - Secure collaboration platform.
Zenith (
zenith
) - Sort of like 'top' or 'htop' but with zoom-able charts.
Zoom (
zoom
) - Video Conferencing, Cloud Phone, Webinars, Chat, Virtual Events.
Zotero (
zotero
) - A free, easy-to-use tool to help you collect, organize, cite, and share research.
Legend
The icons above denote how deb-get
installs/updates the packages.
If packages are available via a 3rd party apt
repository
or a Launchpad PPA
, then those packages
will be updated/upgraded when using
apt-get update
and apt-get upgrade
.
For .deb
packages that are only available via GitHub Releases
or direct download
, then those packages
can only be updated/upgrade by using
deb-get update
and deb-get upgrade
.
Create a function
in deb-get
that is named deb_the-package-name
where
"the-package-name" is the Package:
name shown using apt show
. The deb_
prefix is required so deb-get
can dynamically build the list of available
software.
Take a look at the existing deb_
functions as reference for adding new
packages to deb-get
.
This defines what software that can be added to deb-get
and therefore the
scope of the project in terms if what it is intended for.
- Software has to be published as a
.deb
. Build from source, tarballs or other binaries releases will not be accepted. - Software has to be published authoritatively by the upstream vendor, project or maintainer. Packages published by unassociated community contributors will not be accepted.
- Software must be actively maintained.
- Only stable/production releases. Daily/nightly, betas or pre-release versions will not be accepted.
- GitHub Releases and direct downloads must have a reliable means to dynamically determine the current upstream published version. Hardcoded versions will be not accepted.
- Packages from the official Debian or Ubuntu apt archives will not be accepted.
- App Outlet: A Universal linux app store
- pacstall: The AUR alternative for Ubuntu
- Ubuntu Make: Easy setup of common tools for developers on Ubuntu.
- unsnap: Quickly migrate from using snap packages to flatpaks