Blog-S_Server-Cloud_100x385

APT Repository for Chef

As mentioned in our announcement of Chef packages in Ubuntu's Karmic Koala release, we are working on getting Chef and its dependencies in various Debian and Ubuntu releases. We also said we would create an APT repository, and now following distribution releases are available:

Ubuntu 9.10 "Karmic Koala"
Ubuntu 9.04 "Jaunty Jackalope"
Ubuntu 8.10 "Intrepid Ibex"
Ubuntu 8.04 (LTS) "Hardy Heron"
Debian 5 lenny/squeeze/sid (see below)

This repository will have the latest releases of Opscode software, including Chef, Ohai and various supporting libraries.  Usage instructions after the fold.

To use this APT repository on Ubuntu systems, add to /etc/apt/sources.list.d/opscode.list:

deb http://apt.opscode.com/ <release> universe

Where <release> is karmic, jaunty, intrepid or hardy. On Debian systems, opscode.list should be:

deb http://apt.opscode.com/ debian contrib

Then, add the Opscode APT GPG key to your keyring:

curl http://apt.opscode.com/packages@opscode.com.gpg.key \

| sudo apt-key add –

Update your local cache and install Chef:

sudo apt-get update

sudo apt-get install ohai chef

For servers:

sudo apt-get install ohai chef chef-server

See the Ubuntu Karmic announcement for notes about configuration differences and server-specific information. We will also be updating the Chef wiki with Debian package-based installation instructions. The Opscode Chef cookbook will be updated soon as well. Please file a ticket if you find issues with the deb package version of Chef – be sure to add "Deb Packages" as a component.

Dependencies

We packaged Chef dependencies that aren't available for specific releases and hosted them on the repository so the full stack can be installed for clients or servers. The packages were built using Sbuild, using the source packages directly from Debian or Ubuntu where applicable. See the package list for each distribution release for the packages included.

Debian Releases

A note about Debian releases. The packages are tested to install and provide functionality for a Chef client and/or server on lenny (stable), squeeze (testing) and sid (unstable). They should "just work" and on lenny and squeeze, be entirely usable and reasonable. However, due to sid's very nature, some other things may break entirely.

Update 9/3/2009 (AM):

If you're running a 64-bit system for your Chef Server, you may be unable to install libeventmachine-ruby1.8 on Debian Lenny or Ubuntu Hardy. Since this package isn't backported or otherwise available by Debian/Ubuntu for these releases, we built and host it on our APT repo, but we didn't build a 64-bit version yet. We have a ticket open, but in the mean time you'll need to install the server on a 32-bit machine, or a later release where eventmachine is compiled for 64-bit (squeeze/testing or intrepid+).

Update 9/3/2009 (PM):

As Joe points out in the comments, apt-get install doesn't grab rubygems. However, if aptitude is used instead of apt-get, the "Recommends" from libchef-ruby1.8 will also install rubygems. Tickets are open in Launchpad:

  • https://bugs.launchpad.net/ubuntu/+bug/424131
  • https://bugs.launchpad.net/ubuntu/+bug/424133
  • https://bugs.launchpad.net/ubuntu/+bug/412217

And in our Jira:

  • http://tickets.opscode.com/browse/CHEF-531
  • http://tickets.opscode.com/browse/OHAI-119

To resolve, when using apt-get, add 'rubygems' to the installation. Alternately, install using aptitude and it will add rubygems.

Joshua Timberman

Joshua Timberman is a Code Cleric at CHEF, where he Cures Technical Debt Wounds for 1d8+5 lines of code, casts Protection from Yaks, and otherwise helps continuously improve internal technical process.