Танці з NVIDIA на xubuntu, Записки Адлерського

Загалом вирішив поставити драйвер nvidia-304 з убунтівського репозиторію. Після стандартногоapt-get install nvidia-304він нормально зібрався і поставився за допомогою dkms. Також поставили пакет nvidia-settings. Після перезавантаження я з розчаруванням виявив, що потрібного дозволу екрана немає в списку nvidia-settings! А xrandr (за допомогою якого воно виставляється на раз-два), як я вже писав, на цих драйверах просто не працює (modeline-то потрібний здається, але не додається!), і довелося колупатися в конфігах Xorg. Раз, напевно, 10-12 я перезаписував xorg.conf з різними варіантами налаштувань, знайденими скрізь де можна і підігнаними під мій випадок, перезавантажував Xorg, перезавантажував комп'ютер - все без толку. У процесі цих ковупань я (прямий як ідеец Зоркий Сокіл з анекдота, який на третій день помітив, що в сараї, виявляється, немає четвертої стіни) зрозумів, що файл xorg.conf просто ігнорується цим драйвером, та й самим Xorg теж, цілком імовірно . А ось конфіги, розташовані у /usr/share/X11/xorg.conf.d, система явно читає. Але все одно, потрібний дозвіл так і не з'являється у списку nvidia-settings, хоч ти трісну.

Загалом, раптово мене осяяло, що справа може бути в назві Device: в xorg.conf, що генерується nvidia-settings, фігурувало якесь Device0 (якщо не помиляюся), тоді як висновок xrandr показував:

DVI-I-0 з'єднаний primary (normal left inverted right x axis y axis) DVI-I-1 connected … DVI-I-2 з'єднаний primary (normal left inverted right x axis y axis)

Section "Monitor" Identifier "Monitor0" ModeLine"1680x1050_60.00" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync 4>Option "DPI" "96 x 96" EndSection Section "Screen" Identifier "Screen0" Device "DVI-I-1" Option "ModeValidation" "AllowNon60hzmodesDFPModes, NoEDIDDFPMaxSizeCheck, NoVertRefreshCheck, NoHorizSyncCheck, NoDFPNativeResolutionCheck, NoDFPNativeResolutionCheck, didModes, NoEdidMaxPClkCheck" Monitor "Monitor0 " DefaultDepth 24 SubSection "Display" Depth 24 Modes "1680x1050_60.00" EndSubSection EndSection

А xorg.conf, xorg.conf.backup та ін. подібне з / etc / X11 - видалив. І вуаля! Ікси стартанули з потрібним дозволом. Ось уже не впевнений, що з т.з. теорії конфіг виглядає бездоганно, але воно працює! 🙂

P.S.Те, що виділив болдом: у рядок ModeLine додано не що інше, як виведення команди для потрібного мені дозволу:

У мануалі написано, що

cvt — calculate VESA CVT mode lines

В даному випадку, 1680 – дозвіл по горизонталі, 1050 – по вертикалі, 60 – частота у герцах. Цим зазвичай користуюся, коли вдається підігнати дозвіл за допомогою xrandr на вільних драйверах. Взагалі, про те як маніпулювати роздільною здатністю екрану за допомогою xrandr , чудово написано ось тут: https://wiki.ubuntu.com/X/Config/Resolution

По-друге, в секції «Monitor» (хоч ці опції мануал на wiki.archlinux.org спеціалістам для Нвідії наказує засовувати в секцію «Device») додав опції «UseEdidDpi» «False» та «DPI» «96 x 96» — тепер

видає resolution: 96×96 dots per inch замість раніше 75×75 dots per inch