Не пытайтесь установить тестирование непосредственно на стабильной версии! или вы получите FrankenDebian(в лучшем случае )или потеряете много пакетов из-за нереалистичных зависимостей.
Хорошей новостью является то, что эти обновленные пакеты доступны вstretch-backports
. Меса Debian претерпела несколько изменений упаковки при тестировании, а также в бэкпортах stretch -, связанных с независимой библиотекой диспетчеризации GL , что сделало это -нетривиальным. Кроме того, поскольку вы используете мультиархив -с пакетами amd64
и i386
, эти пакеты должны быть обновлены синхронно , иначе вы получите некоторые ошибки, которые вы видели.
Таким образом, я не могу сказать точную команду, как обновить только mesa, не обновляя все (, что вы должны не делать:stretch-backports
не имеет поддержки безопасности ), но я даст процедуру.
Сначала следуйте инструкциям Debian о том, как правильно добавить stretch-backports
. Я приведу здесь упрощенную сводку:
# echo 'deb http://deb.debian.org/debian/ stretch-backports main contrib non-free' >> /etc/apt/sources.list.d/stretch-backports.list
# apt-get update
И НЕОБХОДИМО удалить записи buster/testing/sid, если вы их добавили.
Некоторые пакеты могли исчезнуть (, например libgles1-mesa
больше не предоставляются ), а другие появились. Вам нужно будет обновить все задействованные пакеты с помощью одной единственной команды apt -get, поэтому сначала вам нужно просмотреть наиболее задействованные пакеты с их текущей версией и позволить распознавателю зависимостей выбрать отсутствующие. части (например:libdrm2
). Вы должны делать что-то вручную, а не в скрипте, потому что вы должны проверить, ничего ли плохого не происходит (например, apt-get
предлагает удалить 100 пакетов ). Что-то вроде этого:
dpkg -l | fgrep 13.0.6-1+b2
или даже:
dpkg -l | awk '/^.i/ && $3 == "13.0.6-1+b2" { print $2 }' | xargs
, чтобы получить основную часть списка пакетов.ВНИМАНИЕ, что для установленных мультиархивных пакетов -вы должны предоставить как пакет amd64
, так и пакет (, который установлен по умолчанию, поэтому не требует дополнительного :amd64
, но вы можете оставить его из вырезания/вставки ). и снова тот же i386
пакет (с добавлением :i386
к имени пакета ), если он также был найден в предыдущей команде dpkg
. Таким образом, окончательная команда установки, вероятно, должна выглядеть как:
apt-get -t stretch-backports install libgl1-mesa-dri:amd64 libgl1-mesa-dri:i386 mesa-opencl-icd:amd64 mesa-opencl-icd:i386...
Вы поняли. Теперь проверьте количество предлагаемых пакетов для удаления . Если есть некоторые пакеты, связанные с mesa, которые нужно удалить (, например :libgles1-mesa
), это нормально, если большинство из них или много несвязанных пакетов предлагается удалить, прервите и подумайте, чего может не хватать. Конечно, в качестве обновления (должны быть предложены многие другие, например,:libdrm2
и libdrm2:i386
). Вероятно, это те, которые все еще могут вызывать проблемы из-за множественной -арки, поэтому вам, возможно, придется добавить их вручную дважды (по одному разу для каждой арки )в растущий список -вкладышей, если apt-get
нет. т достаточно умен.
Как предложил @Stephen Kitt, другие полезные и связанные пакеты, улучшающие использование аппаратного обеспечения, включая поддержку графики, также доступны в расширенных -бэкпортах и, вероятно, также должны быть обновлены. Среди них:
linux-image-amd64
который в данный момент будет тянутьlinux-image-4.19.0-0.bpo.2-amd64
firmware-misc-nonfree
, которые могут включать обновленную графическую поддержку и в любом случае, которые, возможно, придется обновить как (, возможно, скрытый )для более нового ядра для достижения наилучших результатов.