2022-08-13 00:26:05 +00:00
|
|
|
|
---
|
|
|
|
|
title: Share an input device with a guest using evdev
|
|
|
|
|
description:
|
|
|
|
|
published: true
|
2022-08-25 20:26:04 +00:00
|
|
|
|
date: 2022-08-25T20:26:02.610Z
|
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
|
|
|
|
|
2022-08-25 10:40:46 +00:00
|
|
|
|
> *Input grabbing on Wayland doesn't currently work as expected. Destkop environments based on the X session manager may work better in this regard*
|
|
|
|
|
{.is-warning}
|
|
|
|
|
|
|
|
|
|
There are multiple ways to share an input device with a virtual machine.
|
|
|
|
|
|
|
|
|
|
## Event device
|
|
|
|
|
|
|
|
|
|
Event device or simply `evdev` is a generic input event interface that is part of the Linux kernel.
|
|
|
|
|
|
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
|
|
|
|
```
|
|
|
|
|
sudo cat /dev/input/by-path/pci-0000:09:00.0-event-mouse
|
|
|
|
|
```
|
2022-08-25 10:40:46 +00:00
|
|
|
|
|
2022-08-25 20:26:04 +00:00
|
|
|
|
```
|
|
|
|
|
<EFBFBD><EFBFBD>c $
|
|
|
|
|
<EFBFBD><EFBFBD>c<EFBFBD><EFBFBD><EFBFBD>c<EFBFBD><EFBFBD><EFBFBD>c<EFBFBD>$<24><>c<EFBFBD>$<24><>c<63><D78F>c<63><D78F>c
|
|
|
|
|
<EFBFBD><EFBFBD>c 3
|
|
|
|
|
<EFBFBD><EFBFBD>c<EFBFBD><EFBFBD><EFBFBD><EFBFBD>c<EFBFBD><EFBFBD><EFBFBD><EFBFBD>cd<EFBFBD><EFBFBD><EFBFBD>cd<EFBFBD><EFBFBD><EFBFBD>c<EFBFBD>2<EFBFBD><EFBFBD>c<EFBFBD>2<EFBFBD><EFBFBD>cz<EFBFBD><EFBFBD>cz<EFBFBD><EFBFBD>c<EFBFBD>Q<EFBFBD><EFBFBD>c<EFBFBD>Q<EFBFBD><EFBFBD>c<EFBFBD><EFBFBD><EFBFBD><EFBFBD>c<EFBFBD><EFBFBD><EFBFBD><EFBFBD>c<EFBFBD><EFBFBD><EFBFBD><EFBFBD>c<EFBFBD><EFBFBD><EFBFBD><EFBFBD>cda
|
|
|
|
|
<20><>cda
|
|
|
|
|
```
|