What the Transpacker should do if building package A requires package B to be installed?
I have some options, and all are bad, more or less:
To install everything to the real system.
Buggy packages may break the build system. A1 and A2 may depend on different versions of B. ** A1 and A2 may depend on conflicting B1 and B2.
To install everything to a virtualenv.
Suitable only for Python and Ruby. Security issues. ** Given a sowtware works fine in virtualenv, will it work being installed as deb-package?
To clone a clean VM on every build, install there anything without fear.
** Too expensive.
To have a pool of lightweight VMs (chroot, lxc, openvz) with easy rollbacking (unionfs).
More lightweight => less secure. More security => less performance.