Fix integration test for vuinput.

This commit is contained in:
Johannes Leupolz 2025-12-14 21:44:10 +00:00
parent e4335df8e6
commit 0e6abf1d85
2 changed files with 13 additions and 1 deletions

View file

@ -235,6 +235,15 @@ Sample output from `journalctl` showing vuinputd output:
| Device appears on host seat | udev rules not isolating | Add udev rules from vuinputd/udev-folder |
| Input delayed or missing | CUSE layer error | Check host logs via `journalctl -u vuinputd` |
```
Dez 14 21:33:17 wohnzimmer vuinputd[2172719]: Create /dev/input
Dez 14 21:33:17 wohnzimmer vuinputd[2172719]: [2025-12-14T21:33:17Z DEBUG vuinputd::jobs::inject_in_container_job] Error creating input device /dev/input/event12: Read-o>
Dez 14 21:33:17 wohnzimmer vuinputd[2172719]: thread '<unnamed>' panicked at vuinputd/src/jobs/inject_in_container_job.rs:161:41:
Dez 14 21:33:17 wohnzimmer vuinputd[2172719]: called `Result::unwrap()` on an `Err` value: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
```
Ensure /dev and /run are writable in the container. If in doubt, use tmpfs.
---
## 8. Notes and Advanced Topics

View file

@ -95,7 +95,6 @@ fn test_keyboard_in_container_with_uinput() {
}
#[cfg(all(feature = "requires-root", feature = "requires-uinput", feature = "requires-bwrap"))]
#[ignore]
#[test]
fn test_keyboard_in_container_with_vuinput() {
println!("Note that vuinputd needs to run for this test");
@ -105,6 +104,10 @@ fn test_keyboard_in_container_with_vuinput() {
.unshare_net()
.ro_bind("/", "/")
.tmpfs("/tmp")
// dev needs to be writable for the new devices
.tmpfs("/dev")
// run needs to be writable for the udev devices
.tmpfs("/run")
.dev_bind("/dev/vuinput", "/dev/uinput")
.die_with_parent()
.command(keyboard_in_container,&[])