The Raspberry Pi has now arrived at its third generation. Yet I’m still running an old Pi model B+ (single core, 512 MB of ram) as my owncloud server, and it works just fine! The Pi is running Raspbian wheezy, which (being Debian) will be supported until 31st May 2018, so I don’t really have urgency to upgrade it. The only annoyance is that I’m using a self-signed SSL certificate. Now that Let’s Encrypt is a thing, I’ve been trying to get a proper certificate, but turns out that my Raspbian is too old for that.

The (officially recommended) certbot-auto script fails when attempting to install libaugeas0 and augeas-lenses from wheezy-backports, a Debian repository that was never officially ported to Raspbian. So the script will attempt to download these ARMv7-compiled packages from debian, while the Pi B+ model has an ARMv6 cpu.

Solution: rebuild those packages

The certbot-auto script should have created the /etc/apt/sources.list.d/wheezy-backports.list file with the following content:

deb-src http://ftp.debian.org/debian/ wheezy-backports main

You cannot apt-get install packages from this repo, but you can download their sources and rebuild them on the Pi itself!

This is as simple as running the following commands (credits to this gist):

First of all, install the build-dependencies. This will pull a lots of packages (including latex stuff), but fortunately they all come from the Raspbian repos:

$ sudo apt-get build-dep libaugeas0

Then get the required source code from the wheezy-backport repo:

$ apt-get source libaugeas0

Now you can start the build. This will take a while…

$ cd augeas-1.2.0
$ dpkg-buildpackage
$ cd ..

At this point you should have the following packages:

  • augeas-dbg_1.2.0-0.2+deb8u1~bpo70+1_armhf.deb
  • augeas-doc_1.2.0-0.2+deb8u1~bpo70+1_all.deb
  • augeas-lenses_1.2.0-0.2+deb8u1~bpo70+1_all.deb
  • augeas-tools_1.2.0-0.2+deb8u1~bpo70+1_armhf.deb
  • libaugeas0_1.2.0-0.2+deb8u1~bpo70+1_armhf.deb
  • libaugeas-dev_1.2.0-0.2+deb8u1~bpo70+1_armhf.deb

Now just install all of them (even though technically you only need two):

$ sudo dpkg -i *.deb

Now run certbot-auto --os-packages-only. If everything went as expected, you should see this message:

OS packages installed.

This means that you are ready to use certbot-auto to get or renew your SSL certificates!