Um die uneingeschränkte Reproduzierbarkeit eines in e2 factory erstellten Software-Systems sicher stellen zu können, reicht es nicht, die Software-Pakete in einem Repository abzulegen. Ebenso muss zusammen mit den Sourcen das "Bau-Rezept" archiviert werden. Es beinhaltet den genauen Zusammenstellungs-Prozess mit Patches, Konfigurationsschaltern und Abhängigkeiten zu weiteren Paketen. Außerdem wird die Bauumgebung mit abgelegt, insbesondere um die Host-Unabhängigkeit zu gewährleisten.
Technisch gesehen ist diese Bauumgebung ein Chroot Container, der sämtliche benötigten Tools wie etwa Compiler und make beinhaltet. Im Erstellungsprozess werden in der Bauumgebung die Sourcen nach ihrem jeweiligen Rezept bearbeitet. Es entstehen Teilpakete, die ihrerseits als Input für weitere Bauprozesse verwendet werden können (z.B. Headerfiles oder Libraries). Um Wechselwirkungen zwischen den Erstellungsprozessen verschiedener Pakete auszuschließen, wird für jeden Prozess ein neuer Chroot-Käfig verwendet.