Как я ставил драйвера Nvidia

BuG2BuG

Демон FreeBSD
Началось всё 2 января и тогда же закончилось.

А начиналось всё с того, что мну, игравший до этого на эмуляторе Wine в кваку 2 очень сильно захотелось поиграть в кваку 3. Запустилась она сразу, но вот только возникла одна проблема: ТОРМОЗА жуткие, играть вообще было невозможно, а если ещё и звук подключить, то всё висло намертво. Сначала я грешил на процессор (мой слабенький 866MHz Pentium III Coppermine), но потом понял, что мои догадки безосновательны и попытася найти ответ в сети. Подумав-подумав, побродя по интернету, я, наконец, дошёл, что во всём виноваты драйвера для видеокарты. Во FreeBSD по-умолчанию стоит драйвер nv - так сказать "общий" для всех карт nVidia. Мне он по-видимому не подходил. Тогда я решил заглянуть на сайт разработчика, а вернее создателя видеокарточек nVidia - пресловутого nVidia B)
О чудо! На оффициальном сайте разработчика есть "нативные" драйвера для FreeBSD. На самом деле нативных дров для него нет. Решил ставить из портов. Сразу потянулись зависимости Linux-FC4. О УЖОС! Нафига мне качать десятки метров для эмуляции Федориного Горя??? Есть более рациональное решение, сказал себе я, погуглив в http://google.ru/bsd. И да, не нужно было делать make install. Нужно было просто его собрать (а собирается он слава богу, не таща зависимости), а затем зайдя в папку work/NVIDIA-версия написать make setup. УРА! Всё собралось и модуль сразу подключился. И...
ОБЛОМ! Нифига эти драйвера нерабочие... kldunload nvidia вызывает Kernel Panic. startx же пишет, что
Код:
NVIDIA: could not open the device file /dev/nvidiactl (No such file or directory).
(EE) NVIDIA(0): Failed to initialize the NVIDIA kernel module! Please ensure
(EE) NVIDIA(0): that there is a supported NVIDIA GPU in this system, and
(EE) NVIDIA(0): that the NVIDIA device files have been created properly. 
(EE) NVIDIA(0): Please consult the NVIDIA README for details.
(EE) NVIDIA(0): *** Aborting ***
Зря я обновил всё дерево портов месяц назад. Моя старющая карточка (а именно nVidia GeForce 256) была в списке не поддерживаемых. Так читаем... Ага. Legacy Support. Они перестали поддерживать мою карту очень давно, но драйвер для неё был, правда версией намного ниже. Дык вот. Стал я её собирать с исходников. make; make setup. Отлично, найдя
Код:
bug2bug# ls -la /dev | grep nv
crw-rw-rw-   1 root  wheel	   0,  33 Jan  2 23:40 nvidia0
crw-rw-rw-   1 root  wheel	   0,  34 Jan  2 23:40 nvidiactl
bug2bug#
я понял, что сейчас всё должно заработать. Прописав в /usr/X11R6/lib/X11/xorg.conf (а именно там конфиг моих Иксов) драйвер nvidia вместо опального nv, я сделал
Код:
bug2bug# reboot
Так, так... Ага. Что-то стало с дисплеем. Почему-то глубина цвета страдает, а вернее 256 цветов. :eek:
Ещё чуть-чуть погуглив нашёл ответ: в секции Screen нужно было прописать:
Код:
DefaultColorDepth 24
DefaultDepth 24
Ещё раз
Код:
bug2bug# reboot
Проверяем... Ура!!! Красота! Хотя стойте, а куда делось моё разрешение 1400x1280? Ну ничего, хоть новый драйвер не позволяет его держать, зато есть стандартный 1280x1024. Так, а теперь ради чего всё было затеяно:
Код:
bug2bug# mount_cd9660 /dev/`mdconfig -a -f /home/ftp/_incoming/quake3.iso` /mnt/vcd
bug2bug# cd /mnt/vcd/Quake3
bug2bug# daemon wine quake3.exe
oO: И тут наступает шок... Оно не то что работает... Оно ЛЕТАЕТ! Как будто бы играю из-под продукта фирмы Microsoft. Ура! Я добился своего! Наконец-то теперь буду всю ночь рубить ботов на фарш :)
А если серьёзно, то я рад, что всё закончилось так благополучно. Я намеряно умолчал о нескольких Kernel Panic'ах, стёртых скриптах загрузки /etc/rc.conf и десятках мегабайт, потраченных на скачивания драйверов, чтобы не отбить ни у кого интерес. И как результат - моей радости нет предела, теперь буду играть в трёхмерные игры и возможно когда-нибудь запущу 3DS MAX. На этом считаю нужным откланяться.

Всем спасибо, все свободны. (С)

P.S.: Заранее (а вернее запозднее) извините меня за все орфографические ошибки и за нелитературные слова.
P.P.S.: Принимается конструктивная критика / пожелания / предложения (в письменном виде в мусорную корзину).

С Уважением,
 

Mike22

Местный
Nvidia делает отличные карты, но вот то, что они не хотят открыть спецификации и код драйвера - плохо.
Ati же не испугалась.

Вобщем, закрытые драйвера и как следствие - необходимость применять "напильник" если у тебя не совсем стандартная система/железо.

Интересно, а получится запустить Nouveau под FreeBSD?
(Nouveau - пока очень сырые, открытые драйвера для Nvidia, разрабатываеммые методом обратного инженеринга).
 

BuG2BuG

Демон FreeBSD
Я думаю что с выходом FreeBSD 6.2 их портируют (ОпенСурс всё таки)
 
Сверху