digraph stack
{
compound=true;
rankdir="LR";
node [
shape="box";
]
subgraph cluster_2 {
label="Kernel";
event0 [label="/dev/input/event0"]
event1 [label="/dev/input/event1"]
}
subgraph cluster_0 {
label="Compositor process";
libinput;
}
client [label="Wayland client"];
event0 -> libinput;
event1 -> libinput;
libinput -> client [ltail=cluster_0 label="Wayland protocol"];
}