"A Debian firmware támogatása szar és ezen változtatnunk kell"

Címkék

Miközben a legtöbb Linux disztribúció szállítja/fogja szállítani a Linux kernel egyes eszközmeghajtó-programjai (driver) által igényelt firmware fájlokat, addig a Debian nem. Míg a kernelben található eszközmeghajtó-programok nyílt forráskódúak, addig a firmware fájlok legtöbbször csak-bináris/zárt forráskódú programok (ún. blob-ok). A Debian pedig mindig is igyekezett távol maradni ezektől. Sajnos manapság az a helyzet, hogy a firmware-ek szállítása egyre inkább megkerülhetetlen, ha egy disztribútor támogatni szeretné a korszerű hardvereket.

A Debian hivatalos telepítői jelenleg nem tartalmazzák a non-free firmware fájlokat. Ugyan nagy dobra nem verik, de létezik külön lemezképfájl, ami viszont tartalmazza a non-free firmware-eket.

A Debian emiatt kellemetlen helyzetben van: vagy hű marad az elveihez, mellőzi a blob-okat és így szegényes támogatást biztosít a felhasználói számára VAGY változtat hozzáállásán a firmware-ekkel kapcsolatban.

A Debian veterán fejlesztő Steve McIntyre és társai azon dolgoznak, hogy megoldást találjanak a problémára. A "TL;DR: firmware support in Debian sucks, and we need to change this" kezdetű írásában McIntyre felvázolja a Debian lehetőségeit és az általa előnyben részesített megoldást. A lehetséges opciók:

1. Keep the existing setup. It's horrible, but maybe it's the best we can do? (I hope not!)

2. We could just stop providing the non-free unofficial images altogether. That's not really a promising route to follow - we'd be making it even harder for users to install our software. While ideologically pure, it's not going to advance the cause of Free Software.

3. We could stop pretending that the non-free images are unofficial, and maybe move them alongside the normal free images so they're published together. This would make them easier to find for people that need them, but is likely to cause users to question why we still make any images without firmware if they're otherwise identical.

4. The images team technically could simply include non-free into the official images, and add firmware packages to the input lists for those images. However, that would still leave us with problem 3 from above (non-free generally enabled on most installations).

5. We could split out the non-free firmware packages into a new non-free-firmware component in the archive, and allow a specific exception only to allow inclusion of those packages on our official media. We would then generate only one set of official media, including those non-free firmware packages.

(We've already seen various suggestions in recent years to split up the non-free component of the archive like this, for example into non-free-firmware, non-free-doc, non-free-drivers, etc. Disagreement (bike-shedding?) about the split caused us to not make any progress on this. I believe this project should be picked up and completed. We don't have to make a perfect solution here immediately, just something that works well enough for our needs today. We can always tweak and improve the setup incrementally if that's needed.)

McIntyre szerint az utolsó opció egy észszerű középút lenne a Debian szabad szoftveres értékeinek megőrzése és a felhasználók számára akár non-free fimrware-ek felhasználásával nyújtott jó hardvertámogatás közt. Reméli, hogy a Debian projekt hamarosan egy GR (General Resolution) szavazással dönthet a fentiekről, még időben a jövőre érkező Debian 12 szempontjából.

Részletek McIntyre levelében.

Hozzászólások

Szerkesztve: 2022. 04. 21., cs – 09:16

Szerintem is az 5. lenne a jó irány, hiszen máshol (Fedora/RedHat)  már jóideje működik a non-free különválasztása...

Akinek kell az meg hozzá tudja adni és/vagy be tudja kapcsolni kézzel, nem kell hogy rajta legyen a CD-n.

(régen volt ugye non-us repó is, az is pont ugyan így működött)

Igen, ezt már többen írtátok, és működik is, csak ugye ha a firmware pont a hálókártyához, Wi-Fi-hez kellene, akkor addig nem lesz net, amin letölthetnéd a tárolóból a firmware-t. Nyilván megoldható, aki Debiant használ, az már megszokta, hogy ezt a nonfree-s tárolós engedélyezést el kell játszania.

A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)

Nem tudom mit akarnak ezzel elérni. Annyi szabad szoftveres kapacitás soha nem lesz, hogy ezeket a firmware-eket reverse engineer-eljék.

 

És nem is igazán értem a célt sem: ha a firmware-t nem kell betölteni, hanem ott csücsül a kártyán, akkor jó? Akkor az már szabad-szoftver kompatibilis? Mint a VGABIOS volt annak idején?

Ha a gyártó viszont úgy dönt, hogy erre nem akar flash-t áldozni, hanem odaadja egy binárisként, és futásidőben kell betölteni, akkor már nem jó? A PC annyira soha nem volt nyitott platform, hogy minden részlete nyitott legyen.

 

Amúgy a non-free-nek van sajnos egy másik vetülete is: van amelyik még csak úgy sem free, mint a free beer, mert a gyártótól ugyan letöltheted, de ő megtiltja hogy te tovább terjeszd.

Ezzel nyilván a debian sem tud mit csinálni (azon kívül hogy kuncsorognak hogy ők kapjanak erre egy kivételt).

 

Én a helyükben rátenném a hivatalos install disk-re a non-free firmware-t is. A telepítő úgyis megkérdezi, hogy a contrib meg a non-free repókat akarod-e engedélyezni. Ha igen, akkor nem tökmindegy? Ha nem engedélyezed, akkor meg nem kerül fel.

> Amúgy a non-free-nek van sajnos egy másik vetülete is: van amelyik még csak úgy sem free, mint a free beer, mert a gyártótól ugyan letöltheted, de ő megtiltja hogy te tovább terjeszd.

Az ms fontjai is valahogy így vannak liszenszelve, az msttcorefonts csomag is azt csinálta, hogy a telepítés során (post-inst?) letöltötte őket, szóval ez sem akadály.

Debian - The "What?!" starts not!
http://nyizsa.blogspot.com

Az a baj, hogy a jogi akadályt ez sem oldja fel. Nem véletlen, hogy az mscorefonts csomag is minden disztrónál a nem hivatalos tárolóban van, igaz az nem veszteség, azokat amúgy is közízlés elleni bűntett használni, annyira ronda, és annyira az unásig használt fontok. Én egyébként a Debian helyében simán rátenném az install iso-ra, ha más nem, a nagyon szükséges hálózati firmwawre-eket, épp csak annyi erejéig, hogy a live médiáról bootolva legyen net, és a többi firmware-t a user le tudja húzni a nonfree tárolók engedélyezése után. Indokolni meg azzal indokolnám, hogy nem „terjesztem”, mivel csak egy read only ingyenes live rendszerre kerül fel, ahol senki nem használja „rendes” telepítésként, hanem csak egy segéd tool, ami csak azt a célt szolgálja, hogy egy technikai akadályt átugorjon a user, de a telepített rendszerre nem kerül fel, hacsak a user egyénileg saját kezűleg nem gondoskodik róla, de akkor meg már nem mi terjesztjük, hanem a user maga szerzi be. Nem hinném, hogy ezért a gyártók beperelnék, mert hát mi kár éri őket? Milyen licencdíjat szednének egy ingyenes install mediáért, ami úgyse jó sok mindenre. Hiszen a gyártóknak is érdeke, hogy ne csak Windowson legyen a szutykuk használató, hanem ha már úgyis elérhető a firmware, és a drivert meg már az opensource közösség megcsinálta hozzá, akkor a gyártó legalább azt is ki tudja írni a termékre, hogy Linux driver support, extra vásárlót hozhat 0 plusz költség fejében. Főleg, hogy ha a disztró terjeszti a firmware-t, akkor az még arra is jó a gyártónak, hogy nem neki kell a weboldalán közzétenni, meg nem az ő szervereiket tépássza mindenki, mikor tölti le ezeket. Ezt teljes ön-tökönlövés lenne megakadályozni. Ezért egyik disztrót sem perelték még be, pedig elég sok nonfree disztró alapból szállít firmware-eket. Media codec-ekkel volt már gond, de driverekhez szükséges firmware-kel kapcsolatban én nem emlékszem fiaskóra.

A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)

Vannak totál free distrók, mint pl. a Trisquel. Kb. használhatatlan mind a nonfree firmware-ek hiánya miatt.

Mivel manapság már network install az alap általában, és a legtöbb network cucchoz kapásból kell a nonfree firmware a működéshez, így életszerű, hogy adják fel az elveiket, és tegyék bele a Debian-ba is ezeket.

Nem a free distrók a használhatatlanok, hanem a nonfree firmwares hulladék hardverek. Kukába az összessel és csak olyan hardvert vegyen mindenki ami tökéletesen támogatott free distrókkal! 

A nonfree fw-es hardvereket be kellene tiltani már holnap, a fokozatos átállás miatt egyelőre elég különadókkal sújtani ezeket a kártékony hardvereket, meg a felelőtlen vásárlóiikat. Az év végére viszont mindenképp ki kell tiltani ezeket az EU területéről. 

Továbbá tekerjük le a termosztátot a falon és fürödjünk kevesebbet. :)

De pontosan, a free distrok használhatatlanok. Valós környezetben. Be kell látni, hogy a hardware-gyártó cégek (is) a profitból élnek, és a nagy konkurrenciaharcban próbálják a saját térfelüket a lehető legtöbb és legjobb módon bevédeni. A zárt firmware tipikus példa erre. Jogvédett cucc, pont azért, hogy ne lophassák el, vagy perelni lehessen a lopásért.

Mivel az életben semmi sincs ingyen, így ez a free keresztes háború alapvetően van halálra ítélve. A linuxot is kb. azóta veszik komolyan, amióta profitorientált cégek álltak be mögé.

Egy ideális világban szépen működhetne a FOSS, de ez a világ sajnos nem az.

Valószínűleg nem jött át az üzenet. Volt benne egy adag gúny. :) Nem rólad hanem erről a ami helyzetről. Ha trendi, sőt egyenesen kötelező ma aktivistáskodni a 3. világháborúért, meg gáz, olaj szankciókkal a gazdaság összeomlásáért és fagyoskodó téli időszakért, akkor szerintem belefér egy picsába a nonfree hardverrel jelszó is. Valószínűleg kisebb károkat okozna ha totál open-hardver MIPS valamire váltunk (régebben volt egy ilyen nagyon nyílt notebook), illetve System76-nak vannak állítólag open firmware gépei. 

Ha az új vonalas irreality mainstream év végére leveri az áramot Európában akkor mindegy is lesz milyen számítógépet nem tudunk bekapcsolni áram hiányában. A München Linux projekt mennyi? két évtized alatt nem tudott egy városi migrációt lebonyolítani, de az év végére teljesen leválunk az orosz gázról és olajról. A hülyeség lett a mérce amihez illik igazodni! 

De az a baj, hogy hiába a System76, MIPS-es gép, akkor az UEFI BIOS lehet nyílt lesz, management engine nuku, de biztosan tudod azt tartani, hogy a konfig többi hardvere is mind FOSS firmware-es? Illetve mikor használod a gépet, előre garantálom, hogy fogsz olyan chatalkalmazást, weboldalt használni, videót nézni, stb., amihez kelleni fog valami nemfree kód. Max. szerveren tudok elképzelni olyat, hogy teljesen FOSS az egész, valami alap webszerver, fájlszerver esetkörben, de hát az az összes felhasználási esetkör hány százalékát is fedi le?

München meg a kudarcot saját magának köszönheti. Különösen szomorú, hogy majdnem sikerütl nekik, ott voltak a célegyenesben, és feladták, mert beragadtak valami ősrégi, custom Ubuntu forkba, amiből nem tudtak kijönni, mert nem értik meg, hogy a Linux világa nem Windows, ahol be tudsz ragadni ősrégi verziókra. Abban viszont igazad van, hogy az orosz gáztól függetlenedés nem fog 5 perc alatt menni, hosszú évek kellenek hozzá, nem csak Münchenben, hanem mindenhol. Ki lehet váltani, de nem olyan gyorsan, mint arról a megmondós politikusok álmodnak.

A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)

Egyszer egy gépészmérnök kollégával pár sör után ötleteltünk, és "terveztünk" egy hajtányt, ami pedálos meghajtású lett volna, és egy generátor a világítás mellett a hangtechnikának is szolgáltatta volna az áramot. Akkor hagytuk abba, mikor rájöttünk, hogy a Dolby 5.1 hangfalak + mélynyomó optimális elhelyezésén agyalunk, de az egész cucc még mindig lábbal hajtós. :))

Debian - The "What?!" starts not!
http://nyizsa.blogspot.com

Ebben a nem ideális világban is teljesen szépen működik a FOSS, azért elég sok platformon és felhasználási területen ért el sikereket, egy csomó webes felhasználás, szabvány, formátumok terén, vagy akár elég a Blenderre és hasonlókra gondolni. A gond inkább az, hogy túl komolyan nem kell túltolni a FOSS témát, hanem nézni kell a realitásokt is, a Debiannál is erre jöttek most rá.

Pedig még Stallmannal is teljesen egyetértek, hogy ha egy mód van rá, használjunk FOSS alternatívákat, de ez nem mindenhol lehetséges. Pl. ő nem néz DVD-ket, streameket, nem vesz e-könyvet, nem látogat nonfree JS-es oldalakat, stb., de ezzel a saját életlét is elnyomorítja, ha mindeni így tenne, akkor a nap 24 órájában max. egy üres falat nézhetnénk, meg a hüvelykujjunkkal malmozhatnánk, mert max. ahhoz nem kell zárt firmware, minden máshoz, amit az ember csinálna, vagy hozzá akar férni, ahhoz kell. Ez a FOSS téma inkább olyan szinten fontos, hogy ahol lehet, csökkentsük a proprietary, zárt kódok, licencek által okozott függőséget, ahol lehet, erre lehet törekedni valamilyen szintig, ez egy teljesen jó cél.

A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)

Ha irónia volt, akkor rendben, de fentebb pedzegettétek már: nem teljesen mindegy? Akkor jó a hardware, ha a funkció a kapcsolási rajzzal van hardcode-olva? Akkor jó, ha fix ROM van, de legalább esély sincs javítani benne a bugokat? Akkor máris undorító, ha a boot alkalmával, vagy a modul betöltésekor kapja meg a hardware mikrokontrollere a kódot? Az Intel, AMD vagy ARM CPU free? Ezekhez megvan a tranzisztor szintű kapcsolási rajz? Ha meglenne, eligazodnál rajta? A mikrokód nyílt forrású? Megannyi kínos kérdés...

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

A kémkedés, ezen belül pontos kategória, jelhírszerzés ami miatt mégis van szerepe a hardver nyíltságának. A bizalom mára nemzetközi szinten megszűnt létezni. AMD cpu méretben kapcsolási rajz már régóta nincs, Verilog kód van már régóta, esetleg VHDL. Egyébként eligazodnék benne természetesen nem egyedül. Nagyjából két út közül lesz valamelyik a jövőben. Vagy nagyobb teret nyer magának Amerika által dominált zárt hardverek mellett a zárt, orosz, kínai hardver. Ezek egyébként már ma is léteznek, zártabbak a nyugati hardvereknél. Vagy az egymással birkózó felek között egy vagy több ügyes szereplő nagy pénzt szakít a teljesen nyílt hardvereivel, amik mindkét egymással szemben álló félnek megfelelnek. Ezt sem zárnám ki mint lehetőséget. Szerintem két évtizede az is irreális volt, hogy egy nem ingyenes de nyílt CPU mint az ARM nemcsak betör a fősodorba de kezd ma már dominánssá válni. Gyár(tat)ói szinten jól be lehet zárni a nyílt hardvert a user számára, lásd Apple. De ehhez kellettek a nyílt hardveres építőelemek a legfontosabb összetevőkből. Ma már megkockáztatom megengedhetné magának az Apple, hogy egy teljesen saját architektúrát fejlesszen csak magának. De aligha jutott volna eddig ha nincs számtalan nyílt hardver (és egyébként nyílt szoftver) elem amit ügyesen felhasználva a perifériáról visszahozta magát a középpontba. 

Egyetértek. Én elég nagy hívője lettem az évek során ennek a tisztán FOSS licences témának az évek folyamán, próbálok ahol csak lehet, nyílt és free megoldást használni, szoftverekre, formátumokra, lehetőleg minél portolhatóbbakat, platformfüggetleneket, de annyira messze sose mennék, mint a hardcore free hívők. Hiszen tisztán free rendszer úgyse létezik, minden hardverhez kell valamilyen szinten legalább 1-2 zárt firmware, kapásból a procikba integált management engine-ben benne van, plusz proci mikrokód, meg az alaplapi BIOS/UEFI úgyis zárt lesz (coreboot ritka kivétel, kevés hardvert támogat), az összes GPU firmware-e és a ROM-jában lévő kód is zárt, nonfree, plusz ha az ember valamire használni akarja még a működő rendszert, akkor is kellenek zárt megoldások, hogy ha valami DRM-es tartalmat kell fogyasztani (webes tartalom, oldalon futó script, stream, játék, stb.). Ha valaki nagyon szigorúan, mereven akarja kényszeríteni ezt a nonfree témát, az mindig használhatatlan rendszert fog eredményezni (lásd GNU Hurd, Trisquel, Guix, egyéb példákat, mint a letiltott JS-ek híján nem működő oldalak, meg azok a webhelyek, ahol korlátozó felhasználási szabályokat kénytelen a user elfogadni), ez a hozzáállás teljes zsákutca, egyszerűen a gyakorlatban nem működtethető. Álmodni lehet róla, de utópia marad.

A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)

RISC-V-t is alig lehet kapni, drága, teljesítményben elég gyengusz, és a zárt BIOS-t és CPU ME-t kikerülöd ugyan vele, de ahogy Wi-Fi, GPU, stb-t is beleilleszted a rendszerbe, máris fog nekik kelleni valami zárt proprietary firmware. Vagy mondjuk a neten látogatsz olyan oldalakat, ahol nem free JS fut, vagy valami videós oldalhoz zárt codec, DRM kezelő (pl. Netflixhez Widevine-plugin) kell, akkor megint ott vagy, hogy nem lesz full opensource rendszered. Ehhez az kéne, hogy az iparág kellően összefogjon, és legyenek elérhető áron, versenyképes teljesítményű hardverek, meg ne rejtsék a gyártók a zárt kódjaikat firmware-be. Mert itt azt kell érteni, hogy igazából a firmware nem szükséges, ha tényleg full opensource lenne a driver, vagy alkalmazás, akkor annak a kódjában benne lenne minden, és nem kéne még hozzá külön firmware. Sajnos még az olyan opensource-barát gyártók is, mint pl. az AMD, hiába ad ki opensource kerneldrivert, ha a „kényes” részeket, szakmai titkokat meg belerejtik zárt blobokba. Esetleg jogi-állami eszközökkel kéne kötelezni a gyártókat, hogy csak akkor hozhat forgalomba hardvert, ha a driverének a kódját nyílt licenc alatt közzéteszik, firmware-es ügyeskedés nélkül. Aki erre nem hajlandó, az nem hozhat forgalomba, vagy ha kijátszotta a szabályozást, akkor meg kapjon kemény bírságokat a nyakába.

A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)

Szerkesztve: 2022. 04. 21., cs – 18:09

nem látom nehéznek, hogy a telepítő megkérdezze, hogy lehúzhatja-e a szükséges non-free .deb fájlt a debian non-free repójából, ha van eth, ha meg nincs, akkor meg nem olyan nagy gond, hogy legyen egy usb-eth a telepítés idejére vagy ilyemi

"A Debian hivatalos telepítői jelenleg nem tartalmazzák a non-free firmware fájlokat. Ugyan nagy dobra nem verik, de létezik külön lemezképfájl, ami viszont tartalmazza a non-free firmware-eket."

- a contrib és non-free tárolókat hozzá kell adni a repóhoz és kész, semmilyen külön képfájlra nincs szükség. 

"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség

Ilyen probléma esetén kénytelen vagy pendriveon beadni neki a firmware-fájlt a telepítés során, esetleg ideiglenesen beraksz egy általános hálókártyát, amivel aztán telepíted a szükséges firmware-t.

"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség

Itt megint csak arról van szó, hogy egy szélsőségesen idealista elem influenszerkedik, mert clickety-click telepítős Linux-szá szeretné butítani a Debiant. 

Értelmes ember képes behúzni a non-free repót és felrakni belőle a szükséges firmware-eket. Nem értelmes ember pedig nem rak Debiant, hanem rak Linux for human™ beings™ Ubuntut, vagy marad a Microsoft kísérleti nyula Windows 10/11-en.

Az elvek feladásával a Debian elmozillásodása kezdődik meg.

Helyette a "veterán" fejlesztők unatkozhatnának más kérdéseken is, például hogy nem adoptálják szó nélkül a Red Hat anti-feature-it, a GTK3-tól kezdve a systemd-ig.

Pontosan. Minél többen foglalkoznak valamivel, törvényszerű, hogy annál szarabb lesz a végeredmény. Az agilis módszertantól meg egyenesen hányingerem van, ami pont arról szól, hogy mindegy mit csinálsz, csak gyorsan csináld, úgyis szar lesz, majd a következő verzió jobb lesz, és így megy örökké.

Most ott tartunk, hogy nincs egy normális szoftver sem, csak HW-lassító, agyonbonyolított, "felhasználóbarát"-nak csúfolt zagyvaságok. 20 millió főlősleges funkcióval, ami meg valóban kellene, csak komplikáltan varázsolható elő, már ha egyáltalán.

Másik jó példa az Internet. Egy szemétdomb már az is.

Ha megnézed minden az "így alakult" eredménye. A szoftverminőség szerintem is sokat romlott, mióta az internet széleskörűen elterjedt, hiszen "majd patcheljük". A 90-es években ennyire nyilvánvaló hibákkal nemigen kerülhettek ki szoftverek, mint ami manapság szokás.

A PC architektúra, a webes szabványok egyike sem egy jól átgondolt valami. Az elején még talán az volt, de aztán mindig hozzá kellett tákolni egy kicsit, és itt tartunk ma.

Valószínű a C nyelv annak köszönheti a népszerűségét a mai napig, hogy azt akkor valahogy nagyon jól kitalálták. Na nem mintha nem lennének abban is problémák, de valahogy kezelhető, emberi szinten marad.