PHP 8.5.2
Preview: 71-seat.rules Size: 3.73 KB
//lib/udev/rules.d/71-seat.rules

#  SPDX-License-Identifier: LGPL-2.1-or-later
#
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

ACTION=="remove", GOTO="seat_end"

TAG=="uaccess", SUBSYSTEM!="sound", TAG+="seat"
SUBSYSTEM=="sound", KERNEL=="card*", TAG+="seat"
SUBSYSTEM=="input", KERNEL=="input*", TAG+="seat"
SUBSYSTEM=="graphics", KERNEL=="fb[0-9]*", TAG+="seat"

# Assign keyboard and LCD backlights to the seat
SUBSYSTEM=="leds", TAG+="seat"
SUBSYSTEM=="backlight", TAG+="seat"

# Allow efifb / uvesafb to be a master if KMS is disabled
SUBSYSTEM=="graphics", KERNEL=="fb[0-9]", IMPORT{cmdline}="nomodeset", TAG+="master-of-seat"

# Allow any PCI graphics device to be a master and synthesize a seat if KMS
# is disabled and the kernel doesn't have a driver that would work with this device.
SUBSYSTEM=="pci", ENV{ID_PCI_CLASS_FROM_DATABASE}=="Display controller", \
                  ENV{DRIVER}=="", IMPORT{cmdline}="nomodeset", TAG+="seat", TAG+="master-of-seat"

# Synthesize a seat for graphic devices without DRM and that fall back to fb
# device instead. Such HWs are listed in hwdb.
SUBSYSTEM=="graphics", KERNEL=="fb[0-9]*", ATTRS{modalias}=="?*", IMPORT{builtin}="hwdb fb:$attr{modalias}"
ENV{ID_TAG_MASTER_OF_SEAT}=="1", TAG+="master-of-seat"

SUBSYSTEM=="drm", KERNEL=="card[0-9]*", TAG+="seat", TAG+="master-of-seat"

# Allow individual USB ports to be assigned to a seat
SUBSYSTEM=="usb", ATTR{bDeviceClass}=="00", TAG+="seat"

# Allow USB hubs (and all downstream ports) to be assigned to a seat
SUBSYSTEM=="usb", ATTR{bDeviceClass}=="09", TAG+="seat"

# 'Plugable' USB hub, sound, network, graphics adapter
SUBSYSTEM=="usb", ATTR{idVendor}=="2230", ATTR{idProduct}=="000[13]", ENV{ID_AUTOSEAT}="1"

# qemu (version 2.4+) has a PCI-PCI bridge (-device pci-bridge-seat) to group
# devices belonging to one seat. See:
#     http://git.qemu.org/?p=qemu.git;a=blob;f=docs/multiseat.txt
SUBSYSTEM=="pci", ATTR{vendor}=="0x1b36", ATTR{device}=="0x000a", TAG+="seat", ENV{ID_AUTOSEAT}="1"

# Mimo 720, with integrated USB hub, displaylink graphics, and e2i
# touchscreen. This device carries no proper VID/PID in the USB hub,
# but it does carry good ID data in the graphics component, hence we
# check it from the parent. There's a bit of a race here however,
# given that the child devices might not exist yet at the time this
# rule is executed. To work around this we'll trigger the parent from
# the child if we notice that the parent wasn't recognized yet.

# Match parent
SUBSYSTEM=="usb", ATTR{idVendor}=="058f", ATTR{idProduct}=="6254", \
                  ATTR{%k.2/idVendor}=="17e9", ATTR{%k.2/idProduct}=="401a", ATTR{%k.2/product}=="mimo inc", \
                  ENV{ID_AUTOSEAT}="1", ENV{ID_AVOID_LOOP}="1"

# Match child, look for parent's ID_AVOID_LOOP
SUBSYSTEM=="usb", ATTR{idVendor}=="17e9", ATTR{idProduct}=="401a", ATTR{product}=="mimo inc", \
                  ATTR{../idVendor}=="058f", ATTR{../idProduct}=="6254", \
                  IMPORT{parent}="ID_AVOID_LOOP"

# Match child, retrigger parent
SUBSYSTEM=="usb", ATTR{idVendor}=="17e9", ATTR{idProduct}=="401a", ATTR{product}=="mimo inc", \
                  ATTR{../idVendor}=="058f", ATTR{../idProduct}=="6254", \
                  ENV{ID_AVOID_LOOP}=="", \
                  RUN+="/usr/bin/udevadm trigger --parent-match=%p/.."

TAG=="seat", ENV{ID_PATH}=="", IMPORT{builtin}="path_id"
TAG=="seat", ENV{ID_FOR_SEAT}=="", ENV{ID_PATH_TAG}!="", ENV{ID_FOR_SEAT}="$env{SUBSYSTEM}-$env{ID_PATH_TAG}"

SUBSYSTEM=="input", ATTR{name}=="Wiebetech LLC Wiebetech", RUN+="/usr/bin/loginctl lock-sessions"

LABEL="seat_end"

Directory Contents

Dirs: 0 × Files: 105

Name Size Perms Modified Actions
321 B lrw-r--r-- 2024-07-29 08:06:31
Edit Download
41.86 KB lrw-r--r-- 2023-12-16 21:51:02
Edit Download
655 B lrw-r--r-- 2025-11-25 18:16:31
Edit Download
165 B lrw-r--r-- 2024-04-18 12:31:35
Edit Download
210 B lrw-r--r-- 2025-11-21 19:47:35
Edit Download
5.24 KB lrw-r--r-- 2025-11-25 18:16:31
Edit Download
7.11 KB lrw-r--r-- 2024-11-27 19:06:49
Edit Download
6.51 KB lrw-r--r-- 2024-04-08 16:19:15
Edit Download
4.46 KB lrw-r--r-- 2025-07-22 15:44:15
Edit Download
1.41 KB lrw-r--r-- 2025-07-22 15:44:15
Edit Download
2.37 KB lrw-r--r-- 2024-11-27 19:06:49
Edit Download
2.80 KB lrw-r--r-- 2024-04-08 16:19:15
Edit Download
704 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
703 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
1.05 KB lrw-r--r-- 2024-02-27 17:26:04
Edit Download
637 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
834 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
1.07 KB lrw-r--r-- 2024-02-27 17:26:04
Edit Download
491 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
379 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
282 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
3.89 KB lrw-r--r-- 2025-07-22 15:44:15
Edit Download
250 B lrw-r--r-- 2025-09-05 13:01:22
Edit Download
727 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
3.19 KB lrw-r--r-- 2024-02-27 17:26:04
Edit Download
1.92 KB lrw-r--r-- 2024-11-27 19:06:49
Edit Download
411 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
2.54 KB lrw-r--r-- 2024-02-27 17:26:04
Edit Download
9.47 KB lrw-r--r-- 2025-11-25 18:16:31
Edit Download
1.06 KB lrw-r--r-- 2024-02-27 17:26:04
Edit Download
131 B lrw-r--r-- 2025-10-22 07:58:36
Edit Download
1.58 KB lrw-r--r-- 2024-02-27 17:26:04
Edit Download
1.39 KB lrw-r--r-- 2024-02-27 17:26:04
Edit Download
243 B lrw-r--r-- 2022-01-25 17:57:41
Edit Download
455 B lrw-r--r-- 2025-11-25 18:16:31
Edit Download
2.55 KB lrw-r--r-- 2024-07-29 08:06:31
Edit Download
387 B lrw-r--r-- 2024-03-31 08:43:21
Edit Download
346 B lrw-r--r-- 2024-03-31 08:43:21
Edit Download
616 B lrw-r--r-- 2025-11-25 18:16:31
Edit Download
1.81 KB lrw-r--r-- 2024-07-29 08:06:31
Edit Download
647 B lrw-r--r-- 2024-10-17 07:36:15
Edit Download
1.91 KB lrw-r--r-- 2024-03-27 13:14:04
Edit Download
1.11 KB lrw-r--r-- 2025-07-22 15:44:15
Edit Download
1.02 KB lrw-r--r-- 2024-04-08 15:54:26
Edit Download
3.49 KB lrw-r--r-- 2024-11-27 19:06:49
Edit Download
846 B lrw-r--r-- 2024-07-29 08:06:31
Edit Download
280 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
234 B lrw-r--r-- 2025-02-11 08:52:16
Edit Download
432 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
184 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
734 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
253 B lrw-r--r-- 2025-02-11 08:52:16
Edit Download
576 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
473 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
3.36 KB lrw-r--r-- 2025-11-25 18:16:31
Edit Download
461 B lrw-r--r-- 2025-11-25 18:16:31
Edit Download
3.73 KB lrw-r--r-- 2025-11-25 18:16:31
Edit Download
643 B lrw-r--r-- 2025-11-25 18:16:31
Edit Download
969 B lrw-r--r-- 2025-11-21 19:47:35
Edit Download
452 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
174 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
936 B lrw-r--r-- 2024-02-19 14:58:32
Edit Download
4.29 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
1.73 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
866 B lrw-r--r-- 2024-02-19 14:58:32
Edit Download
7.89 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
6.53 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
1.57 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
907 B lrw-r--r-- 2024-02-19 14:58:32
Edit Download
525 B lrw-r--r-- 2024-02-19 14:58:32
Edit Download
2.54 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
697 B lrw-r--r-- 2024-02-19 14:58:32
Edit Download
14.10 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
3.54 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
584 B lrw-r--r-- 2024-02-19 14:58:32
Edit Download
2.13 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
1.58 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
3.08 KB lrw-r--r-- 2024-02-29 20:05:23
Edit Download
9.51 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
3.18 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
4.13 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
11.97 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
739 B lrw-r--r-- 2024-02-19 14:58:32
Edit Download
4.94 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
4.49 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
16.78 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
965 B lrw-r--r-- 2025-11-25 18:16:31
Edit Download
4.70 KB lrw-r--r-- 2024-02-27 17:26:04
Edit Download
594 B lrw-r--r-- 2025-11-21 19:47:35
Edit Download
600 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
1.58 KB lrw-r--r-- 2024-02-19 14:58:32
Edit Download
295 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
10.32 KB lrw-r--r-- 2025-08-21 14:16:39
Edit Download
528 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
82 B lrw-r--r-- 2022-10-06 12:47:47
Edit Download
359 B lrw-r--r-- 2024-02-19 08:46:07
Edit Download
265 B lrw-r--r-- 2024-02-26 12:58:31
Edit Download
281 B lrw-r--r-- 2025-11-07 10:50:58
Edit Download
769 B lrw-r--r-- 2024-02-27 17:26:04
Edit Download
479 B lrw-r--r-- 2024-11-27 19:06:49
Edit Download
1.48 KB lrw-r--r-- 2025-07-22 15:44:15
Edit Download
171 B lrw-r--r-- 2024-04-28 23:44:46
Edit Download
351 B lrw-r--r-- 2024-01-18 21:21:52
Edit Download
4.98 KB lrw-r--r-- 2025-11-25 18:16:31
Edit Download
433 B lrw-r--r-- 2025-09-23 16:03:52
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).