Hi Ben, first, thanks for your review. > On Fri, 2020-10-30 at 17:56 +0100, Petr Vorel wrote: > > This fixes make bindeb-pkg for RPM based distros, which don't have > > dpkg-dev (and thus not /usr/bin/dpkg-buildpackage), which sets > > $DEB_RULES_REQUIRES_ROOT. > > Fixes: 3e8541803624 ("builddeb: Enable rootless builds") > This doesn't seem to fix a bug, and in fact it would introduce one. > > Signed-off-by: Petr Vorel <petr.vorel@xxxxxxxxx> > [...] > > --- a/scripts/package/builddeb > > +++ b/scripts/package/builddeb > > @@ -37,7 +37,7 @@ create_package() { > > | xargs -r0 md5sum > DEBIAN/md5sums" > > # Fix ownership and permissions > > - if [ "$DEB_RULES_REQUIRES_ROOT" = "no" ]; then > > + if [ -z "$DEB_RULES_REQUIRES_ROOT" -o "$DEB_RULES_REQUIRES_ROOT" = "no" ]; then > > dpkg_deb_opts="--root-owner-group" > > else > > chown -R root:root "$pdir" > This is the wrong default behaviour; it will cause a regression with > older versions of dpkg that don't support this option. Sorry for wrong report. I tested it on Debian, but only on unstable. > If you invoke this script directly and do not use dpkg-buildpackage > (which I don't think is really supported anyway) then you must either > do so as root or use fakeroot (as dpkg-buildpackage does by default). Well, both bindeb-pkg and deb-pkg use dpkg-buildpackage. Thus fakeroot is used by default. /bin/sh -c dpkg-buildpackage -r"fakeroot -u" -a$(cat debian/arch) -d -b -nc -uc The root cause is that while calling chown -R root:root "$pdir" is ok on Debian, it's refused for fakeroot in openSUSE. I can run it with DEB_RULES_REQUIRES_ROOT=no, that should fix that, but I'd prefer it were working by default (although I admit not many people need it). I reported it because the default setup worked before 3e8541803624. I'll have a look what configuration (permission) is missing on openSUSE to allow chown -R root:root for non-root user. > Ben. Kind regards, Petr