Yes, that's what I understood, but for some reason the appliance stayed on v241 no matter what I did so I started questioning the foundations :-).
I guess it was just cached somewhere since when I rebuilt the docker from scratch it worked.

One more thing, I had to:

echo "/lib/systemd/libsystemd-shared-248.so" >> appliance/hostfiles.in

Since this file name is obviously version dependent, but now it seems that it's using systemd/udev v248 properly.

Now I'm stress testing with it trying to see if I get a reproduction (hopefully not).

I wonder if this bug is linux wide, at least in terms of libguestfs, and was it just not reported so far.
I could try using the appliances from libguestfs.org to see if I get a reproduction with them as well.

Something tells me this isn't just debian specific.

Sam

On Thu, Apr 8, 2021 at 4:43 PM Richard W.M. Jones <rjones@redhat.com> wrote:
On Thu, Apr 08, 2021 at 04:40:32PM +0300, Sam Eiderman wrote:
> However, during libguestfs buildingĀ I still see this line:
>
> Get:37 http://deb.debian.org/debian buster/main amd64 systemd amd64
> 241-7~deb10u7 [3499 kB]
>
> So it seems that it downloads the systemd package directly from debian and not
> using the one installed on the host docker.

But it only downloads that to examine the configuration files.
Suggest having a look at how supermin works, it's quite neat!

https://libguestfs.org/supermin.1.html#SUPERMIN-APPLIANCES

Rich.

--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html