wiki/gofurther/evdev.md

48 lines
1.4 KiB
Markdown
Raw Normal View History

2022-08-13 00:26:05 +00:00
---
title: Share an input device with a guest using evdev
description:
published: true
2023-05-13 15:14:07 +00:00
date: 2023-05-13T15:14:05.325Z
2022-08-13 00:26:05 +00:00
tags:
editor: markdown
dateCreated: 2022-08-13T00:26:02.801Z
---
2022-08-25 10:40:46 +00:00
# Share an input device
2022-08-13 00:26:05 +00:00
2023-05-13 15:04:04 +00:00
In this section, we focus on sharing a locally attached input device with a guest virtual machine.
2023-02-08 19:09:04 +00:00
2022-08-25 10:40:46 +00:00
## Event device
2023-05-13 15:14:07 +00:00
Libvirt offers a low-latency way to share an input device with a local virtual machine, using the [Linux evdev event interface](https://www.kernel.org/doc/html/latest/input/input.html?highlight=evdev#evdev).
2022-08-25 10:40:46 +00:00
2022-08-25 20:26:04 +00:00
The following is an XML snippet example for sharing a mouse and a keyboard.
2022-08-13 00:26:05 +00:00
```
<input type='evdev'>
<source dev='/dev/input/by-path/platform-i8042-serio-1-event-mouse/'>
</input>
<input type='evdev'>
<source dev='/dev/input/by-path/platform-i8042-serio-0-event-kbd' grab='all' repeat='on'/>
</input>
2022-08-25 10:40:46 +00:00
```
Replace the `platform-i8042-serio-1-event-mouse` value with the value under `/dev/input/by-path/*` or `/dev/input/by-id/*`
2022-08-25 20:26:04 +00:00
If there are multiple possible options, the input device has to have `event` in the name.
2022-08-25 10:40:46 +00:00
2022-08-25 20:26:04 +00:00
```
2023-02-08 18:58:01 +00:00
# cat /dev/input/by-path/pci-0000:09:00.0-event-mouse
2022-08-25 20:26:04 +00:00
```
2022-08-25 10:40:46 +00:00
2022-08-25 20:26:04 +00:00
```
<EFBFBD><EFBFBD>c $
2023-02-08 18:58:01 +00:00
<EFBFBD><EFBFBD>c<EFBFBD><EFBFBD><EFBFBD>c<EFBFBD><EFBFBD><EFBFBD>c<EFBFBD>$<24><>c<EFBFBD>$<24><><63><D78F><63><D78F>c
2022-08-25 20:26:04 +00:00
```
2023-02-08 19:09:53 +00:00
## Virtio-input
> Input grabbing on Wayland doesn't currently work as expected using Spice or VNC. Destkop environments based on the X session manager may work better.
{.is-warning}