ilbers / isar

Integration System for Automated Root filesystem generation
Other
177 stars 72 forks source link

dpkg-base: deb_clean() can break buildchroot #64

Closed adriaan42 closed 3 years ago

adriaan42 commented 3 years ago

do_deploy_deb() of dpkg-base.bbclass calls deb_clean(), which removes old *.deb packages from the isar-apt repository and (since 033f302e085d55f51d6260da79a57717f7600d8a) also from the buildchroot, before deploying the newly built package.

This mechanism can break the buildchroot by removing essential packages.

In my concrete case, I'm rebuilding the debhelper package. When cleaning this from the buildchroot, the package equivs is also removed. Now any subsequent recipe will fail to install its build dependencies with mk-build-deps, as this tries to call equivs-build.

jan-kiszka commented 3 years ago

See https://groups.google.com/d/msgid/isar-users/76603767-1d25-c347-f7b1-84d4c106e771%40siemens.com and, e.g., https://github.com/siemens/meta-iot2050/commit/6bad05a48079fcb4beb7ada6eb4b33c32bce4920#diff-876c5e9687c03721f19fd5e0ca742a2b27b1de222bc3452b43c6ae8829f01556R19.

adriaan42 commented 3 years ago

Perfect! Just what I was looking for! Closing, and hoping for a merge in the near future...

ismagulb commented 3 years ago

Thanks for the confirmation, the patch is in the pipeline.

amikan commented 3 years ago

The fix integrated to next: https://github.com/ilbers/isar/commit/a02d104188b2c8dc62189656bba50e7ccebbf636