В общем, практически получилось. За исключением одного момента, но о нём позже.
Лезть в глобальные настройки xorg я не стал.
Утверждение о неучёте DPI тоже оказалось не совсем верным.
Шаг номер раз: смотрим, как оно сейчас.
alexey@vubuntu:~$ xrandr
Screen 0: minimum 320 x 200, current 2880 x 1024, maximum 8192 x 8192
LVDS1 connected 1600x900+0+124 (normal left inverted right x axis y axis) 309mm x 174mm
1600x900 60.0*+ 40.0
1440x900 59.9
1360x768 59.8 60.0
1152x864 60.0
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 connected 1280x1024+1600+0 (normal left inverted right x axis y axis) 338mm x 270mm
1280x1024 60.0*+ 75.0
1152x864 75.0
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 72.8 75.0 66.7 60.0
720x400 70.1
DP1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
HDMI3 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
DP3 disconnected (normal left inverted right x axis y axis)
— сразу видно и разрешение, и физические размеры мониторов.
Что мешает системе учесть физические размеры сразу? Неизвестно. Но факт в том, что они есть, и они верные.
Шаг номер два. Вычисляем коэффициент масштабирования (ну, привык я пятоном пользоваться, как калькулятором):
alexey@vubuntu:~$ python
Python 2.7.3 (default, Aug 1 2012, 05:14:39)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 900/174.0
5.172413793103448
>>> 1024/270.0
3.7925925925925927
>>> 5.1724/3.79259
1.3638173385470087
>>>
Шаг номер три: применяем полученный коэффициент и смотрим, что в итоге получилось:
alexey@vubuntu:~$ xrandr --output HDMI1 --scale 1.3638x1.3638
alexey@vubuntu:~$ xrandr
Screen 0: minimum 320 x 200, current 3346 x 1397, maximum 8192 x 8192
LVDS1 connected 1600x900+0+124 (normal left inverted right x axis y axis) 309mm x 174mm
1600x900 60.0*+ 40.0
1440x900 59.9
1360x768 59.8 60.0
1152x864 60.0
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 connected 1746x1397+1600+0 (normal left inverted right x axis y axis) 338mm x 270mm
1280x1024 60.0*+ 75.0
1152x864 75.0
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 72.8 75.0 66.7 60.0
720x400 70.1
DP1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
HDMI3 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
DP3 disconnected (normal left inverted right x axis y axis)
Это уже похоже на правду!
Остался один момент: мониторы выровнены по нижнему краю. В начальном варианте это означало, что левый смещён на (1024-900)-124 пикселя по вертикали. Теперь «большой» стал имитировать вертикальное разрешение уже 1397; стал быть смещение нужно задать в 497 пикселей:
alexey@vubuntu:~$ xrandr --output LVDS1 --pos 0x497
Получилось вот так:
Но один момент остался — это координаты мыши. Она по-прежнему думает, что имеет дело с 1280х1024 — и поэтому на отмасштабированном мониторе при перемещении вниз/вправо в конце концов упирается в эту невидимую границу. На картинке на большом мониторе мышь видно в её самой нижней-правой возможной позиции (т.е. там её нельзя сдвинуть ни ниже, ни правее).
Если кто подскажет, как побороть и этот момент тоже — буду премного благодарен!