Латинскоамериканският Фонд за свободен софтуер с малко закъснение публикува напълно свободна версия на ядрото Linux 5.16 — Linux-libre 5.16-gnu, почистена от елементи на фърмуер и драйвери, съдържащи несвободни компоненти или участъци от код, чийто обхват е ограничен от производителя. Освен това, Linux-libre деактивира функции на ядрото, свързани с зареждането на несвободни компоненти, които не са включени в доставката на ядрото, и премахва споменаванията за използване на несвободни компоненти от документацията.
За почистването на ядрото от несвободни части в рамките на проекта Linux-libre е създаден универсален shell-скрипт, който съдържа хиляди шаблони за определяне на наличието на бинарни вмъквания и изключване на фалшиви сработвания. Също така са налични за изтегляне готови патчи, създадени на основата на използването на по-горе споменатия скрипт. Ядрото Linux-libre е препоръчително за използване в дистрибутиви, отговарящи на критериите на Фонда СПО за изграждане на напълно свободни дистрибутиви GNU/Linux. Например, ядрото Linux-libre се използва в такива дистрибутиви като Dragora Linux, Trisquel, Dyne:Bolic, gNewSense, Parabola, Musix и Kongoni.
В изданието Linux-libre 5.16-gnu е деактивирано зареждането на блобове в новите драйвери за безжични чипове (mt7921s и rtw89/8852a), сензорни екрани (ili210x), звукови чипове (qdsp6) и dsp i.MX, както и в файловете за devicetree за aarch64-чиповете на Qualcomm. В допълнение към предложената в ядрото системна повикване „firmware_request_builtin“, в Linux-libre е предложена обратно функция „firmware_reject_builtin“. В скриптовете за почистване на кода са унифицирани функциите за деактивиране на request_firmware и вариантите _nowarn/_builtin.
Източник: opennet.ru
