Developing a wheel for a second time
Klucz linux gentoo ; 2006-04-16 12:10:10 (2006-04-19 12:50:10); komentarze (12) i trackbacki (0)
W związku z tym, że przekompilowuje wszystkie pakiety jeszcze raz, bo ta metoda będzie najszybsza, szczególnie, że 3/4 z nich i tak wymaga przekompilowania ze względy na to, że przeszedłem na ~amd64 i to są nowsze wersje pakietów, zrobiłem sobie ciekawy skrypt. Nie mogłem za bardzo cokolwiek robić z czymś innym, nie miałem jak włączyć przeglądarki graficznej, więc to był bardzo prosty skrypcik, który publikował w osobnym zasobie aktualnie kompilowany pakiet. Były pewne komplikacje i wyrzuciłem. Wczoraj wieczór pomyślałem sobie, że można to zrobić jako osobny kontakt, emerge@uaznia.net i nie koniecznie tylko w pojedynke. Więc zgadałem sie z Lukanusem i zmodyfikowałem skrypt w perlu.
Działa on mniej więcej tak, że zamiast 'emerge ...' wykonujemy 'emergep ...', który odpala trzy wątki. Pierwszy wątek to jest emerge z danymi argumentami. Drugi wątek to jest połączenie z serwerem Jabbera. A trzeci wątek, to jest parsowanie wyjścia z pierwszego wątku i poszukiwanie w nim odpowiednich linijek. Gdy odpowiednia linijka zostaje znaleziona, klient Jabbera ustawia sobie odpowiedni status - 'Now merging ...' i informacje o aktualnej fazie instalacji i pozostałych pakietów do końca.
Jest to jeden prosty skrypt w perlu, jednak wymaga on perla z obsługą watków i Net-Jabber.
Jeżeli ktoś jest zainteresowany dzieleniem się z innymi aktualnie kompilowanym pakietem, proszę się do mnie po ów skrypt zgłosić.
Tak, to było zrobione w ramach zbyt dużej ilości czasu podczas kompilacji glibc. To jest rodzaj chwilowego natchnienia, które potem może być porzucone i zapomniane. Jednak sam pomysł wydaje mi się ciekawy.
Klucz linux gentoo portage ; 2006-04-14 00:29:21 (2006-06-25 16:09:06); komentarze (15) i trackbacki (0)
Gentoo Portage to bardzo wrażliwy system. Potrzebuje częstego okazywania uczuć i zainteresowania. Gdy go zabraknie może się zacząć denerwować a w przyszłości na pewno zacznie robić problemy.
Ja o tym nie wiedziałem, aż do przedwczoraj. Poprosiłem go ładnie, żeby mi zainstalował Xorg w wersji 7.0. Odpowiedział mi mniej więcej tyle, że 'figa a nie nowy Xorg, bo dawałeś mi za mało prezentów'. 'Jakich prezentów?' - zapytałem. Okazało się, że żeby zainstalować Xorga z Xgl-em, trzeba posprzątać po starym. No to wyrzuciłem przez okno starszą wersje i chciałem zainstlować nową.
Mój drogi Portage dalej stawiał na swoim. Powiedział, że muszę zainstalować tylko kilka pakietów, a tak naprawdę chciał odemnie, żebym użył swojej wyobraźni i zainstalował więcej. Więc przez godzine, co pakiet musiałem za niego rozwiązywać wsteczne zależności i instalować pakiety. No ale czego nie robi się dla przyjaźni?
Gdy już rozwiązałem wszystkie zależności cośtam porobił i powiedział, że go głowa boli i nie będzie xorg-server. Poszukałem na forach jakiegoś środka przeciwbólowego ale nic nie pomogło. Pomyślałem sobie, że może mu się obecny zestaw pakietów nie podoba, wywaliłem wszystkie i zainstalowałem jeszcze raz, i tak to miałem zrobić. Nie, dalej był zły.
'Nie można mieć wszystkiego' - pomyślałem. Ale w takim razie poprosiłem, żeby mi pomógł zrobić porządek z tym co zrobiłem. Poprosiłem o depcleana. Wpadł w szał. Nigdy nie widziałem go tak wściekłego. Powiedział, że jeżeli tak, to usunie mi 2/3 moich wszystkich pakietów. No to pozostało mi tylko odmówić.
Jakoś ubłagałem go o to, żeby pozwolił chociaż zainstalować nowego kernela, cztery numerki wyższego niż obecny. Wreszcie dał się uprosić. Potem zrobiłem dla niego ładnego sync-a i chyba jest już zadowolony, bo przekompilowałem nowe KDE, nawet niebardzo się strzępił.
Jednak dalej jak go poproszę, to mi mówi, że jak chce depcleana to mogę się pocałować, albo usunąć 200 pakietów. No to zapytałem 'No to może chociaż zrobimy wspólnie `emerge -uD world`, co?'. Znów marudzi, że nie zainstaluje tego i owego, bo nie mam nowego Xorg-a. I teraz instalujemy razem wspólnie po kawałeczku, może się da przekonać.
Pamiętajcie - dbajcie o swoje portage-e, bo robią się strasznie wredne jak się o nie nie dba. Róbcie dla nich często sync-a i raz na jakiś czas zapraszajcie do wspólnego depcleana.