Akartam egy kicsit Android Studio-zni. Nem kellett volna...
A problémák ott kezdődtek, hogy a Jessie által szállított openjdk-1.7 túl régi volt az Android Studionak, az openjdl-1.8-nak meg nem tetszett a ca-cetificates-java. Mondván, négy napos ünnep jön, lesz idő szopni, nyomjunk egy dist upgradet.
Az upgrade végig is futott, de már a felénél látszott, hogy szopás lesz, mikor megpróbálta újraindítani a Xorgot és elhasalt olyan szinten, hogy karakteres teminálhoz sem tudtam visszalépni. Mindegy, volt ilyen, lesz ilyen.
Újraindítottam a gépet, belogin, jahm, nincs fglrx telepítőm. Éljen a 21.század, mikor egy gyártó support oldala is annyira javascript fertőzött, hogy képtelenség egy videokártya driverét karakteres böngészőből leszedni. Laptop elő, telepítő lehúz, elindít. "Bocsi, Xorg 1.17-től felfelé nem támogatott. Puszi. Lóbroki a szádba..."-hibaüzenet. Hurrá, elsőosztályú gyártói támogatás! Aprócska cukiság, hogy mivel integrált a GPU, létezik egy amdgpu-pro driver, de csak a nagy, kiválasztott disztróknak csomagolva.
Akkor menjünk opensourceba. Xorg.conf-ben átütöm a drivert radeonra. Xorg elcrashel. "Nincs megfelelő video eszköz"
Akkor menjünk egy szinttel lejjebb. Xorg.conf-ben átütöm a drivert vesa-ra. Xorg elhasal és visz magával mindent. ssh-n beloginelek, újraindítok. Megnézem a betöltött kernelmodulokat, ott röhög a fglrx. Pörög a lamerszámláló.
Ok. Akkor gyaluljunk, /usr/share/ati/fglrx-uninstall.sh, minden kerek, rmmod fglrx, xorg indít, van kép.
Eddigre asszony már erősen pörgött, hogy youtube, filmnézés, stb. Hiába, az otthoni közös géptől elvárt rendelkezésreállás, durvább mint bármelyik küldetéskritikus termelési szerveré. Gyorsan felhúzom és bekonfigurálom autologinre a sddm-et, mert a kdm támogatás kihalt a stretchben.
Másnap gép bekapcsol, fekete kép, proci 200%-on, karakteres konzol nincs. Hurrá. SSH login, az sddm és az xorg végtelen ciklusban pörög. sddm lelő, xorg lelő. xorg visszajön. xorg lelő. xorg visszajön. Systemd, xorghoz köthető szolgáltatások kilőve. xorg visszajön. "EgyszeragyonbaszomPoetteringetakisbarataivalegyutt." sddm legyalul, újraindít. Belsőbéke, karakteres konzol.
Lsmod, a fglrx ott virít a betöltött modulok közt. STO ETA FUCK? Nézzünk szét és valóban, ott virít a szentem a /include/modulesban. A vicces, hogy az fglrx-drivers nem lett telelpítve. Kigyalulom, depmod -a és tsai. Újraindítok, xorg megy, sddm visszatelepít, béke, nyugalom.
Eltelik két nap, asszony sír, hogy így szar, úgy szar a kép, túl hangos a gép. Hiába no, vesa driver az vesa driver.
Szánok rá egy kis időt, átütöm a drivert radeonra. Újraindít, széthullik az egész. "No device detected"
Agyalok egy kicsit, nézem a kernel modulokat, valami hiányzik és a karakterek is elég randák a konzolban. Hát persze, nincs betöltve a radeon modul! De miért is?
Nézem az /etc/modprobe.d-t. Van itt egy fglrx-blacklist file, meg egy radeon-kms file, meg még egy törött fglrx link. Valaki nem takarított elég alaposan maga után. Szétcsapok a fileok között. Radeon modul betölt kézzel, xorg indít. Megint van grafikus felület. Ha már itt tartok megnézem, megy-e a hw gyorsítás. Természetesen nem. "Error: couldn't find RGB GLX visual or fbconfig" Nézem a Xorg.log-ot, a libglx.so elhasal, mert nem tudja betölteni a libaudit.so.0-t. Pedig a libaudit1 csomag fenn van. Nézem az libglx.so-t, 20013-as a dátuma. Miiiivaaaan? Pedig a legfrisebb csomag van fenn! Kíváncsiságból átnevezem, és akkor legyen, apt-get --reinstall install xserver-xorg-core. Hoppá, máris friss dátummal van libglx.so.
X újraindít, forognak a fogaskerekek.
Tanulság? Miért van, hogy képtelenség szolgáltatásokat leállítani, különösen ha azok vagy azok komponensei hibákat dobnak? Miért nem képes a gyári telepítő eltakarítani a saját szemetét? Ha le tud forgatni egy kernelmodult, akkor miért nem tudja azt leszedni maga után? Hasonlóképp, miért nem képes az apt egy rendszerfrissítésnél legyalulni korábbi, más verziójú fileokat? Miért kell mindent kismillió alkönyvtár, alkönyvtárába mindent szétcsapni? Miért nem képes egy .so ellenőrizni az kernelszintű függőségeinek a meglétét és azt logban jelezni. Miért nem lehet valami egységes rendszert kialakítani megosztott libraryknél, hogy látni lehessen, hogy ki vagy mi telepítette? Miért kell más verziójú/forrású libraryknál az eredetit felülütni, miért nem lehet valamilyen linkelési rendszert kialakítani erre?
Nagyon úgy tűnik, hogy a mindent-mindennel lehet irányítani és mindent mindennel lehet konfigurálni mentalitás nagyon kezd visszaütni. Ez a fajta tervezetlenség, a régi unixos strukturáltság teljes széthullása évről-évre rosszabb lesz. Lassan már a Gobolinux rendezési elvét is jobbnak látom.