8 nov. 2012

Gnome 3.6(.1)

Si hai sa va spun povestea cu Gnome 3.6 din Archlinux. Sau povestea cu Archlinux din spatele Gnome 3.6? Va zic una care sa le combine, pentru ca nici azi nu stiu cum am reusit. Ce-am reusit? Sa pornesc in sfarsit dupa ore de chin Gnome 3.6.

Ieri am primit SMS de la twitter ca am o gramada (peste 100) de update-uri pentru Arch. De obicei fac update cand am ~20-30 de pachete noi sau cand apare un nou kernel in repo-ul lui graysky. Ma uit cu pacman -Qu, vad ca majoritatea pachetelor sunt de la Gnome. Trebuia sa plec de acasa si am zis ca-i fac upgrade cand ma intorc. Si bine am facut, pentru ca s-a lasat cu probleme.

Am upgradat, am dat restart, evident Gnome nu pornea. Nici nu ma asteptam sa o faca, asa ca am sters gconf-ul si dconf-ul manual. Restart la X, si tot nimic. Am reusit la un moment dat sa-l fac sa porneasca in mod fallback, dar arata jalnic si nu functiona mai deloc. Si pune-te cu strace din init3 sa pornesti gdm, gnome-session si mai tot ce era legat de gnome. Problema care aparea spre sfarsitul segfault-ului era imposibilitatea de conectare la X. Ma gandesc la un bug in momentul ala. Fallback-ul imi pornea dar cu erori de afisare, Shell-ul canci. Greu de crezut sa fie un bug, avand in vedere ca Gnome 3.6 a stat in testing cam o luna de zile, timp in care s-au rezolvat bugurile upstream si trimis inapoi in repo-uri 3.6.1, care si asta a stat in testing ceva timp. Deci erau sanse de 1 la 1000000 sa fie un bug. Si primul lucru la care m-am gandit a fost ca sunt destul de ghinionist incat sa ma afecteze pe mine.

Intru pe forumul arch, citesc pe acolo, HA, nu sunt singurul! Dar nu e nici bug. Problema era intre scaun si monitor. Se pare ca Gnome 3.6.1 din Arch e compilat cu systemd-login, renuntandu-se la consolekit (finally!). Solutia? Stergerea consolekit sau oprirea lui la pornire. Sters, scos din daemoni, restart. Nada, canci, zero, keine, nimic, nothing. Same shit. Aceeasi problema cu strace-ul, aceeasi problema cu GDM-ul, gnome-shell nu pornea, gnome-session la fel, se pare ca eram ala dintr-un milion. Trandafirul dintre flori, cum se zice.

Citesc mai multe de consolekit si polkit, de altii cu problema mea care cica au rezolvat-o facand upgrade. Upgarde la ce? Deja eram sincronizat cu serverele oficiale. Si ma gandesc sa mai instalez polkit pentru ca tin eu minte ca am avut probleme cu el cand am trecut pe systemd. Intr-adevar, era o problema cu polkit. Bun, restart la X, gdm merge, voila! Bag parola, shell-ul canci. Nu voia in draci sa porneasca si ma dadea inapoi in Gdm. Ba sa dea dracu'-n el de shell si de Gnome. A dracu' cacanarie proasta, sa-ti bati nemilosu' in ea...

Si stateam si ma gandeam ce as mai putea sa-i fac lui Căcălăcă asta de Gnome3.6. Xfce? KDE? Ar fi mers un KDE. Dar parca n-as renunta la Gnome inca. Si nu stiu cum imi aduc aminte ca am avut la un moment dat Unity instalat pe langa Gnome. Am listat frumos pachetele instalate din repo-ul de Unity (repo neoficial) si am vazut ca multe din componentele din Gnome erau cu -ubuntu dupa nume. Adica upgrade-ul meu failase de fapt. Ma rog, pe jumatate. Nah, chestia e ca G3.6 era inaintea pachetelor din repo-ul de Unity si evident apareau probleme. Plus ca tot ce era cu -ubuntu in coada, era compilat cu patch-uri Ubuntu. Patch-uri ce mergeau pe Gnome 3.4, dar nu si pe 3.6. Inainte sa ma apuc sa sterg un repo intreg, am vrut sa ma conving ca de la Unity/Ubuntu e problema. Totusi aveam unele pachete care imi foloseau in G3.4, de asta si aveam instalat o parte din repo.

Am bagat iara un strace, de data asta gnome-shell segfaulta din cauza lui "liboverlayscrollbar.so", fisier ce tinea de liboverlayscrollbar din Unity. Mdap. Sters pachete din repo-ul Unity, restart la GDM, voila. Totul bine si frumos, ca din cur scos. Nu, pe bune, de data asta chiar a mers.