How to install dig on Arch Linux

If you haven’t picked up on it by now, I am a huge fan of the command-line. Simple applications, they do one thing really well and they can all be piped together to increase their power.

One command-line application that I use on the regular is dig. The dig command allows you to do DNS lookups. This comes in handy when verifying things like DMARC and SPF records, as well as if a sub-domain is properly configured.

While the official Arch Repository combined Arch User Repository has everything I could ever want and more, sometimes the package names aren’t as straight forward as I’d prefer. One such instance is with the dig command.

If you were to try to install the package dig you’ll come up short:

% pacman -S dig
error: target not found: dig

% yay -S dig
 -> No AUR package found for dig
 there is nothing to do
Zsh

So what package needs to be installed to get the dig command?

Turns out, the dig command, which is a DNS utility, lives inside of the bind package:

% sudo pacman -S bind
resolving dependencies...
looking for conflicting packages...

Packages (3) jemalloc-1:5.3.0-3  libmaxminddb-1.7.1-1  bind-9.18.19-1

Total Installed Size:  9.10 MiB

:: Proceed with installation? [Y/n] Y
(3/3) checking keys in keyring                     [######################] 100%
(3/3) checking package integrity                   [######################] 100%
(3/3) loading package files                        [######################] 100%
(3/3) checking for file conflicts                  [######################] 100%
(3/3) checking available disk space                [######################] 100%
:: Processing package changes...
(1/3) installing libmaxminddb                      [######################] 100%
Optional dependencies for libmaxminddb
    geoip2-database: IP geolocation databases
(2/3) installing jemalloc                          [######################] 100%
Optional dependencies for jemalloc
    perl: for jeprof [installed]
(3/3) installing bind                              [######################] 100%
:: Running post-transaction hooks...
(1/4) Creating system user accounts...
(2/4) Reloading system manager configuration...
(3/4) Creating temporary files...
(4/4) Arming ConditionNeedsUpdate...
Zsh

Once the bind package is installed, you should have the dig command
available:

% dig -v
DiG 9.18.19
Zsh
Josh Sherman - The Man, The Myth, The Avatar

About Josh

Husband. Father. Pug dad. Musician. Founder of Holiday API, Head of Engineering and Emoji Specialist at Mailshake, and author of the best damn Lorem Ipsum Library for PHP.


If you found this article helpful, please consider buying me a coffee.