Archive for March, 2014

Install puppet on ARM devices (Raspberry Pi)

March 11th, 2014 Comments off

If you try to install a recent puppet version on an ARM device like the Raspberry Pi you will see this error:

# apt-get install puppet
Reading package lists… Done
Building dependency tree
Reading state information… Done
You might want to run ‘apt-get -f install’ to correct these:
The following packages have unmet dependencies:
facter : Depends: dmidecode but it is not installable
puppet : Depends: puppet-common (= 3.4.3-1puppetlabs1) but it is not going to be installed
E: Unmet dependencies. Try ‘apt-get -f install’ with no packages (or specify a solution).

A quick google search reveals that this is a known bug. In fact it could easily be solved by removing the dmicode dependency from the facter package for the ARM architecture.

I didn’t want to rebuild the facter package to remove the dependency. Instead I’ve built a simple dmidecode dummy package to provide the required dependency. This makes it easy to install puppet on ARM devices running Debian Wheezy:

# setup puppetlabs repo
dpkg -i puppetlabs-release-wheezy.deb

# install dumy package
dpkg -i dmidecode_0.01_armhf.deb

# install puppet
apt-get update
apt-get install puppet

Of course, I’d prefer a new facter package. I’m pretty sure puppetlabs will provide a new package in the future, but until then, this workaround will just work and does no harm.