Hi Samuel, Quoting Samuel Thibault (2024-08-24 20:02:16) > Samuel Thibault, le sam. 24 août 2024 19:25:54 +0200, a ecrit: > > Johannes Schauer Marin Rodrigues, le sam. 24 août 2024 18:29:52 +0200, a > > ecrit: > > > Quoting Samuel Thibault (2024-07-19 01:35:45) > > > > Putting a more eye-catching title :) > > > > > > Thank you, Samuel! > > > > > > I am still unable to see extended attributes in the translators when > > > checking > > > this call on Linux: > > > > > > sudo getfattr --dump --match=- /mnt/hurd/* > > > > > > Do others observe the same? > > > > Indeed. Apparently the translators don't get updated on upgrade, so > > you'd have to force it: > > > > /usr/lib/hurd/setup-translators -k > > As discussed on irc: one needs to reboot with an upgraded hurd package > before using setup-translators to update the entries. > > And on Linux, one needs to use the ext4fs module, not ext2fs (which doesn't > know about gnu.translators).
thank you, I tried everything from scratch and implemented both your suggestions. To be precise I did the following: - downloaded the following: https://cdimage.debian.org/cdimage/ports/stable/hurd-i386/debian-hurd-20230608.img https://cdimage.debian.org/cdimage/ports/stable/hurd-i386/gnumach.gz https://cdimage.debian.org/cdimage/ports/stable/hurd-i386/exec.static https://cdimage.debian.org/cdimage/ports/stable/hurd-i386/ext2fs.static - booted like this: qemu-system-i386 -nographic -net user,hostfwd=tcp:127.0.0.1:2222-:22 -net nic,model=e1000 -m 1G -kernel gnumach-1.8-486-up -append 'root=device:hd0s2 console=com0' --initrd './ext2fs.static --multiboot-command-line=${kernel-command-line} --host-priv-port=${host-port} --device-master-port=${device-port} --exec-server-task=${exec-task} -T typed ${root} $(task-create) $(task-resume),./exec.static $(exec-task=task-create)' -drive file=debian-hurd-20230608.img,format=raw - replaced /etc/apt/sources.list with an entry for deb http://ftp.ports.debian.org/debian-ports/ unstable main - ran apt upgrade && apt dist-upgrade && apt autoremove - shut down the machine - mounted the image and copied out /boot/gnumach-1.8-486-up.gz, /hurd/exec.static /hurd/ext2fs.static - gunzipped /boot/gnumach-1.8-486-up.gz - started qemu again like this (now with new kernel): qemu-system-i386 -nographic -net user,hostfwd=tcp:127.0.0.1:2222-:22 -net nic,model=e1000 -m 1G -kernel gnumach-1.8-486-up -append 'root=device:hd0s2 console=com0' --initrd './ext2fs.static --multiboot-command-line=${kernel-command-line} --host-priv-port=${host-port} --device-master-port=${device-port} --exec-server-task=${exec-task} -T typed ${root} $(task-create) $(task-resume),./exec.static $(exec-task=task-create)' -drive file=debian-hurd-20230608.img,format=raw - ran /usr/lib/hurd/setup-translators -k - shut down the machine - mounted the image again (with -t ext4) - ran this: sudo getfattr --dump --match=- /mnt/hurd/* And the last command comes back empty. To make sure, that setup-translators is not somehow buggy, I created a translator manually inside the vm: $ touch hello $ settrans hello /hurd/hello $ cat hello Hello, world! And then on the outside: $ sudo kpartx -av debian-hurd-20230608.img $ sudo mount -t ext4 /dev/mapper/loop0p2 /mnt $ sudo getfattr --dump --match=- /mnt/root/hello getfattr: Removing leading '/' from absolute path names # file: mnt/root/hello gnu.translator="/hurd/hello" So... maybe this actually works but the contents of /hurd are not updated sufficiently by running "/usr/lib/hurd/setup-translators -k"? Btw, mounting without '-t ext4' also allows seeing the xattr with getfattr on my bookworm system. In mount, it shows as /dev/mapper/loop0p2 on /mnt type ext2 (rw,relatime) So maybe forcing ext4 is not needed in practice? Thanks! cheers, josch
signature.asc
Description: signature