Шмель 16.04: nvidia-375 зависит от xserver-xorg-legacy
Я обновил свои пакеты сегодня, и теперь я думаю, что у меня возникла эта проблема: Шмель: [ОШИБКА] Не удается получить доступ к вторичному графическому процессору - ошибка: [XORG] (EE)
Рекомендуемое решение - удалить xserver-xorg-legacy. Однако теперь nvidia-375, похоже, зависит от xserver-xorg-legacy.
Я хочу продолжать использовать шмеля, потому что хочу иметь возможность активировать и деактивировать мою дискретную видеокарту без перезапуска и продолжать использовать графический интерфейс, даже если что-то не так с драйвером NVIDIA.
Есть ли способ заставить nvidia-375 работать с шмелем, или мне придется перейти на более старую версию драйвера nvidia?
РЕДАКТИРОВАТЬ: я нашел то, что кажется решением
2 ответа
Эти инструкции выглядят точными: http://www.webupd8.org/2016/08/how-to-install-and-configure-bumblebee.html
В моем случае, поскольку у меня уже была в основном работающая установка, я сделал это:
Мое решение
Добавьте шмеля / тестирование PPA
sudo add-apt-repository ppa:bumblebee/testing sudo apt-get update
Используйте Synaptic для обновления Bumblebee, сохраняя мой существующий /etc/bumblebee/bumblebee.conf
Добавьте следующие строки в /etc/bumblebee/bumblebee.conf
# Xorg binary to run XorgBinary=/usr/lib/xorg/Xorg
Сразу после строк
# Directory with a dummy config file to pass as a -configdir to secondary X XorgConfDir=/etc/bumblebee/xorg.conf.d
Затем сохраните и закройте
- Перезагрузите компьютер, на всякий случай
Убедитесь, что все на самом деле работает, используя
optirun glxinfo
И, видя, что он выводит что-то другое, чем раньше, даже если используется дважды подряд
Заметки
Заключение этого сообщения об ошибке привело меня к выводу, что сейчас это было правильное решение: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=815888
У PPA есть довольно пугающая предупреждающая табличка:
Если вы не разработчик, вряд ли вы захотите использовать этот PPA. Используйте ppa:bumblebee/stable, если вы обычный пользователь.
Вещи могут сломать вашу систему в этом PPA.
Однако в шмеле / конюшне, похоже, нет Xenial (16.04), так что это не вариант.
Как вы сказали в своем ответе, вы можете добавить тестовое ppa. Второй способ - просто удалить xserver-xorg-legacy и использовать стабильный ppa:
Сначала удалите xserver-xorg-legacy, не касаясь зависимых пакетов:
sudo dpkg -r --force-depends xserver-xorg-legacy
Хорошо, Шмель снова работает. Но apt выдаст вам ошибки из-за отсутствия зависимостей. Это можно исправить, создав пакет-пустышку для xserver-xorg-legacy с использованием эквивалентов. Сначала мы создадим файл конфигурации, используя equ-control:
equivs-control xserver-xorg-legacy
Это создаст файл конфигурации для нового пакета в текущем каталоге. Вы можете использовать nano для редактирования этого:
nano xserver-xorg-legacy
Содержимое файла должно выглядеть так:
### Commented entries have reasonable defaults.
### Uncomment to edit them.
# Source: <source package name; defaults to package name>
Section: misc
Priority: optional
# Homepage: <enter URL here; no default>
Standards-Version: 3.9.2
Package: xserver-xorg-legacy
Version: 2:1.18.4-1ubuntu0.2
# Maintainer: Your Name <[email protected]>
# Pre-Depends: <comma-separated list of packages>
# Depends: <comma-separated list of packages>
# Recommends: <comma-separated list of packages>
# Suggests: <comma-separated list of packages>
# Provides: <comma-separated list of packages>
# Replaces: <comma-separated list of packages>
# Architecture: all
# Multi-Arch: <one of: foreign|same|allowed>
# Copyright: <copyright file; defaults to GPL2>
# Changelog: <changelog file; defaults to a generic changelog>
# Readme: <README.Debian file; defaults to a generic one>
# Extra-Files: <comma-separated list of additional files for the doc directory>
# Files: <pair of space-separated paths; First is file to include, second is destination>
# <more pairs, if there's more than one file to include. Notice the starting space>
Description: Dummy package for nvidia-375.66 update
This Package does nothing... it just exists...
На данный момент важно указать имя пакета:
Package: xserver-xorg-legacy
И что вам нужно подготовить версию так, чтобы 2: 1.18.4-0 ubuntu0.2 стал 2: 1.18.4-1 ubuntu0.2
Если вы закончили с вашей конфигурацией, вы должны создать пакет из вашей конфигурации:
equivs-build xserver-xorg-legacy
Это создаст файл пакета с указанным именем и версией. В моем случае это был xserver-xorg-legacy_1.18.4-1ubuntu0.2_all.deb
Хорошо, давайте установим его с помощью dpkg:
sudo dpkg -i xserver-xorg-legacy_1.18.4-1ubuntu0.2_all.deb
Это оно...
xserver-xorg-legacy больше ничего не делает и apt счастлив без отсутствующих зависимостей.
Удачи;-)