Fondacion Latinoamericana për softin e lirë publikoi një version të plotë të lirë të bërthamës Linux 6.12 – Linux-libre 6.12-gnu, të pastër nga elementët e firmware dhe drejtuesve që përmbajnë komponente ose copa kodi të pa-lira, për të cilat përdorimi është i kufizuar nga prodhuesi. Për më tepër, Linux-libre ndalon funksionet e bërthamës për ngarkimin e komponenteve të jashtme të pa-lira, që nuk janë të përfshira në shpërndarjen e bërthamës, dhe heq përmendjen e përdorimit të komponenteve të pa-lira nga dokumentacioni.
Për pastrimin e bërthamës nga pjesët e pa-lira, projekti Linux-libre krijoi një skritp shell universale, i cili përmban mijëra shabllone për të përcaktuar praninë e përfshirjeve binare dhe për të përjashtuar rreme alarmin. Janë gjithashtu të disponueshme për shkarkim patch-e të gatshme, të krijuara në bazë të përdorimit të skritpit të përmendur më sipër. Bërthama Linux-libre rekomandohet për t'u përdorur në shpërndarjet që përputhen me kriteret e Fondacionit të Softuerit të Lirë për ndërtimin e shpërndarjeve të plota GNU/Linux. Për shembull, Linux-libre përdoret në shpërndarjet si Dragora Linux, Trisquel, Dyne:Bolic, gNewSense, Parabola, Musix dhe Kongoni.
Në daljen Linux-libre 6.12-gnu është shtuar kodi për pastrimin e blob-eve në drejtuesit për SoC CPM/QE QMC, çipat wireless Realtek 8852BE-VT, adaptuesit bluetooth Amlogic, adaptuesit rrjetë amcc qt2025, sensorët aw96103/aw96105 dhe kodekët TI TLV320AIC31XX. Është kryer pastrim shtesë i blob-eve në drejtuesit për kontrollet xHCI Renesas dhe Intel ISH (Integrated Sensor Hub) HID. Kodi për heqjen e blob-eve në drejtuesit dhe në sistemet MHI PCI host, Adreno 620/621, r8169, Qualcomm q6v5 remoteproc, rtw8852c, rtw8922a, si dhe në skedarët dts për çipat ARM54 TI PRU dhe Qualcomm është përditësuar. Pastrimi i drejtuesve për kartat wireless ks7010 dhe sistemin audio Intel SkyLake është ndërprerë, pasi këta drejtues janë hequr nga përbërja e bërthamës.
Shënohet veçanërisht identifikimi në tekstet burimore të një prej drejtuesve të kodit të objektit të ekzekutueshëm, i krijuar nga tekste burimore të papublikuara dhe i inkorporuar në formën e një sekuence numrash hekso. Drejtuesi problematik nuk përmendet qartë, por, sipas ndryshimeve, flitet për praninë e mikrokodit të shader-it në skedarin gfx_v9_4_3_cleaner_shader.h, që është pjesë e drejtuesit AMDGPU. Injektimi i parë i tillë u identifikua në kernelin 6.11 dhe më pas u propozuar nga një nga zhvilluesit për t'u fshirë, pasi tekstet burimore nuk ishin ofruar (ndodhi një situatë furnizimi nën licencën GPL për një program që është dispozita vetëm në formë binare). Megjithatë, në kernelin 6.12, kodi binar i përmendur u ruajt, dhe në atë drejtues u shtua një injectim tjetër i ngjashëm.
Përveç kësaj, në njoftimin e Linux-libre 6.12 përmenden edhe dy ngjarje të tjera:
- Përfshirja në kernel propozohet si një rregullim që bllokon drejtuesit për laptopët Tuxedo nga qasja në nën-sistemet e kernelit, që janë të disponueshme vetëm për kodin nën licencën GPLv2 (EXPORT_SYMBOL_GPL). Mundësia e bllokimit u krijua fillimisht për të kufizuar lidhjen e drejtuesve pronësorë me komponentët e kernelit Linux, të eksportuar vetëm për modulë nën licencën GPLv2, por kjo përmbushet me sukses përmes krijimit të moduleve ndërmjetësuese, që transmetojnë qasjen e drejtuesit pronësor në API të nevojshme të kernelit. Në rastin e drejtuesve Tuxedo, situata është e kundërt - përkundër faktit se drejtuesit Tuxedo zhvillohen ndaras nga kernel, ata ofrohen nën licencën GPLv3, e cila nga njëra anë nuk është e përputhshme me GPLv2, por nga ana tjetër mbron më shumë liri, për shembull, mbron nga tivoizimi.
Vërehet se kompanitë Tuxedo e kanë propozuar prej kohësh ndryshimin e licencës për drejtuesit e tyre, por ata vazhdojnë të ofrojnë kodin nën licencën GPLv3 dhe në të njëjtën kohë tregojnë në kodin e drejtuesit makron ‘MODULE_LICENSE(«GPL»)’ në vend të ‘MODULE_LICENSE(«GPL v3»)’ për të fituar qasje në të gjitha nën-sistemet e kernelit. Kompania Tuxedo pranoi kritikën dhe ndryshoi licencën në GPLv2+ për disa nga drejtuesit e saj. Ndryshimi u aplikua në drejtuesit gxtp7380, ite_8291, ite_8291_lb, ite_8297, ite_8297, stk8321, tuxedo_compatibility_check, tuxedo_nb02_nvidia_power_ctrl dhe tuxedo_tuxi. Më shumë se një duzinë drejtuesish ende nuk janë ripërtërirë në licencë, pasi për ndryshimin e licencës mbi ta kërkohet miratimi nga zhvillues të jashtëm.
Përdorimi në kodin ‘MODULE_LICENSE(«GPL»)’ në vend të ‘MODULE_LICENSE(«GPL v3»)’ përfaqësuesi i Tuxedo e shpjegoi me mungesën e një shpjegimi të qartë në dokumentacionin e kernelit, se etiketimi «GPL» nuk mund të përdoret për licencën GPLv3. Ai gjithashtu e përmendi se kompanisë i është mbajtur të dërgojë driverat e saj në përbërjen kryesore të kernelit Linux dhe për këtë arsye po punon për rrewrite-n e tyre të plotë nën licencën GPLv2, duke marrë parasysh kërkesat për komponentët e kernelit.
- Zhvilluesit e kernelit po diskutojnë iniciativën për shtimin e flag-ut X86_BUG_OLD_MICROCODE, i cili sinjalizon se në sistem po përdoret një version jo të fundit të mikrokodit të CPU-së. Me vendosjen e këtij flag-u, sistemi sugjerohet të merret parasysh si të ketë potenciale dobësi të pazgjidhura. Përpjekjet për të barazuar gjendjen e sistemit me mikrokod të papërditësuar me situatën e pasjes së dobësive të vërteta të pazgjidhura në kod shkaktuan kritika nga një nga mbështetësit e projektit Linux-libre.
Sipas një mbështetësi të Linux-libre, kernel-i nuk duhet të kufizojë të drejtën e përdoruesve për të mos instaluar firmware dhe mikrokod të papërpunuar në pajisjen e tyre. Bëhet fjalë për pranimin e dobësive në lidhje me rregullimet specifike në versione të caktuara të firmware-it, dhe jo për të quajtur dobësitë çdo sistem që nuk ka instaluar mikrokodin më të fundit, pa analizuar nëse në këtë sistem shfaqen dobësi dhe nëse firmware-i më i fundit përmban rregullimet e dobësive.
Burimi: opennet.ru
