
Если вы относитесь к тем, кто тщательно следит за каждой деталью своей системы и обеспокоены тем, что все программное обеспечение, работающее на вашем компьютере, действительно бесплатно, прибытие de GNU Linux-либер 6.18 Вам будет очень интересно. Эта новая версия известного «разблокированного» ядра основана на Linux 6.18, но прошла тщательную очистку от любых следов сторонних прошивок и микрокода.
В следующих строках мы разберем Все новые возможности GNU Linux-libre 6.18Мы рассмотрим, какие изменения оно вносит по сравнению с официальным ядром, какие драйверы затронуты, как оно распространяется, какие проекты его упаковывают и какова философия этой работы. Мы также обсудим роль его дружелюбного пингвина Freedo, его отношения с FSF и то, почему это ядро стало эталоном для полностью свободных дистрибутивов.
Основные новые возможности GNU Linux-libre 6.18 по сравнению с Linux 6.18
Новая версия Часть ядра GNU Linux-libre 6.18-gnu Linux 6.18Это та самая ветка, которую Линус Торвальдс только что объявил стабильной, и которая, судя по всему, станет следующим эталонным ядром LTS в экосистеме Linux. Это означает, что она унаследует все общие улучшения: доработанную производительность, новые внутренние функции, расширенную поддержку оборудования и стандартные исправления ошибок.
Однако команда GNU/Linux-libre отвечает за реализацию набора скрипты и инструменты очистки («деблоббинг») которые сканируют исходный код на предмет проблемных элементов: драйверов, загружающих двоичные прошивки, вызовов во время выполнения несвободного микрокода, ссылок в документации на внешние двоичные объекты и даже упоминаний двоичных файлов в файлах дерева устройств различных архитектур.
В результате этого процесса в GNU Linux-libre 6.18 были выявлены и нейтрализованы или удалены следующие ошибки: новые контроллеры и фрагменты кода которые в официальном дереве ядра зависят от двоичных двоичных объектов. Эта работа затрагивает не только вновь добавленные драйверы, но и существующие, механизм загрузки прошивки которых изменился в этой версии.
В то же время версия 6.18-gnu включает в себя Оптимизации Linux 6.18Эти улучшения включают в себя повышение общей производительности, продолжающуюся работу над Apple Silicon (M2 Pro/Max/Ultra), дальнейшую поддержку платформы Intel Wildcat Lake, интеграцию нового кода «Sheaves», активацию fsck online для XFS по умолчанию и улучшенную поддержку тактильных ощущений для сенсорных панелей, среди прочего. И всё это, конечно же, при сохранении основного принципа проекта: отсутствие проприетарного программного обеспечения.
Сердце проекта: ядро без блобов
Цель существования GNU Linux-libre — предложить Linux-совместимое, но полностью бесплатное ядроРазработано для использования в системах, соответствующих Руководству по распространению свободного программного обеспечения (FSDG) FSF. Это подразумевает удаление любых компонентов, которые не распространяются в виде модифицируемого исходного кода или подпадают под действие ограничительных лицензий.
На практике это означает удаление или деактивацию драйверы, прошивки, блоки, упакованные как данные, скрипты, требующие внешних двоичных файлов и вызовы проприетарного ПО во время выполнения. Комментарии и документация, которые служат «приманками» для пользователей, побуждающих их загружать несвободные компоненты, также удаляются, предотвращая «приманку» для пользователей проприетарного ПО.
Проект сосредоточен на минимальные измененияПроблемные компоненты удаляются или нейтрализуются, но не предпринимаются попытки переписать их или предоставить бесплатные замены, сохраняющие ту же функциональность. Цель — гарантировать свободу системы, даже если это означает, что определённое оборудование станет неработоспособным при отсутствии бесплатных альтернатив.
Эта продолжающаяся работа началась в рамках дистрибутива gNewSense, возглавляемого и названного Джеффом Мо, была передана FSF Latin America в 2008 году, а с 2012 года Официально является частью проекта GNU.Сегодня он стал основой множества полностью свободных операционных систем, сертифицированных FSF.
Новые драйверы очищены в GNU Linux-libre 6.18
Одной из наиболее заметных частей работы над GNU Linux-libre 6.18 является очистка драйверы, недавно включенные в ядро Linux 6.18 которые пытаются загрузить файлы прошивки. Если оставить всё как есть, они нарушат чистоту системы, требуя несвободных двоичных файлов.
В этой версии команда выявил и «заблокировал» несколько новых водителей которые в официальном дереве полагаются на фирменную прошивку для корректной работы:
- Контроллеры FourSemiОчищены драйвер цифрового аудиоусилителя FourSemi и соответствующая библиотека (включая модели FS2104/5S), которые в стандартной версии Linux пытаются загрузить двоичные объекты для управления определенными режимами и функциями.
- Драйвер TI TAS2783Драйвер для усилителя звука Texas Instruments TAS2783, также новый для этой ветки, включает в себя логику загрузки прошивки, которая была отключена, чтобы предотвратить запрос несвободных двоичных файлов.
- Последовательный процессор Qualcomm GENIДвижок серии GENI компании Qualcomm, отвечающий за управление интерфейсами связи на платформах этого бренда, также попытался бы загрузить блоки, если бы в него не вмешались, поэтому он был подвергнут процессу деблоббинга.
Во всех этих случаях результат таков: драйвер перестает заявлять о наличии фирменной прошивкиВ зависимости от того, насколько драйвер зависит от этого микрокода, практическая функциональность устройства может быть весьма ограничена или вообще непригодна для использования в среде GNU Linux-libre, но это соответствует принципу не подталкивания пользователя к использованию проприетарных компонентов.
Изменения в существующих драйверах: Nova-Core, Intel Xe и др.
В дополнение к новым драйверам, GNU Linux-libre 6.18 пересматривает поведение драйверы уже присутствовали в предыдущих версиях Механизм управления прошивками изменился в Linux 6.18. Эти изменения необходимы для предотвращения появления в ядре ошибок по мере развития основного дерева.
Среди примечательных случаевмы нашли:
- Nova-Core, драйвер Rust для NVIDIAНовый драйвер Nova-Core с открытым исходным кодом, написанный на Rust, полностью использует графический процессор NVIDIA (GSP). Без фирменной прошивки GSP драйвер просто не будет работать. GNU/Linux-libre адаптирует свои скрипты так, чтобы блокировать загрузку этого микрокода, фактически делая Nova-Core неработоспособным. неработоспособен без пятенно оно сохраняет свободу системы.
- Intel Xe следующего поколенияСовременный драйвер Intel Xe использует микроконтроллер GuC и его двоичную прошивку для управления очередями, планирования и других критически важных функций. Linux-libre 6.18 снова ужесточает процесс очистки, чтобы предотвратить запрос или загрузку этой прошивки, что также делает драйвер практически бесполезным без бесплатных альтернатив.
- TI PRU EthernetКонтроллер Ethernet на базе PRU (программируемого устройства реального времени) компании Texas Instruments также претерпел изменения в своей логике обработки BLOB-объектов. GNU/Linux-libre обновляет деблоббинг, чтобы гарантировать, что На этих SoC не загружается фирменная прошивка..
- Marvell WiFi-ExИзменения, внесенные в официальное дерево семейства WiFi-Ex компании Marvell, привели к необходимости пересмотра очистки, что снова заблокировало любые ссылки или попытки загрузить двоичные прошивки для этих беспроводных адаптеров.
Эти корректировки показывают, что процесс очистки непрерывный и реактивныйКаждый раз, когда изменяется код драйвера, который ранее полагался на BLOB-объекты, команда Linux-libre должна снова проверить этот код, чтобы убедиться, что никакой новый проприетарный механизм загрузки прошивки «не проскочит».
Драйверы и элементы удалены или перемещены
Речь идёт не только о новых очистках или улучшениях. В GNU/Linux-libre 6.18 также есть случаи, когда само ядро Linux удаляет определённые компоненты, что позволяет упростить процесс деблоббинга.
Ярким примером является Драйвер FM-радио TI WL1273Этот драйвер, который в предыдущих версиях требовал особой очистки из-за своей зависимости от двоичной прошивки, полностью удалён из официального дерева Linux 6.18. Следовательно, в GNU Linux-libre 6.18 вся логика деблоббинга, связанная с этим драйвером, также может быть удалена, что снижает сложность набора скриптов.
Другой поразительный случай – это случай Драйвер Lantiq GSWIP, драйвер гигабитного коммутатора для некоторых платформ. В Linux 6.18 его местоположение в дереве исходного кода было изменено, что потребовало корректировки путей и шаблонов, используемых системой очистки проекта для поиска и обработки соответствующих фрагментов.
Эти изменения в местоположении и удалении отражают то, как основное ядро постоянно реорганизуетсяи как GNU Linux-libre должен оставаться актуальным, не только отслеживая новые объекты, но и адаптируя инструменты к изменяющейся структуре кодового дерева.
Очистить Devicetree для Qualcomm, Mediatek и TI на ARM64
Очистка не ограничивается кодом C драйверов. В этой версии одной из самых деликатных задач стала проверка новые файлы devicetree (DT) для платформ ARM64, которые описывают аппаратное обеспечение систем на базе Qualcomm, Mediatek и Texas Instruments.
В Linux 6.18 некоторые из этих деревьев устройств включают явные ссылки на блоки прошивкиПути к двоичным файлам или свойства, указывающие на необходимость использования несвободного микрокода для определённых компонентов. Если оставить всё как есть, простое использование этих DT может подтолкнуть пользователя к поиску и загрузке проприетарных компонентов.
GNU Linux-libre 6.18 заботится об «очистке» этих файлов, удаляя или изменяя ссылки на двоичные файлы Qualcomm, Mediatek и TI в архитектуре ARM64. Это гарантирует, что свободное ядро не будет… выступать в качестве вектора рекомендаций несвободного программного обеспечения, соблюдая тем самым руководящие принципы FSF.
Как получить GNU Linux-libre 6.18
Проект предлагает несколько официальных каналов для Загрузите и используйте GNU Linux-libre 6.18-gnu, как в виде исходного кода, так и в виде бинарных пакетов, готовых к установке на популярные дистрибутивы.
С одной стороны, исходный код Его можно получить через Git из репозитория, поддерживаемого проектом:
- Git-репозиторий релизов: git://linux-libre.fsfla.org/releases.git с тегами ниже
scripts,sourcesylogsдля версии v6.18-gnu.
Более того, вскоре после анонса версии они стали доступны предварительно сжатые tar-архивы С официального сайта FSFLA:
- https://www.fsfla.org/selibre/linux-libre/download/releases/ (ubicación habitual de los tarballs de cada versión).
Те, кто предпочитает не компилировать ядро вручную, могут прибегнуть к подготовленные бинарные пакеты по связанным проектам:
- Фриш: предлагает готовые к использованию пакеты .deb для дистрибутивов на базе Debian и производных от него, с уже скомпилированным ядром GNU Linux-libre.
- Свобода оборотов в минуту: предоставляет пакеты .rpm для Red Hat, Fedora и производных систем, которые хотят использовать это бесплатное ядро.
Таким образом, пользователи могут выбирать между скомпилируйте свое собственное ядро непосредственно из исходного кода или установить один из готовых пакетов, интегрировав его со стандартным ядром вашего дистрибутива или заменив его.
Дистрибутивы и экосистема вокруг Linux-libre
GNU Linux-libre — это столп, на котором построены многие полностью бесплатные дистрибутивы Одобрено FSF, например, Trisquel и PureOS. Эти дистрибутивы используют это ядро, чтобы гарантировать соответствие всей системы самым строгим требованиям к свободному программному обеспечению.
Многие из них предлагают заранее подготовленные изображения с последняя версия Linux-libre или, по крайней мере, с близкой веткой. В других случаях они позволяют выбрать это ядро из своих репозиториев или через дополнительные репозитории, чтобы пользователь мог заменить стандартное ядро на ядро без блобов, не меняя дистрибутивы.
Для администраторов и энтузиастов GNU Linux-libre 6.18 также может быть установлен на почти любое обычное распределениеПросто скомпилируйте его или установите пакеты Freesh/RPM Freedom и настройте менеджер загрузки на выбор этого ядра при запуске системы. Это создаёт среду, гораздо более соответствующую принципам свободного программного обеспечения, даже в дистрибутивах, которые по умолчанию включают несвободные компоненты.
Что именно представляет собой GNU Linux-libre (и чем он не является)
Сам проект подчеркивает, что GNU Linux-libre — это, прежде всего, модифицированная версия ядра LinuxЭто ядро разработано для использования в системах GNU, стремящихся к полной свободе. Цель состоит в том, чтобы любой дистрибутив, соответствующий требованиям FSDG FSF, мог использовать это ядро, будучи уверенным в отсутствии в нём фрагментов кода или ссылок, которые могли бы привести к установке проприетарного кода.
В их документации объясняется, что несвободные компоненты удаляются независимо от того, являются ли они замаскированный под исходный код (но на самом деле это встроенные BLOB-объекты), как если бы они были распределены по отдельным файлам. Кроме того, запросы к проприетарным прошивкам во время выполнения отключаются, а руководства и комментарии, указывающие на несвободные ресурсы, удаляются.
Однако проект, Переписывать эти компоненты не предлагается. Они также не предлагают бесплатные альтернативные драйверы для замены проприетарных. Подход минималистский: несвободное ПО удаляется, остальное остаётся практически нетронутым, а другие инициативы поощряются к разработке бесплатных замен, когда это возможно. Более того, многие устройства, всё ещё зависящие от BLOB-объектов, документируются на таких сайтах, как LibrePlanet, с целью координации усилий по их выпуску в будущем.
Наконец, хотя талисманом является пингвин, разработчики настаивают, что роль проекта GNU и FSF в построении полной системы гораздо больше, и бесплатное ядро — это всего лишь еще одна часть в идеале полностью свободной системы.
Объединяя все технические улучшения, унаследованные от Linux 6.18, с тщательной очисткой прошивки, драйверов и дерева устройств, GNU/Linux-libre 6.18 укрепляет свои позиции как очень мощного решения для тех, кто не готов жертвовать свободой программного обеспечения. От новых оптимизированных драйверов для цифрового звука и движков серии Qualcomm до доработок в драйверах графических процессоров, таких как Nova-Core и Intel Xe, очистки платформ ARM64 и наличия пакетов для различных дистрибутивов, эта версия демонстрирует, что можно оставаться на переднем крае ядра, не отказываясь от принципа отказа от загрузки ненужных компонентов. нет проприетарного двоичного файла.