(Last Updated On: October 13, 2018)

The Chef development kit contains all the tools you need to develop and test your infrastructure, built by the awesome Chef community. Chef is an open source configuration management tool written in Ruby and Erlang. The Chef DK workstation is the location where users interact with Chef.

If you don’t have Chef Server installed, check: How to install Chef Automation Server on Ubuntu 18.04 LTS

On the workstation users author and test cookbooks using tools such as Test Kitchen and interact with the Chef server using the knife and chef command line tools.

To install Chef Development Kit on Arch Linux, you need an AUR helper, I recommend you use yay – yay – Best AUR Helper for Arch Linux / Manjaro

Once yay is installed. download and install  Chef Development Kit on your Arch Linux machine.

yay -S --noconfirm chef-dk

Wait for the installation to finish.  Check the version installed using:

$ yay -Qi chef-dk

Name            : chef-dk
Version         : 3.2.30-1
Description     : The Chef development kit contains all the tools you need to develop and test your infrastructure, built by the awesome Chef
                  community.
Architecture    : x86_64
URL             : https://downloads.chef.io/chef-dk/
Licenses        : Apache
Groups          : None
Provides        : None
Depends On      : None
Optional Deps   : None
Required By     : None
Optional For    : None
Conflicts With  : chef  chef-solo  chef-client  chef-workstation
Replaces        : None
Installed Size  : 320.93 MiB
Packager        : Unknown Packager
Build Date      : Wed 03 Oct 2018 10:46:56 PM EAT
Install Date    : Wed 03 Oct 2018 10:56:57 PM EAT
Install Reason  : Explicitly installed
Install Script  : No
Validated By    : None

From the output, you can confirm the installed version is 3.2.30-1. Downloads page lists current releases of Chef DK.

To use the Chef development kit version of Ruby as the default Ruby, you’ll need to edit your $PATH and GEM environment variables to include paths to the Chef development kit.

For Bash use:

echo 'eval "$(chef shell-init bash)"' >> ~/.bash_profile

bash and ~/.bash_profile represent name of shell and its configurat

If you’re using zsh shell, then run

echo 'eval "$(chef shell-init zsh)"' >> ~/.zshrc

Source your rc and check the ruby location.

source ~/.zshrc or source ~/.bash_profile

Installation of Chef Development Kit will provide the following command line tools:

Click on the item link to learn more about what it does, and how it works. More ChefDK setup guides are available on Chef Documentation page.