Subject: [bug#70909] [PATCH] guix: Add "virtiofs" to the list of pseudo file system types.

From: Massimo Zaniboni <[email-masked]>
Date: Mon, 13 May 2024 11:19:44 +0200

Hi,

1) I have a system inside a qemu VM, sharing a directory with the host, 
using `virtiofs`. This is the configuration.

```
  (file-systems (cons*
                   (file-system
                         (device "/dev/sda2")
                         (mount-point "/")
                         (type "ext4"))
                   (file-system
                         (device "guix-cloned-channel")
                         (type "virtiofs")
                         (mount-point 
"/home/mzan/lavoro/dokmelody/guix-cloned-channel/"))
                   (file-system
                         (device "shared-tmp")
                         (type "virtiofs")
                         (mount-point "/home/mzan/shared-tmp/"))
                   %base-file-systems))
```

I can mount manually it using

```
sudo mount -t virtiofs guix-cloned-channel 
/home/mzan/lavoro/dokmelody/guix-cloned-channel/
```

but Guix gives this error

```
sudo guix system reconfigure 
lavoro/admin/guix/guix-dev/guix-dev-container.scm
Password:
/home/mzan/lavoro/admin/guix/guix-dev/guix-dev-container.scm:48:18: 
error: device 'guix-cloned-channel' not found: No such file or directory
hint: If 'guix-cloned-channel' is a file system label, write 
`(file-system-label "guix-cloned-channel")' in
your `device' field.
```

The `guix-cloned-channel` is not a device, but a TAG managed by 
virtiofs. https://libvirt.org/kbase/virtiofs.html

So I added it to the list of pseudo file system types.

2) I were not able to test this (simple) patch, because I'm using Guix 
hosted on an OpenSUSE OS. If it is mandatory testing it, let me know, 
that I will install an host with GuixSD.

Many thanks for the great work!
Massimo