Multiseat config interface: различия между версиями
(Новая страница: «Настройка рабочих мест через {{prg|systemd/loginctl}} не то чтоб сложная, но довольно утомительная…») |
Нет описания правки |
||
Строка 1: | Строка 1: | ||
Настройка рабочих мест через {{prg|systemd/loginctl}} не то чтоб сложная, но довольно утомительная в части идентификации нужных устройств, и передачи их на нужное рабочее место. Действие это сопряжено с перекрестным рассматриванием вывода {{prg|lspci}} и {{prg|loginctl seat-status}}, и многочисленным копированием через буфер длинных строчек текста-абракадабры. К тому же всегда есть шанс ошибиться (неверно передать не то устройство не туда), в результате чего единственное рабочее место может потерять клавиатуру и/или мышь. | Настройка рабочих мест через {{prg|systemd/loginctl}} не то чтоб сложная, но довольно утомительная в части идентификации нужных устройств, и передачи их на нужное рабочее место. Действие это сопряжено с перекрестным рассматриванием вывода {{prg|lspci}} и {{prg|loginctl seat-status}}, и многочисленным копированием через буфер длинных строчек текста-абракадабры. К тому же всегда есть шанс ошибиться (неверно передать не то устройство не туда), в результате чего единственное рабочее место может потерять клавиатуру и/или мышь. | ||
Поэтому было бы неплохо, чтоб, например, в Альтераторе был соответствующий модуль. Внешний вид приблизительно такой: | |||
[[Файл:Multiseatproposal.png|мини|Модуль альтератора "настройка рабочих мест"]] | |||
Как это должно работать: | |||
# Программа должна автоматически парсить вывод {{prg|loginctl seat-status seat0}}, обнаруживать в нем все видеокарты по строке вида {{term|drm:card0}}, и в соответствии с количеством карт (минус одна) формировать количество окошек в правой части и кнопок "Add>>". | |||
# В левом большом поле должен быть полный список устройств. Причем, желательно в более читаемом формате, чем в выхлопе loginctl. Предположительно, более читаемые имена устройств можно вытянуть из {{prg|lspci}} и {{prg|lsusb}} | |||
# При нажатии "Add>>" соответствующее устройство пропадает из полного списка и появляется в списке устройств для выбранного рабочего места. При этом в поле "Seat name" можно ввести имя рабочего места, по умолчанию "seat1", "seat2" и т.д. | |||
# Должна быть кнопка "Сохранить конфигурацию", которая сохраняет состояние в какой-то файл. Чтоб потом можно было загрузить его и применить получившиеся настройки | |||
# Должна быть кнопка "Применить". С очевидным действием. Но! Было бы неплохо предусмотреть механизм автоматического "отката" через интервал времени (как это было сделано в настройках монитора в прошлых версиях Windows). Чтоб если пользователь что-то сделал неправлиьно, и лишился клавиатуры/мыши, через 20 секунд все рабочие места удалились через {{prg|loginctl flush-devices}}, и все вернулось на исходную позицию. | |||
#Красная кнопка - удаления всех настроек. | |||
{{Category navigation|title=Разработка_нужных_программ|category=Разработка_нужных_программ|sortkey={{SUBPAGENAME}}}} | {{Category navigation|title=Разработка_нужных_программ|category=Разработка_нужных_программ|sortkey={{SUBPAGENAME}}}} |
Текущая версия от 22:52, 19 августа 2019
Настройка рабочих мест через systemd/loginctl не то чтоб сложная, но довольно утомительная в части идентификации нужных устройств, и передачи их на нужное рабочее место. Действие это сопряжено с перекрестным рассматриванием вывода lspci и loginctl seat-status, и многочисленным копированием через буфер длинных строчек текста-абракадабры. К тому же всегда есть шанс ошибиться (неверно передать не то устройство не туда), в результате чего единственное рабочее место может потерять клавиатуру и/или мышь.
Поэтому было бы неплохо, чтоб, например, в Альтераторе был соответствующий модуль. Внешний вид приблизительно такой:
Как это должно работать:
- Программа должна автоматически парсить вывод loginctl seat-status seat0, обнаруживать в нем все видеокарты по строке вида drm:card0, и в соответствии с количеством карт (минус одна) формировать количество окошек в правой части и кнопок "Add>>".
- В левом большом поле должен быть полный список устройств. Причем, желательно в более читаемом формате, чем в выхлопе loginctl. Предположительно, более читаемые имена устройств можно вытянуть из lspci и lsusb
- При нажатии "Add>>" соответствующее устройство пропадает из полного списка и появляется в списке устройств для выбранного рабочего места. При этом в поле "Seat name" можно ввести имя рабочего места, по умолчанию "seat1", "seat2" и т.д.
- Должна быть кнопка "Сохранить конфигурацию", которая сохраняет состояние в какой-то файл. Чтоб потом можно было загрузить его и применить получившиеся настройки
- Должна быть кнопка "Применить". С очевидным действием. Но! Было бы неплохо предусмотреть механизм автоматического "отката" через интервал времени (как это было сделано в настройках монитора в прошлых версиях Windows). Чтоб если пользователь что-то сделал неправлиьно, и лишился клавиатуры/мыши, через 20 секунд все рабочие места удалились через loginctl flush-devices, и все вернулось на исходную позицию.
- Красная кнопка - удаления всех настроек.