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
* Helmut Grohne <helmut@subdivi.de> [250711 23:09]: I'm wondering if this is really worth doing. Did you have to tell sbuild about the pbuilder tarball? If so, then the easier option would be to let sbuild create the tarball, and not point it to the pbuilder tarball. By default it will also recreate the tarball after one week. Chris
* Helmut Grohne <helmut@subdivi.de> [250711 23:09]: OTOH, this is basically "free" :-) Chris (cannot reply to my own message yet)
Hi Chris, We tried symlinking the pbuilder tarball into ~/.cache/sbuild, so yes. Yeah. That's what we ended up doing. Helmut
Helmut Grohne, le ven. 11 juil. 2025 23:30:37 +0200, a ecrit: But I really like maintaining the state of my tarballs with pbuilder, so I'd really like sbuild to be able to use them. Samuel