Emerge Cookbook.
This cookbook holds 2 definitions, one called enable_package and one called update_file. Between these two definitions it enables you to ‘unmask’ a package in Chef and then install an ‘masked’ version of said package.
For example if you want to install Libxml 2.7.6 on the AppCloud you would use the following as a recipe.
enable_package “dev-libs/libxml2” do
version "2.7.6"
end
package “dev-libs/libxml2” do
version "2.7.6" action :install
end
enable_package “dev-lang/ruby” do
version "1.8.7_p299"
end
package_use “dev-lang/ruby” do
flags "threads"
end
package “dev-lang/ruby” do
version "1.8.7_p299" action :install
end
Gentoo uses the names ‘mask’ and ‘unmask’ terminology between stable and unstable. This is done in /etc/portage/package.keywords/local and we automate this for you so you don’t have to know about ~x86 or ~amd64.