How can I make pbuilder use my apt-cacher-ng instance?

I have a apt-cacher-ng server on my LAN network, and I was wondering how I could "force" pbuilder to use it (to speed up package builds).

Typical setup client-side of the cache goes something like this:

In /etc/apt/apt.conf:

Acquire::http { Proxy "http://servername:3142"; };


Solution 1:

Like this:

$ sudo pbuilder --login --save-after-login
# echo 'Acquire::http { Proxy "http://servername:3142"; };' > /etc/apt/apt.conf.d/02proxy
# exit
$

Alternatively, you could use the --execute option:

$ sudo pbuilder --execute --save-after-exec -- /tmp/setup-apt-proxy.sh

... where /tmp/setup-apt-proxy.sh contains commands to create /etc/apt/apt.conf.d/02proxy.

Solution 2:

If you set export http_proxy=http://your-proxy:8080/ in ~/.pbuilderrc it will use that proxy for the package downloads.

I just tried it on my setup, and it worked. As best I could tell from the internet traffic, I didn't have to download anything while running pbuilder create.

The nice thing is that this way also works when you are creating the tarball, not just after you create it and then modify it.