Хлопотуны, мудрователи, все за мною! За мною! (Тимон).

Chimera Linux получает проприетарные драйверы NVIDIA, работающие на musl


Chimera Linux получает проприетарные драйверы NVIDIA, работающие на musl

Проект Chimera Linux объявил о прогрессе в работе проприетарных графических драйверов NVIDIA в дистрибутиве Linux на основе musl, что решает давнюю проблему совместимости для пользователей графических процессоров NVIDIA в системах Linux, использующих musl вместо glibc.

До сих пор совместимость с проприетарными драйверами NVIDIA была серьёзным препятствием для Chimera Linux, поскольку проприетарные пользовательские библиотеки NVIDIA созданы на основе glibc, что делает их несовместимыми с musl без внесения изменений. Несмотря на то, что существуют альтернативы с открытым исходным кодом, такие как Nouveau и NVK, они имеют существенные ограничения по производительности, особенно на старом оборудовании NVIDIA.

Но теперь экспериментальные пакеты доступны в виде ожидающего рассмотрения запроса на включение как для устаревшей ветки драйверов NVIDIA 580, так и для более новой серии 620. Реализация ориентирована на архитектуры x86_64 и AArch64, хотя последняя была протестирована в ограниченном объеме.

По словам разработчиков, первым шагом стало переключение Chimera Linux на GLVND, что позволяет использовать в одной системе несколько реализаций OpenGL, включая Mesa и проприетарные драйверы NVIDIA. Это особенно полезно для ноутбуков с гибридными графическими конфигурациями.

Затем разработчики использовали gcompat — уровень совместимости, предоставляющий отдельные функции glibc, отсутствующие в musl. Однако библиотеки NVIDIA требовали дополнительных изменений, поэтому в проекте также использовался patchelf для настройки зависимостей библиотек и добавления необходимых компонентов для обеспечения совместимости.

Еще одним препятствием были непрямые функции GNU, поддерживаемые glibc, но исключенные из musl. Чтобы решить эту проблему, разработчики представили пакет musl с исправлениями под названием musl-nvidia, в котором была добавлена поддержка необходимых перемещений.

Дальнейшее тестирование выявило проблемы с инициализацией мьютексов, поскольку проприетарные библиотеки NVIDIA предполагают определенное поведение, характерное для glibc, которое musl реализует иначе. Чтобы решить эту проблему, была разработана отдельная библиотека совместимости для трансляции соответствующих операций с мьютексами, что позволило устранить зависания графических приложений во время первоначального тестирования.

С этими изменениями проект успешно протестировал драйвер NVIDIA 580 на видеокарте GeForce GTX 980 Ti. Более новый драйвер 620 также работал с RTX 3070 Ti, а предварительное тестирование показало, что он хотя бы частично работает на оборудовании AArch64.

Однако, несмотря на эти результаты, проприетарная поддержка NVIDIA в Chimera Linux остается экспериментальной. Разработчики признают, что пакет нуждается в доработке и дополнительном тестировании на оборудовании, прежде чем его можно будет использовать повсеместно.

Подробнее об этом читайте в анонсе.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Редактор: AndreyEx

Если статья понравилась, поделитесь ей в социальных сетях

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Это может быть вам интересно


Спасибо!

Теперь редакторы в курсе.

Прокрутить страницу до начала