On Tue, 24 Sep 2019 10:03:36 -0700 Vagrant Cascadian <[email protected]> wrote:
On 2019-08-10, Johannes Schauer wrote:
> Quoting Johannes Schauer (2019-08-10 07:16:53)
>> Quoting Daniel Schepler (2019-08-10 04:45:05)
>> > I notice that on my source packages which declare
>> > "Rules-Requires-Root: no" I still see sbuild installing fakeroot in
>> > the chroot which shouldn't be necessary.
>> >> please be more specific. When does sbuild install fakeroot for you?
>
> ah I see it now. This could indeed be fixed. Thanks!

I can somewhat emulate support for "Rules-Requires-Root: no" by setting
in ~/.sbuildrc:

  $core_depends = [ 'build-essential:native' ];
  $build_environment = { 'RULES_REQUIRES_ROOT' => 'no', };

Which results in fakeroot not being called, though it still ends up
calling dpkg with arguments to use fakeroot:

  $ grep fakeroot ../u-boot_2019.10~rc4+dfsg-2~20190924~1_amd64.build
  Command: dpkg-buildpackage -us -uc -G -rfakeroot

But since fakeroot wasn't installed, I guess dpkg-buildpackage silently
ignored that option... or never tried to call fakeroot, since the
variables or other settings were set for Rules-Requires-Root?


Of course, it would be very nice if sbuild could just read the
Rules-Requires-Root setting an behave appropriately. :)


live well,
  vagrant

Related, I get:

Can't exec "fakeroot": No such file or directory at /usr/bin/sbuild line 262.

When running `sbuild` in an unpacked source tree (my host system does not have fakeroot installed). The unpacked source tree is for a package with `Rules-Requires-Root: no` and accordingly, `fakeroot` should be unnecessary.

Here `sbuild` could use `dpkg-buildpackage -Tclean` to avoid this problem (which also would work better with the new `Build-Driver` interface)

Best regards,
Niels

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to