Control: retitle -1 fakeroot 1.25.1-1 breaks fakechroot
Control: affects -1 fakechroot mmdebstrap
Control: tags -1 + patch

On Sun, 27 Sep 2020 10:30:54 +0200 Johannes 'josch' Schauer <jo...@debian.org> 
wrote:
> your recent upload of fakeroot broke my package mmdebstrap in a way that
> I do not yet understand. See for example this CI test which uses
> fakeroot via fakechroot:
> 
> https://ci.debian.net/data/autopkgtest/testing/amd64/m/mmdebstrap/7190912/log.gz
> 
> I get an even different error when running mmdebstrap locally with the
> new fakeroot version on my system:
> 
>     $ mmdebstrap --variant=apt --mode=fakechroot unstable /dev/null
>     fakechroot: nested operation is not supported
>     E: need working fakechroot binary
> 
> If I downgrade fakeroot like this:
> 
>     $ sudo apt install fakeroot=1.24-1 libfakeroot=1.24-1
> 
> then everything works fine again.
> 
> Maybe you can shed some light on the situation about what might've
> changed between 1.24-1 and 1.25.1-1 that leads to these problems?

I bisected the upstream commits and figured out that the problem was introduced
by commit 9b26ceaaba9796bc9e18f375be91da16a4aae04d. Upon closer inspection, I
noticed, that one renaming from LIB to FAKEROOT_LIB was omitted. The problem is
fixed by this patch:

    --- a/scripts/fakeroot.in
    +++ b/scripts/fakeroot.in
    @@ -162,7 +162,7 @@ if test -n "$@LDLIBPATHVAR@"; then
     fi
     # ...and preloaded libs
     if test -n "$@LDPRELOADVAR@"; then
    -  LIB="$FAKEROOT_LIB:$@LDPRELOADVAR@"
    +  FAKEROOT_LIB="$FAKEROOT_LIB:$@LDPRELOADVAR@"
     fi
    
     export FAKEROOT_FD_BASE

Without this patch, the value of LD_PRELOAD will be ignored. This in turn
breaks other tools that rely on LD_PRELOAD like fakechroot. Without this patch:

    $ fakechroot fakeroot sh -c 'echo $LD_PRELOAD'
    libfakeroot-sysv.so

With this patch:

    $ fakechroot fakeroot sh -c 'echo $LD_PRELOAD'
    libfakeroot-sysv.so:libfakechroot.so

Thanks!

cheers, josch

Attachment: signature.asc
Description: signature

Reply via email to