LINUX.ORG.RU

Bumblebee и поддержка GLX

 , , ,


0

2

Доброго времени суток, форумчане. Вопрос по Bumblebee.

netsu@hackbook> optirun compton --backend glx
glx_hasglxext(): Missing GLX extension GLX_EXT_texture_from_pixmap.
[1] netsu@hackbook> optirun compton --backend xrender &
netsu@hackbook>

На борту NixOS,

netsu@hackbook> lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
02:00.0 VGA compatible controller: NVIDIA Corporation GK208M [GeForce GT 730M] (rev a1)

netsu@hackbook> systemctl status bumblebeed
● bumblebeed.service - Bumblebee Hybrid Graphics Switcher
   Loaded: loaded (/nix/store/5pmagz1p638maip1crx9qqhyjp3vvf6s-unit-bumblebeed.service/bumblebeed.service)
   Active: active (running) since Sun 2015-10-04 20:19:43 EEST; 6s ago
 Main PID: 11218 (.bumblebeed-wra)
   CGroup: /system.slice/bumblebeed.service
           └─11218 /nix/store/0sycs1pkq6ppw39d3snpdzh9asg3a3js-bumblebee-3.2.1/bin/bumblebeed --use-syslog -g wheel

Oct 04 20:19:43 hackbook systemd[1]: Started Bumblebee Hybrid Graphics Switcher.
Oct 04 20:19:43 hackbook bumblebeed[11218]: /nix/store/0sycs1pkq6ppw39d3snpdzh9asg3a3js-bumblebee-3.2.1/bin/bumblebeed 3.2.1 started
netsu@hackbook> cat /proc/acpi/bbswitch
0000:02:00.0 OFF
netsu@hackbook>

Есть ли возможность включить/эмулировать GLX_EXT_texture_from_pixmap для полноценного хардварного ускорения композитного менеджера через GLX?



Последнее исправление: Pitometsu (всего исправлений: 1)

Сомневаюсь, что это может заработать даже теоретически. Запуская процесс оптираном, ты запускаешь его на других иксах. То есть даже если он запустится, он будет композитным менеджером тех, других иксов, а не твоих основных. Хотя смысла в этом нет конечно. В общем не канифоль себе и людям мозг и запускай комптон без оптирана. Встроенной графики вполне хватит, чтобы ускорять твой композитор.

eternal_sorrow ★★★★★
()
Ответ на: комментарий от eternal_sorrow

Комптон прекрасно работает через оптиран, но через xrandr, а посему вкусности glx не доступны. GLX тащемта тоже работает. Но не хватает комптону чего-то в моем glx, вопрос только — почему?

Pitometsu
() автор топика
Ответ на: комментарий от eternal_sorrow

И да, на встроеной карточке этот композитный менеджер просто не заводится.

Pitometsu
() автор топика
Ответ на: комментарий от eternal_sorrow

Xrender, да.

На встроенной ругается на отсутствие GLX вцелом, в приаттаченных логах есть же.

Pitometsu
() автор топика
Ответ на: комментарий от eternal_sorrow
netsu@hackbook> compton
Xlib:  extension "GLX" missing on display ":0.0".
glx_init(): No GLX extension.
zsh: segmentation fault  compton
[139] netsu@hackbook>
Pitometsu
() автор топика
Ответ на: комментарий от eternal_sorrow

Возможно, дело в конфликте gibglx.so?

/run/current-system/sw/lib/xorg/
├── modules
│   ├── drivers
│   │   ├── modesetting_drv.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/drivers/modesetting_drv.la
│   │   ├── modesetting_drv.so -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/drivers/modesetting_drv.so
│   │   └── nvidia_drv.so -> /nix/store/q2p2k6brd8rfxkr5z7y67qdbzn9fdnpf-nvidia-x11-352.41-4.2.1/lib/xorg/modules/drivers/nvidia_drv.so
│   ├── extensions
│   │   ├── libglx.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/extensions/libglx.la
│   │   ├── libglx.so -> /nix/store/q2p2k6brd8rfxkr5z7y67qdbzn9fdnpf-nvidia-x11-352.41-4.2.1/lib/xorg/modules/extensions/libglx.so
│   │   ├── libglx.so.1 -> /nix/store/q2p2k6brd8rfxkr5z7y67qdbzn9fdnpf-nvidia-x11-352.41-4.2.1/lib/xorg/modules/extensions/libglx.so.1
│   │   └── libglx.so.352.41 -> /nix/store/q2p2k6brd8rfxkr5z7y67qdbzn9fdnpf-nvidia-x11-352.41-4.2.1/lib/xorg/modules/extensions/libglx.so.352.41
│   ├── input -> /nix/store/2vfqy92aa0bx0isww3sds87zfxayzlaq-xf86-input-synaptics-1.8.2/lib/xorg/modules/input
│   ├── libexa.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libexa.la
│   ├── libexa.so -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libexa.so
│   ├── libfbdevhw.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libfbdevhw.la
│   ├── libfbdevhw.so -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libfbdevhw.so
│   ├── libfb.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libfb.la
│   ├── libfb.so -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libfb.so
│   ├── libint10.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libint10.la
│   ├── libint10.so -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libint10.so
│   ├── libnvidia-wfb.so -> /nix/store/q2p2k6brd8rfxkr5z7y67qdbzn9fdnpf-nvidia-x11-352.41-4.2.1/lib/xorg/modules/libnvidia-wfb.so
│   ├── libnvidia-wfb.so.1 -> /nix/store/q2p2k6brd8rfxkr5z7y67qdbzn9fdnpf-nvidia-x11-352.41-4.2.1/lib/xorg/modules/libnvidia-wfb.so.1
│   ├── libnvidia-wfb.so.352.41 -> /nix/store/q2p2k6brd8rfxkr5z7y67qdbzn9fdnpf-nvidia-x11-352.41-4.2.1/lib/xorg/modules/libnvidia-wfb.so.352.41
│   ├── libshadowfb.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libshadowfb.la
│   ├── libshadowfb.so -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libshadowfb.so
│   ├── libshadow.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libshadow.la
│   ├── libshadow.so -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libshadow.so
│   ├── libvbe.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libvbe.la
│   ├── libvbe.so -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libvbe.so
│   ├── libvgahw.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libvgahw.la
│   ├── libvgahw.so -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libvgahw.so
│   ├── libwfb.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libwfb.la
│   └── libwfb.so -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/libwfb.so
└── protocol.txt -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/protocol.txt
Pitometsu
() автор топика
Ответ на: комментарий от eternal_sorrow

libglx.so

netsu@hackbook> tr /run/current-system/sw/lib/xorg/ | grep -i glx                                                                                               ~
│   │   ├── libglx.la -> /nix/store/w4nh4907ihcbm0szg6q5n56g5ija5bqh-xorg-server-1.17.2/lib/xorg/modules/extensions/libglx.la
│   │   ├── libglx.so -> /nix/store/q2p2k6brd8rfxkr5z7y67qdbzn9fdnpf-nvidia-x11-352.41-4.2.1/lib/xorg/modules/extensions/libglx.so
│   │   ├── libglx.so.1 -> /nix/store/q2p2k6brd8rfxkr5z7y67qdbzn9fdnpf-nvidia-x11-352.41-4.2.1/lib/xorg/modules/extensions/libglx.so.1
│   │   └── libglx.so.352.41 -> /nix/store/q2p2k6brd8rfxkr5z7y67qdbzn9fdnpf-nvidia-x11-352.41-4.2.1/lib/xorg/modules/extensions/libglx.so.352.41
netsu@hackbook> tr /nix/store/hlmq40060r1pf5wrgiyc25mkbdwdfrfs-nvidia-x11-352.41-3.18.21 | grep -i glx                                                          ~
│       ├── glxext.h
│       └── glx.h
│           │   ├── libglx.so -> libglx.so.352.41
│           │   ├── libglx.so.1 -> libglx.so.352.41
│           │   └── libglx.so.352.41
Pitometsu
() автор топика
Ответ на: комментарий от eternal_sorrow

lbGl.so vs libglx.so ?

netsu@hackbook> find -L /run/current-system/ -iname libGL.so

/run/current-system/sw/lib/libGL.so
/run/current-system/kernel-modules/lib/libGL.so

netsu@hackbook> find -L /run/current-system/ -iname libglx.so

/run/current-system/sw/lib/xorg/modules/extensions/libglx.so
/run/current-system/kernel-modules/lib/xorg/modules/extensions/libglx.so
Pitometsu
() автор топика
Ответ на: комментарий от eternal_sorrow

Не уверен, нужна ли тут mesa

netsu@hackbook> tr /nix/store/nig33sphm4zqmhlxig6iwkgqfx3b2s4i-mesa-noglu-10.6.8 | grep -i libGL                                                                ~
│   ├── libglapi.la
│   ├── libglapi.so -> libglapi.so.0.0.0
│   ├── libglapi.so.0 -> libglapi.so.0.0.0
│   ├── libglapi.so.0.0.0
│   ├── libGLESv1_CM.la
│   ├── libGLESv1_CM.so -> libGLESv1_CM.so.1.1.0
│   ├── libGLESv1_CM.so.1 -> libGLESv1_CM.so.1.1.0
│   ├── libGLESv1_CM.so.1.1.0
│   ├── libGLESv2.la
│   ├── libGLESv2.so -> libGLESv2.so.2.0.0
│   ├── libGLESv2.so.2 -> libGLESv2.so.2.0.0
│   ├── libGLESv2.so.2.0.0
│   ├── libGL.la
│   ├── libGL.so -> libGL.so.1.2.0
│   ├── libGL.so.1 -> libGL.so.1.2.0
│   ├── libGL.so.1.2.0
Pitometsu
() автор топика
Ответ на: комментарий от eternal_sorrow

Решено

Убрал nvidia драйвер из основной конфигурации иксов, запретил автоопределение новых карточек иксами, и все заработало! Спасибо за годный совет смотреть в сторону встроенной карты.

Pitometsu
() автор топика
Ответ на: Решено от Pitometsu

Посидел пару дней без интернета, а у меня тут вся лента заспамлена твоими высерами. И главное, нихрена ведь непонятно! Что это за неведомая хрень у тебя в /run ? Он разве не в RAM монтируется? Впрочем пофиг. Главное, всё заработало. И да, на устройствах с оптимусом основная карта - встроенная, так что да, библиотеки nvidia должны быть доступны только для bumblebee, но никак не общесистемно.

eternal_sorrow ★★★★★
()
Ответ на: комментарий от eternal_sorrow

про /run, если интересно

это фича NixOS, транзакционность, там собранные пакеты лежат, на которые потом в систему симлинки по необхдимости создаются.

Pitometsu
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.