В настоящее время Xorg выводит конфигурацию автоматически, и для большинства моих сценариев использования она отлично работает!
Я работаю с программным обеспечением Пассажирской информационной системы и сейчас на одной шине их мониторы установлены вверх ногами.
Я мог бы обойти это с помощью: xrandr - выход HMDI-1 - режим 1920x1080 - повернуть инвертировано
За исключением того, что мое программное обеспечение также использует xrandr
чтобы выключить экран ( xrandr - выход HDMI-1 - off
) и снова включить ( xrandr - выход HDMI-1 - auto
) при необходимости через exec
вызывает.
Но он проходит через все подключенные устройства и использует вместо них их фактические имена устройств. Это не жесткий код HDMI-1
.
Хитрость здесь в том, что - auto
по умолчанию использует конфигурацию по умолчанию, и в этом случае по умолчанию экран имеет ожидаемое вращение, которое из-за его установки вверх дном это ... хорошо ... вверх ногами.
Если бы я добавил вызов xrandr --rotate
при загрузке программного обеспечения, это вмешалось бы в другие случаи, которым это не нужно. И решить его в программном обеспечении в этом случае - слишком большая попытка, когда я думаю, что альтернативой может быть предоставление значения по умолчанию с помощью расширения конфигурации Xorg.
Если бы я должен был добавить вызов xrandr --rotate
при загрузке программного обеспечения, он вмешался бы в другие случаи, которым это не нужно. И решить его в программном обеспечении в этом случае - слишком большая попытка, когда я думаю, что альтернативой может быть предоставление значения по умолчанию с помощью расширения конфигурации Xorg.
Если бы я должен был добавить вызов xrandr --rotate
при загрузке программного обеспечения, он вмешался бы в другие случаи, которым это не нужно. И решить эту проблему в программном обеспечении в этом случае слишком сложно, когда я думаю, что альтернативой может быть предоставление значения по умолчанию через расширение конфигурации Xorg.
Section "Monitor"
Identifier "???" <-- what to use here, so I don't override other defaults inferred by Xorg?
Device "???" <-- what to use here, so that it applies to devices found by Xorg?
Option "Rotate" "inverted"
EndSection
Другой способ, который я могу придумать, - это использовать Xorg: 0 -configure
и добавить туда свои дополнения, но в этом случае я не уверен, будет ли конфигурация действительной и не повлияет ли она со всем остальным.
Я не эксперт по X, и вызов Xorg: 0 -configure
предоставляет мне слишком много параметров конфигурации, поэтому моя уверенность в его использовании в производстве резко снижается.
Ладно, погуглив, я нашел способ минималистически дополнить автоконфигурацию Xorg (по крайней мере, для секции Monitor
).
/ usr / share / X11 / xorg.conf.d / 00-hdmi-1-default-revolution.conf
:
Section "Monitor"
Identifier "HDMI-1" # Use the one reported by xrandr
Option "Rotate" "inverted"
EndSection
Я заметил в Xorg.0.log
, что этот был поднят, и ууу Первая проблема & Третья проблема может быть решена таким образом!
Что касается Вторая проблема : xrandr --auto
кажется использовать информацию, предоставленную аппаратными средствами, и игнорировать значения по умолчанию, установленные программным обеспечением.
Итак, вывод таков: это невозможно сделать , поскольку нет способа решить вторую проблему ] ставится под вопрос.