Skip to content
A Chef cookbook for apt
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Configures various APT components on Debian-like systems. Also includes a LWRP.



The default recipe runs apt-get update during the Compile Phase of the Chef run to ensure that the system's package cache is updated with the latest. It is recommended that this recipe appear first in a node's run list (directly or through a role) to ensure that when installing packages, Chef will be able to download the latest version available on the remote APT repository.

This recipe also sets up a local cache directory for preseeding packages.


Installs the apt-cacher package and service so the system can be an APT cache.


Installs the apt-proxy package and service so the system can be an APT proxy.


This cookbook contains an LWRP, apt_repository, which provides the add and remove actions for managing additional software repositories with entries in the /etc/apt/sources.list.d/ directory.

  • add takes a number of attributes and creates a repository file and builds the repository listing.
  • remove deletes the /etc/apt/sources.list.d/#{new_resource.repo_name}-sources.list file identified by the repo_name passed as the resource name.


Put recipe[apt] first in the run list. If you have other recipes that you want to use to configure how apt behaves, like new sources, notify the execute resource to run, e.g.:

template "/etc/apt/sources.list.d/my_apt_sources.list" do
  notifies :run, resources(:execute => "apt-get update"), :immediately

The above will run during execution phase since it is a normal template resource, and should appear before other package resources that need the sources in the template.

An example of The LWRP apt_repository add action:

apt_repository "zenoss" do
  uri ""
  distribution "main"
  components ["stable"]
  action :add

and the remove action:

apt_repository "zenoss" do
  action :remove

License and Author

Author:: Joshua Timberman ( Author:: Matt Ray (

Copyright 2009, 2010 Opscode, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Something went wrong with that request. Please try again.