forked from pool/systemd
60 lines
2.1 KiB
Diff
60 lines
2.1 KiB
Diff
|
From 955f9bde9ba6d9f0a7364d5cb7c0cee951d5caab Mon Sep 17 00:00:00 2001
|
||
|
From: Oleg Samarin <osamarin68@gmail.com>
|
||
|
Date: Sat, 5 Jan 2013 20:33:37 +0400
|
||
|
Subject: [PATCH] logind: Capability of making seats without framebuffer
|
||
|
devices
|
||
|
|
||
|
file logind.c: The seat is now activated by any device with udev tag "seat-master"
|
||
|
file 71-seat.rules.in: All framebuffer devices have this tag
|
||
|
---
|
||
|
src/login/71-seat.rules.in | 2 +-
|
||
|
src/login/logind.c | 12 ++----------
|
||
|
2 files changed, 3 insertions(+), 11 deletions(-)
|
||
|
|
||
|
diff --git a/src/login/71-seat.rules.in b/src/login/71-seat.rules.in
|
||
|
index f554d7f..4f1a9a5 100644
|
||
|
--- a/src/login/71-seat.rules.in
|
||
|
+++ b/src/login/71-seat.rules.in
|
||
|
@@ -10,7 +10,7 @@ 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"
|
||
|
+SUBSYSTEM=="graphics", KERNEL=="fb[0-9]*", TAG+="seat", TAG+="seat-master"
|
||
|
SUBSYSTEM=="usb", ATTR{bDeviceClass}=="09", TAG+="seat"
|
||
|
|
||
|
# 'Plugable' USB hub, sound, network, graphics adapter
|
||
|
diff --git a/src/login/logind.c b/src/login/logind.c
|
||
|
index 6438631..6776229 100644
|
||
|
--- a/src/login/logind.c
|
||
|
+++ b/src/login/logind.c
|
||
|
@@ -459,11 +459,7 @@ int manager_enumerate_devices(Manager *m) {
|
||
|
goto finish;
|
||
|
}
|
||
|
|
||
|
- r = udev_enumerate_add_match_subsystem(e, "graphics");
|
||
|
- if (r < 0)
|
||
|
- goto finish;
|
||
|
-
|
||
|
- r = udev_enumerate_add_match_tag(e, "seat");
|
||
|
+ r = udev_enumerate_add_match_tag(e, "seat-master");
|
||
|
if (r < 0)
|
||
|
goto finish;
|
||
|
|
||
|
@@ -1295,11 +1291,7 @@ static int manager_connect_udev(Manager *m) {
|
||
|
if (!m->udev_seat_monitor)
|
||
|
return -ENOMEM;
|
||
|
|
||
|
- r = udev_monitor_filter_add_match_tag(m->udev_seat_monitor, "seat");
|
||
|
- if (r < 0)
|
||
|
- return r;
|
||
|
-
|
||
|
- r = udev_monitor_filter_add_match_subsystem_devtype(m->udev_seat_monitor, "graphics", NULL);
|
||
|
+ r = udev_monitor_filter_add_match_tag(m->udev_seat_monitor, "seat-master");
|
||
|
if (r < 0)
|
||
|
return r;
|
||
|
|
||
|
--
|
||
|
1.7.10.4
|
||
|
|