chiark / gitweb /
logind: apply selinux label to XDG_RUNTIME_DIR
[elogind.git] / src / login / 71-seat.rules.in
1 #  This file is part of systemd.
2 #
3 #  systemd is free software; you can redistribute it and/or modify it
4 #  under the terms of the GNU Lesser General Public License as published by
5 #  the Free Software Foundation; either version 2.1 of the License, or
6 #  (at your option) any later version.
7
8 ACTION=="remove", GOTO="seat_end"
9
10 TAG=="uaccess", SUBSYSTEM!="sound", TAG+="seat"
11 SUBSYSTEM=="sound", KERNEL=="card*", TAG+="seat"
12 SUBSYSTEM=="input", KERNEL=="input*", TAG+="seat"
13 SUBSYSTEM=="graphics", KERNEL=="fb[0-9]*", TAG+="seat", TAG+="master-of-seat"
14 SUBSYSTEM=="drm", KERNEL=="card[0-9]*", TAG+="seat", TAG+="master-of-seat"
15 SUBSYSTEM=="usb", ATTR{bDeviceClass}=="09", TAG+="seat"
16
17 # 'Plugable' USB hub, sound, network, graphics adapter
18 SUBSYSTEM=="usb", ATTR{idVendor}=="2230", ATTR{idProduct}=="000[13]", ENV{ID_AUTOSEAT}="1"
19
20 # Mimo 720, with integrated USB hub, displaylink graphics, and e2i
21 # touchscreen. This device carries no proper VID/PID in the USB hub,
22 # but it does carry good ID data in the graphics component, hence we
23 # check it from the parent. There's a bit of a race here however,
24 # given that the child devices might not exist yet at the time this
25 # rule is executed. To work around this we'll trigger the parent from
26 # the child if we notice that the parent wasn't recognized yet.
27
28 # Match parent
29 SUBSYSTEM=="usb", ATTR{idVendor}=="058f", ATTR{idProduct}=="6254", \
30                   ATTR{%k.2/idVendor}=="17e9", ATTR{%k.2/idProduct}=="401a", ATTR{%k.2/product}=="mimo inc", \
31                   ENV{ID_AUTOSEAT}="1", ENV{ID_AVOID_LOOP}="1"
32
33 # Match child, look for parent's ID_AVOID_LOOP
34 SUBSYSTEM=="usb", ATTR{idVendor}=="17e9", ATTR{idProduct}=="401a", ATTR{product}=="mimo inc", \
35                   ATTR{../idVendor}=="058f", ATTR{../idProduct}=="6254", \
36                   IMPORT{parent}="ID_AVOID_LOOP"
37
38 # Match child, retrigger parent
39 SUBSYSTEM=="usb", ATTR{idVendor}=="17e9", ATTR{idProduct}=="401a", ATTR{product}=="mimo inc", \
40                   ATTR{../idVendor}=="058f", ATTR{../idProduct}=="6254", \
41                   ENV{ID_AVOID_LOOP}=="", \
42                   RUN+="@udevbindir@/udevadm trigger --parent-match=%p/.."
43
44 TAG=="seat", ENV{ID_PATH}=="", IMPORT{builtin}="path_id"
45 TAG=="seat", ENV{ID_FOR_SEAT}=="", ENV{ID_PATH_TAG}!="", ENV{ID_FOR_SEAT}="$env{SUBSYSTEM}-$env{ID_PATH_TAG}"
46
47 SUBSYSTEM=="input", ATTR{name}=="Wiebetech LLC Wiebetech", RUN+="@bindir@/loginctl lock-sessions"
48
49 LABEL="seat_end"