Re: sbuild on hurd-amd64...

Johannes Schauer Marin Rodrigues <[email protected]> Mon, 01 Jun 2026 10:26:13 +0200
Newsgroups gmane.linux.debian.ports.hurd
Message-ID <178030237388.405590.6050785093255052613@localhost>
--===============6773963539375173266==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

Hi,

this has been a loooong yak shave and it still continues so I wanted to sen=
d a
small summary that work is still going on albeit slowly. Details and some
questions for this list further below.

Quoting Samuel Thibault (2025-11-20 02:04:39)
> Johannes Schauer Marin Rodrigues, le jeu. 20 nov. 2025 01:57:42 +0100, a =
ecrit:
> > How would you normally mount a directory from outside with Hurd as a gu=
est?
>=20
> I usually don't, and just scp or git pull/push what I need
>=20
> > Just via NFS? Does SMB work in Hurd (QEMU also does that by itself)?
>=20
> Ah, yes there is an smbfs implementation too. I don't know its
> maintenance status though.
>=20
> > While I have you: I'm currently using mini-httpd to serve a directory a=
s a
> > local Debian mirror for apt. I saw that mini-httpd does not exist in th=
e Hurd
> > archives. Is there a small-footprint http server which you'd recommend =
to use
> > on Hurd?
>=20
> I don't know.

So ultimately my goal is to have a --mode=3Dfakeroot-hurd option for mmdebs=
trap
which will be the default mode on GNU/Hurd and error out elsewhere. I have
local changes that implement this but I need to add test cases before I mak=
e a
release with that.

To make testcases I somehow need to create a QEMU virtual machine with GNU/=
Hurd
and I figured that the easiest way to do that is to add support for creating
Hurd images to the software which mmdebstrap is already using in its test s=
uite
to create QEMU virtual machines: debvm. I have a POC which allows for debvm=
 to
create bootable Hurd images here:
https://salsa.debian.org/helmutg/debvm/-/merge_requests/39

I have not yet figured out how to auto-login the root user in GNU/Hurd. The
agetty line which works on Linux errors out with "getty[585]: Bad syntax" a=
nd
according to Samuel Thibault it may just be that this feature isn't impleme=
nted
yet in hurd.

I also do not yet know how to set up networking inside the QEMU guest. The
/etc/network/interfaces which works on Linux does not seem to give me any
network inside the Hurd QEMU guest. Can somebody show me a setup which is k=
nown
to work on Hurd in QEMU?

A nice-to-have in this context would be a fix for
https://bugs.debian.org/1132024 which has a MR against init-system-helper b=
ut
seems to be stalled there:
https://salsa.debian.org/debian/init-system-helpers/-/merge_requests/33

More important to make this work is DPKG_ROOT support for openssh-server.
Because we cannot execute Hurd binaries on Linux, the DPKG_ROOT approach is=
 the
only way to populate a Hurd chroot on Linux. Since debvm uses ssh for
connections with the QEMU guest, we need to add DPKG_ROOT support to openssh
which is this MR: https://salsa.debian.org/ssh-team/openssh/-/merge_request=
s/39

That MR is currently stalled because systemd-tmpfiles seems to be a good
solution to make DPKG_ROOT work out-of-the-box but there is no systemd on H=
urd.
Matthias Geiger packaged seedfiles and uploaded it to experimental and the
upstream of seedfiles has been extremely helpful in making seedfiles work on
Hurd. The testsuite of seedfiles now passes on Hurd and I think the package=
 is
ready to be uploaded to unstable.

Other construction sites which are required to make this work are:

 * src:pam https://salsa.debian.org/vorlon/pam/-/merge_requests/33
   https://bugs.debian.org/1137186
 * src:ucf https://salsa.debian.org/debian/ucf/-/merge_requests/5
   https://salsa.debian.org/debian/ucf/-/merge_requests/6
 * src:sudo https://salsa.debian.org/sudo-team/sudo/-/merge_requests/38 (me=
rged but not uploaded yet)
 * src:debhelper https://salsa.debian.org/debian/debhelper/-/merge_requests=
/148 (merged but not uploaded yet)
   https://salsa.debian.org/debian/debhelper/-/merge_requests/149 (merged b=
ut not uploaded yet)

So I think in general we are in a good spot and what is left is to have
maintainers apply all the patches which were submitted. This can take a whi=
le
so if you are in close contact with any of the maintainers of openssh,
init-system-helpers, pam or ucf you could see if maybe you get them to have=
 a
look at the changes and help getting them ready to be merged.

Also helpful would be to get networking to work inside my QEMU VM and to get
auto-login to work.

Thanks!

cheers, josch
--===============6773963539375173266==
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Description: signature
Content-Type: application/pgp-signature; name="signature.asc"; charset="us-ascii"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEElFhU6KL81LF4wVq58sulx4+9g+EFAmodQiAACgkQ8sulx4+9
g+H+pQ//e4eEgkFRuE1kopcsgXEZOvRzF5RrvY2fsgfftjLhQHAoYicBNu78KkrD
k4a8ML+uCd4amz9lGGe2C6fwp4hLNRFSN53hzoaZu6T1GRy7o7G79Q/iVSGimC5K
s1tAPOZzSTcjiUmxYuqAWKBqNirF39b4C1xl6qcQaC1+vX4E1qdVwo9NAFlkkY8f
Dry2609K5t73QoX4eDl7W3aYnlnU5SrBfYhOLxjMUZPNq6GllR2gA5KqR7g4ZALu
gdwoeWjoboPF3tp+v+uOLbIE6jLkaS0dvgynSC9s/8xt06tSllZpWhMbKfv6G2hM
HEYq6UAW19HWMnc2QDCtDyJJ99Dffg/5yzIRpOQMBFqWb9qT7ZO4azOnnLWvct+9
96k21aeUU7tibEspC8/Jlz9OeBxecaFpopsEaTygwbsazgqcUO3mF4Efm30Q04Uy
H9XeOI+/tLvyf0OasdwaNKV6f2/PT4+LYNnFsT9I9ajFYNIoGpbMvFDzv99fm18B
l5+qAik7RmZXgud/25PMGTcc4myouiTI08MpuJCbZSxSvr1X4788MBPVyPACbOQ6
fUxJ2+Lf1uAsCCKaITPkleedJIPAAZxgCc19jWU/gNBI1z/ztiW/gfXfIrY7J+j3
iWdBetHDLnpW0qa0T1rnLxyVZW+2wOwIVrakHacckt4rI6uBxUg=
=ESr7
-----END PGP SIGNATURE-----

--===============6773963539375173266==--