Package: sbuild
Version: 0.89.3
Severity: minor
X-Debbugs-Cc: sthiba...@debian.org

Hi,

I helped Samuel set up sbuild with unshare and it didn't just work for 
him. He got "Permission denied" on executing dpkg. The notable aspect 
here is that dpkg --print-architecture is the first command not being 
run as root by sbuild. We eventually noticed the crucial difference: He 
was reusing a tarball from pbuilder and that tarball lacks an entry for 
/. I suspect that sbuild creates the root directory for the container 
with the default umask and never chmods it to 0755. When he created a 
new tarball with / included, it just worked. Would it be reasonable for 
sbuild's container runtime to also cover this case?

Maybe, we could change
https://sources.debian.org/src/sbuild/0.89.3/lib/Sbuild/ChrootUnshare.pm/#L448
to use

    install -d -m 755 -o 1 -g 1 $rootdir

to set up the correct permission in case the tar does not? The advantage 
being here would be an easier transition path for pbuilder users.

Thanks for considering

Helmut

Reply via email to