Re: creating Hurd chroots on Linux using DPKG_ROOT chrootless mode
Johannes Schauer Marin Rodrigues, le jeu. 05 déc. 2024 11:56:51 +0100, a ecrit:
> Quoting Samuel Thibault (2024-12-05 09:00:35)
> > > So now I can create bootable ext2 hurd-i386 disk images on my arm64 Linux
> > > box.
> >
> > That's cool :) I'll have to see if I can then automate the building of
> > the image that I put on cdimages.
>
> you are creating that image manually right now? How do you do it?
Yes, see http://cdimage.debian.org/cdimage/ports/latest/hurd-i386/debian-hurd.img.txt
> >
> > > mmdebstrap --variant=apt \
> > > --include=passwd,debian-ports-archive-keyring,mmdebstrap,sysvinit-core,sysv-rc,e2fsprogs,libarchive13 \
> >
> > It's odd that you need to ask for libarchive13 explicitly?
>
> Yes. The libarchive support of e2fsprogs is via dlopen(),
Ah, ok.
> > sysvinit because it's not linux)
>
> But mmdebstrap cannot know that you want an init system in the first place
> > > --include=sysvinit-core,sysv-rc,debian-ports-archive-keyring,gnumach-image-1-486
> >
> > Here, also, the kernel should be autodetected?
>
> But mmdebstrap cannot know that the chroot you want to create is supposed to be
> bootable.
Perhaps mmdebstrap could be given options to tell so and behave
accordingly?
> A benefit of genext2fs is, that it produced bit-by-bit reproducible output
> automatically.
mke2fs doesn't?
> > > The only wrinkle is, that the result is not yet bit-by-bit reproducible when
> > > having SOURCE_DATE_EPOCH and a uuid and hash_seed set... I'll investigate that.
> > Thanks.
>
> Found it. It's here:
>
> https://sources.debian.org/src/hurd/1%3A0.9.git20240714-4/debian/local/setup-translators/#L151
>
> [ -r /var/lib/random-seed ] || date > /var/lib/random-seed 2> /dev/null
>
> It writes the current time into /var/lib/random-seed which of course makes the
> output unreproducible. I filed #1089092 with a patch. If you prefer, there's
> also this MR: https://salsa.debian.org/hurd-team/hurd/-/merge_requests/3
Thanks!
> > > I also plan to add this to the dpkg-root-demo salsa CI pipeline to make
> > > sure that this setup keeps working going forward.
> > Yes, that'll be a useful CI.
>
> I'll do that after the thing is bit-by-bit reproducible. :)
OK :)
Samuel
Reply to: