diff mbox series

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

Message ID 17e6d840dfff496cc2b3981b6f66d49f85c2ec06.1715552601.git.mzan@dokmelody.org
State New
Headers show
Series [bug#70909] guix: Add "virtiofs" to the list of pseudo file system types. | expand

Commit Message

Massimo Zaniboni May 12, 2024, 10:23 p.m. UTC
* gnu/system/file-systems.scm (%pseudo-file-system-types): Add "virtiofs"
    to the list of pseudo file system types.

Change-Id: Ib1d99127e65f6543c592faec1c54bd0c5eae3ad7
---
 gnu/system/file-systems.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


base-commit: 56980ea500a1db3c8586972b8abfaf5c4e24f82d
prerequisite-patch-id: 2594060f4840db34ac1620037cae257564e478a6
prerequisite-patch-id: 96b0d5eb0ddea5e15ee008767974e5e3e5c827ec
prerequisite-patch-id: 78233f86ba274a41c4a499fc4c8d21822a7beaa7
prerequisite-patch-id: 2ef841fb5c8add626eba42baf9ae5111cec094a1
prerequisite-patch-id: 6fa253cdf33e0cff14e1d8cd877e1597e90467a6
prerequisite-patch-id: 67f4d0f8005a1c2935a2919c94f37a3fe22f0792
prerequisite-patch-id: cedcbd82ee4036ae6daee4945d4049b2cefc7de0
prerequisite-patch-id: 50337a8e2c178e055e77e7631eea549915f24d92
prerequisite-patch-id: ebe20aaa902dd2b3d1fbae2584281d6cabf5001e
prerequisite-patch-id: 60f07cf3a71da05faeebf3737b570267430b9f78
prerequisite-patch-id: 050cc008096475efce19aaf2ec3b38045d27fcde
prerequisite-patch-id: e71a0f696cce4e74764f72937bf91dbcf8bb40db
prerequisite-patch-id: 5c8721e7771985f52a2291a87a88e080d0a8323b
prerequisite-patch-id: 57de09263d128280db18a14f840464d0a7433707

Comments

Massimo Zaniboni May 13, 2024, 9:19 a.m. UTC | #1
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
Ludovic Courtès May 13, 2024, 12:51 p.m. UTC | #2
Hi,

Massimo Zaniboni <mzan@dokmelody.org> skribis:

>     * gnu/system/file-systems.scm (%pseudo-file-system-types): Add "virtiofs"
>     to the list of pseudo file system types.
>
> Change-Id: Ib1d99127e65f6543c592faec1c54bd0c5eae3ad7

Slightly tweaked the commit log and applied it.  Thanks!

Ludo’.
diff mbox series

Patch

diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm
index af0567bd3e..c791b24a9f 100644
--- a/gnu/system/file-systems.scm
+++ b/gnu/system/file-systems.scm
@@ -369,7 +369,7 @@  (define %pseudo-file-system-types
   ;; List of know pseudo file system types.  This is used when validating file
   ;; system definitions.
   '("binfmt_misc" "cgroup" "cgroup2" "debugfs" "devpts" "devtmpfs" "efivarfs" "fusectl"
-    "hugetlbfs" "overlay" "proc" "securityfs" "sysfs" "tmpfs" "tracefs" "xenfs"))
+    "hugetlbfs" "overlay" "proc" "securityfs" "sysfs" "tmpfs" "tracefs" "virtiofs" "xenfs"))
 
 (define %fuse-control-file-system
   ;; Control file system for Linux' file systems in user-space (FUSE).