Что-то тут не то, подумал я и полез курить сорцы месы. Оказалось есть полезная переменная LIBGL_DEBUG, которую можно установить в verbose и посмотреть чего там творится в недрах DRI. Сказано - сделано. Оказалось что libGL.so.1 не может открыть r300_dri.so, который оно ищет в /usr/X11R6/lib/modules, а в убунте оно зачем-то лежит в /usr/lib/xorg/. Невелика беда - один симлинк и все готово. Квака сразу раскочегарилась до 180, шестеренки с glxgears слетели с осей и пробили мне монитор, и в предвкушении чуда я сделал killall compiz; compiz --replace gconf и ... жестоко обломался. Эта сволочь напрочь отказывалась запускаться сетуя на отсутствие GLX_EXT_texture_from_pixmap. Стоило мне снести симлинк на r300_dri.so, как компиз заработал, но отвалился DRI. Чувствуя, что еще немного и меня заебрут в дурку без права переписки, я снова создал симлинк и запустил на этот раз beryl. И каково же было мое удивление, когда он заработал как ни в чем не бывало! А компиз по-прежнему не находил texture_from_pixmap.
После ночных ковыряний в коде компиза, я обнаружил что оно берет строку расширений из glXQueryExtensionString, а вот почему при выключенном DRI оно возвращает GLX_EXT_texture_from_pixmap, а при включенном - нет, я так и не понял. Кто тут спец по DRI, подскажите.








