
Om du är någon som noggrant tar hand om varje detalj i ditt system och är mån om att all programvara som körs på din maskin är helt gratis, ankomsten de GNU Linux-fri 6.18 Du kommer att vara väldigt intresserad. Den här nya utgåvan av den välkända "olåsta" kärnan är baserad på Linux 6.18, men har genomgått en grundlig rensning för att ta bort alla spår av proprietär firmware eller mikrokod.
I följande rader kommer vi att bryta ner Alla nya funktioner i GNU Linux-libre 6.18Vi kommer att gå igenom vilka förändringar den introducerar jämfört med den officiella kärnan, vilka drivrutiner som påverkas, hur den distribueras, vilka projekt som paketerar den och filosofin bakom detta arbete. Vi kommer också att diskutera rollen för dess vänliga pingvin, Freedo, dess relation till FSF och varför denna kärna har blivit ett riktmärke för 100 % gratis distributioner.
Viktiga nya funktioner i GNU Linux-libre 6.18 jämfört med Linux 6.18
Den nya versionen GNU Linux-libre 6.18-gnu kärndel Linux 6.18Det här är samma gren som Linus Torvalds just har deklarerat stabil och som enligt allt att döma kommer att bli nästa referens-LTS-kärna i Linux-ekosystemet. Det betyder att den ärver alla de allmänna förbättringarna: finjusterad prestanda, nya interna funktioner, utökat hårdvarustöd och de vanliga buggfixarna.
GNU/Linux-libre-teamet ansvarar dock för att implementera en uppsättning skript och rengöringsverktyg (”avblobbning”) som skannar källkoden efter problematiska element: drivrutiner som laddar binär firmware, runtime-anrop till icke-fri mikrokod, referenser i dokumentationen till externa blobbar och till och med omnämnanden av binärfiler i devicetree-filer med olika arkitekturer.
Som ett resultat av denna process har följande identifierats och neutraliserats eller tagits bort i GNU Linux-libre 6.18 nya kontroller och kodavsnitt som i det officiella kärnträdet är beroende av binära blobbar. Detta arbete påverkar inte bara nyligen tillagda drivrutiner, utan även befintliga vars inläsningsmekanism för firmware har ändrats i den här versionen.
Samtidigt innehåller version 6.18-gnu Linux 6.18-optimeringarDessa förbättringar inkluderar bättre prestanda överlag, pågående arbete med Apple Silicon (M2 Pro/Max/Ultra), fortsatt stöd för Intel Wildcat Lake-plattformen, integration av den nya "Sheaves"-koden, standardaktivering av fsck online för XFS och förbättrat haptiskt stöd för pekplattor, bland mycket annat. Allt detta, naturligtvis, samtidigt som projektets kärnprincip bibehålls: noll proprietär programvara.
Projektets hjärta: en blobfri kärna
Anledningen till att GNU Linux-libre finns är att erbjuda en Linux-kompatibel men helt fri kärnaUtformad för att vara en del av system som följer riktlinjerna för distribution av fri programvara (FSDG) från FSF. Detta innebär att alla komponenter som inte distribueras som modifierbar källkod eller som omfattas av restriktiva licenser tas bort.
I praktiken innebär detta att man tar bort eller inaktiverar drivrutiner, firmware, blobbar paketerade som data, skript som kräver externa binärfiler och runtime-anrop till proprietär firmware. Kommentarer och dokumentation som fungerar som "krokar" för att locka användare att ladda ner icke-fria komponenter tas också bort, vilket förhindrar "lockbete" mot proprietär programvara.
Projektets fokus ligger på minimala förändringarProblematiska delar tas bort eller neutraliseras, men inga försök görs att skriva om dem eller tillhandahålla gratis ersättningar som bibehåller samma funktionalitet. Målet är att garantera systemets frihet, även om det innebär att viss hårdvara blir obrukbar om inga gratis alternativ finns tillgängliga.
Denna pågående insats började inom gNewSense-distributionen, leddes och namngavs av Jeff Moe, togs över av FSF Latinamerika 2008, och sedan 2012, Det är officiellt en del av GNU-projektetIdag har det blivit grunden för ett flertal 100 % fria operativsystem som är certifierade av FSF.
Nya drivrutiner rensade i GNU Linux-libre 6.18
En av de mest synliga delarna av arbetet med GNU Linux-libre 6.18 är rensningen av Drivrutiner som nyligen integrerats i Linuxkärnan 6.18 som försöker ladda firmware-blobbar. Om de lämnas som de är, skulle de äventyra systemets renhet genom att kräva icke-fria binärfiler.
I den här versionen, laget har identifierat och "begränsat" flera nya förare som i det officiella trädet förlitar sig på proprietär firmware för att fungera korrekt:
- FourSemi-kontrollerDrivrutinen för den digitala ljudförstärkaren FourSemi och tillhörande bibliotek (inklusive FS2104/5S-modeller) rensas, vilket i standard Linux försöker ladda blobbar för att hantera vissa lägen och funktioner.
- Drivrutin TI TAS2783Drivrutinen för Texas Instruments TAS2783-högtalarförstärkaren, också ny inom den här grenen, innehåller en logik för laddning av firmware som har inaktiverats för att förhindra att den begär icke-fria binärfiler.
- Qualcomm GENI seriell motorQualcomms GENI-seriemotor, som ansvarar för att hantera kommunikationsgränssnitt på plattformar av detta märke, skulle också ha försökt ladda blobbar om den inte hade ingripits, så den har utsatts för deblobbingprocessen.
I alla dessa fall blir resultatet att drivrutinen slutar göra anspråk på proprietär firmwareBeroende på hur mycket drivrutinen är beroende av den mikrokoden kan enhetens praktiska funktionalitet vara mycket begränsad eller direkt oanvändbar under GNU Linux-libre, men detta respekterar förutsättningen att inte pressa användaren mot proprietära komponenter.
Justeringar av befintliga drivrutiner: Nova-Core, Intel Xe och mer
Utöver de nyligen ankomna drivrutinerna reviderar GNU Linux-libre 6.18 beteendet hos Drivrutiner som redan fanns i tidigare versioner vars hanteringsmekanism för firmware har ändrats i Linux 6.18. Dessa justeringar är nödvändiga för att hålla kärnan fri från blobbar allt eftersom huvudträdet utvecklas.
Bland de anmärkningsvärda fallen, vi hittar:
- Nova-Core, Rust-drivrutinen för NVIDIADen nya drivrutinen med öppen källkod, Nova-Core, skriven i Rust, förlitar sig helt på NVIDIA GPU System Processor (GSP). Utan den proprietära GSP-firmwaren fungerar drivrutinen helt enkelt inte. GNU/Linux-libre anpassar sina skript för att blockera inläsningen av denna mikrokod, vilket i praktiken gör Nova-Core obrukbar. inoperativ utan blobbarmen det bevarar systemets frihet.
- nästa generations Intel XeDen moderna Intel Xe-drivrutinen förlitar sig på GuC-mikrokontrollern och dess binära firmware för köhantering, schemaläggning och andra kritiska funktioner. Linux-libre 6.18 skärper återigen rensningsprocessen för att förhindra att denna firmware begärs eller laddas, vilket också gör drivrutinen praktiskt taget oanvändbar utan gratisalternativ.
- TI PRU EthernetDen PRU-baserade Ethernet-styrenheten (Programmable Real-time Unit) baserad på Texas Instruments har också genomgått ändringar i sin uppströms bloblogik. GNU/Linux-libre uppdaterar deblobbningen för att säkerställa att Proprietär firmware är inte laddad på dessa SoC:er.
- Marvell WiFi-ExDe ändringar som gjorts i det officiella trädet för Marvells WiFi-Ex-familj har tvingat fram en granskning av rensningen, vilket återigen blockerar alla referenser till eller försök att ladda upp binär firmware för dessa trådlösa adaptrar.
Dessa justeringar visar att rengöringsprocessen är kontinuerlig och reaktivVarje gång koden för en drivrutin som tidigare förlitade sig på blobs ändras måste Linux-libre-teamet granska den koden igen för att säkerställa att ingen ny proprietär mekanism för inläsning av firmware "slinker igenom".
Drivrutiner och element borttagna eller flyttade
Det handlar inte bara om nya rensningar eller justeringar. I GNU/Linux-libre 6.18 finns det också fall där Linuxkärnan själv har tagit bort vissa komponenter, vilket gör att förenkla avblobbningsprocessen.
Ett tydligt exempel är det av TI WL1273 FM-radiodrivrutinDenna drivrutin, som i tidigare versioner krävde specifik rensning på grund av sitt beroende av binär firmware, har tagits bort helt från det officiella Linux 6.18-trädet. Följaktligen kan all deblobbing-logik som är associerad med denna drivrutin också tas bort i GNU Linux-libre 6.18, vilket minskar komplexiteten i skriptuppsättningen.
Ett annat slående fall är det Lantiq GSWIP-drivrutin, en gigabit-switchdrivrutin för vissa plattformar. I Linux 6.18 har dess plats i källkodsträdet flyttats, vilket kräver justeringar av sökvägarna och mönstren som används av projektets rensningssystem för att lokalisera och bearbeta relevanta fragment.
Dessa förändringar i plats och borttagning återspeglar hur huvudkärnan omorganiseras ständigtoch hur GNU Linux-libre ska hålla sig uppdaterad, inte bara genom att spåra nya blobbar, utan också genom att anpassa verktygen till kodträdets föränderliga struktur.
Rengör Devicetree för Qualcomm, Mediatek och TI på ARM64
Rensningen är inte begränsad till drivrutinernas C-kod. I den här versionen har en av de mest känsliga uppgifterna varit att granska de nya devicetree-filerna (DT) för ARM64-plattformar, som beskriver hårdvaran i system baserade på Qualcomm, Mediatek och Texas Instruments.
I Linux 6.18 inkluderar flera av dessa enhetsträd explicita referenser till firmware-blobbarBinära filsökvägar eller egenskaper som indikerar behovet av icke-fri mikrokod för vissa komponenter. Om de lämnas oförändrade kan det hända att användaren måste söka efter och läsa in proprietära komponenter genom att helt enkelt använda dessa DT:er.
GNU Linux-libre 6.18 tar hand om att "rensa upp" dessa filer, tar bort eller modifierar referenser till Qualcomm-, Mediatek- och TI-binärfiler i ARM64-arkitekturen. Detta säkerställer att den fria kärnan inte fungera som en rekommendationsvektor av icke-fri programvara, och därmed respektera FSF:s riktlinjer.
Hur man får GNU Linux-libre 6.18
Projektet erbjuder flera officiella kanaler för Ladda ner och använd GNU Linux-libre 6.18-gnu, både i form av källkod och i binära paket redo att installeras på populära distributioner.
Å ena sidan, källkod Den kan erhållas via Git från repositoriet som underhålls av projektet:
- Git-arkiv för utgåvorgit://linux-libre.fsfla.org/releases.git med taggar under
scripts,sourcesylogsför version v6.18-gnu.
Dessutom, kort efter att versionen tillkännagavs, gjordes de tillgängliga förkomprimerade tarbollar Från den officiella FSFLA-webbplatsen:
- https://www.fsfla.org/selibre/linux-libre/download/releases/ (ubicación habitual de los tarballs de cada versión).
De som föredrar att inte kompilera kärnan manuellt kan använda förberedda binära paket av associerade projekt:
- Friskerbjuder färdiga .deb-paket för Debian-baserade och derivatdistributioner, med GNU Linux-libre-kärnan redan kompilerad.
- RPM-frihettillhandahåller .rpm-paket för Red Hat-, Fedora- och derivatbaserade system som vill använda denna fria kärna.
På så sätt kan användarna välja mellan kompilera din egen kärna direkt från källkoden eller installera ett av de färdiga paketen, integrera det med eller ersätta standardkärnan i din distribution.
Distributioner och ekosystem kring Linux-libre
GNU Linux-libre är den pelare som många är byggda på helt gratis distributioner Rekommenderas av FSF, såsom Trisquel och PureOS, bland andra. Dessa distributioner använder denna kärna för att säkerställa att hela systemet följer de striktaste riktlinjerna för fri programvara.
Många av dem erbjuder förberedda bilder med senaste versionen av Linux-libre eller åtminstone med en närbesläktad gren. I andra fall låter de dig välja denna kärna från deras repositorier eller genom ytterligare repositorier, så att användaren kan ersätta den generiska kärnan med en som är fri från blobbar utan att ändra distributioner.
För administratörer och entusiaster kan GNU Linux-libre 6.18 också installeras på nästan vilken konventionell distribution som helstKompilera det helt enkelt eller installera Freesh/RPM Freedom-paketen och konfigurera boot managern att välja denna kärna när systemet startas. Detta skapar en miljö som är mycket mer konsekvent med principerna för fri programvara, även i distributioner som inkluderar icke-fria komponenter som standard.
Vad exakt är GNU Linux-libre (och vad det inte är)
Projektet i sig betonar att GNU Linux-libre framför allt är en modifierad version av LinuxkärnanDenna kärna är utformad för användning på GNU-system som strävar efter att vara helt fria. Målet är att alla distributioner som vill följa FSF:s FSDG kan använda denna kärna med försäkran om att den inte innehåller några blobbar eller referenser som skulle leda till att användaren installerar proprietär kod.
Deras dokumentation förklarar att icke-fria komponenter tas bort oavsett om de är förklädd till källkod (men de är faktiskt inbäddade blobbar) som om de vore distribuerade i separata filer. Dessutom inaktiveras körtidsförfrågningar till proprietär firmware, och manualer eller kommentarer som pekar på icke-fria resurser rensas bort.
Projektet, dock, Det föreslås inte att dessa komponenter ska skrivas om De erbjuder inte heller gratis alternativa drivrutiner för att ersätta proprietära drivrutiner. Tillvägagångssättet är minimalistiskt: icke-fri programvara tas bort, resten förblir nästan intakt, och andra initiativ uppmuntras för att utveckla gratis ersättare när det är möjligt. Faktum är att många enheter som fortfarande är beroende av blobbar finns dokumenterade på webbplatser som LibrePlanet, med målet att samordna ansträngningarna för att släppa dem någon gång.
Slutligen, även om maskoten är en pingvin, insisterar utvecklarna på att GNU-projektets och FSF:s roll i konstruktionen av det kompletta systemet är mycket större, och den fria kärnan är bara ytterligare en del i idealet om ett helt fritt system.
Genom att kombinera alla tekniska förbättringar som ärvts från Linux 6.18 med den omfattande rensningen av firmware, drivrutiner och enhetsträd, befäster GNU/Linux-libre 6.18 sin position som ett mycket kraftfullt alternativ för de som inte vill kompromissa med programvarufriheten. Från de nya, strömlinjeformade drivrutinerna för digitalt ljud och Qualcomm-seriens motorer till justeringarna i GPU-drivrutiner som Nova-Core och Intel Xe, rensningen av ARM64-plattformar och tillgängligheten av paket för flera distributioner, visar den här versionen att det är möjligt att hålla sig nära kärnans framkant utan att överge principen att inte ladda onödiga komponenter. ingen proprietär binär.