-
Notifications
You must be signed in to change notification settings - Fork 17
Installation
Dab uses a small POSIX compliant shell script that should run on any UNIX like operating system such as any linux. This script requires Docker as it quickly executes a container for the rest of Dab's execution. This means that you need not install any other dependencies than a running Docker daemon and this script as everything else is self contained in the Dab docker image.
The Dab wrapper script need only be downloaded to somewhere on your $PATH
environment variable and made executable.
In this example we will install Dab for all users.
$ sudo curl https://raw.githubusercontent.com/Nekroze/dab/master/dab -o /usr/bin/dab
$ sudo chmod 755 /usr/bin/dab
Henceforth you can execute dab
in any shell on this machine.
Dab has three distinct components that updated in various, mostly automatic, ways.
First there is the Dab wrapper script which you download to install. This script is designed to rarely need to be changed, however on the rare occasion it is necessary dab will alert you to this with a warning that the wrapper is out of date. To update the wrapper script simply repeat the same steps you used to install Dab.
The Dab docker image which you do not normally need to worry about as the
next execution of the dab
command after 24 hours it will update itself. The
image itself will be updated automatically when the master branch of the Dab
source code is updated or one of the base docker images it depends on gets
updated, for example when there are security updates.
The final piece is the completion binary made available via the dab completion
subcommand. This binary is automatically updated when next you run
dab
with an image containing a different version of it.
While there are more pieces than you might have hoped at first glance, everything that changes frequently is self updating at regular intervals, and the manually updated component is rarely changed. This leads to a rather smooth and always fresh experience without constant maintenance.
Please feel free to request an edit to this page if it lies!