Ten blog zakończył swój żywot i nie będzie już aktualizowany. Komentarze zostały wyłączone, a notki udostępniam jako archwium dla odwiedzających. Pozdrawiam.

Archiwum dla kategorii Gentoo

Tematyka Linuksowa, głównie związana z dystrybucją Gentoo Linux.

Pełna zmiana motywu kursora

Zauważyłem, że na wielu formach bardzo często pojawia się ten temat i problemy z nim związane. Bowiem po zmianie motywu kursora w centrum sterowania, nasze nowe ikonki kursora nie będą działać we wszystkich aplikacjach. Zauważymy to uruchamiając Firefoksa bądź inna aplikacje opartą na GTK, także w KDE w niektórych miejscach kursor będzie nam się nadal zmieniał na domyślny.

Aby temu zapobiec, wystarczy dodać dwa wpisy do dwóch plików. Pierwszym z nich jest ~/.Xdefaults :

Xcursor.theme: gentoo
Xcursor.size: 18

Natomiast drugi plik potrzebny do konfiguracji to ~/.gtkrc-2.0 :

gtk-cursor-theme-name="gentoo"
gtk-cursor-theme-size="18"

Gdzie “gentoo” to nazwa naszego wybranego motywu znajdującego się w /usr/share/cursors/xorg-x11.

Po tym zabiegu kursor powinien być taki sam we wszystkich aplikacjach, także tych opartych na GTK.

Moim ulubionym motywem kursorów jest Blue Glass 3D1.

glass_cursors.png

Komentarze

Jak przeglądać pakiety z laymana?

Ostatnio Walth zadał mi podobne pytanie, nie znałem odpowiedzi, to więc postanowiłem zgłębić temat i poszukać narzędzi, które by mi umożliwiły wygodne przeglądanie pakietów z nakładek dostarczanych przez program layman.

Rozwiązaniem może się okazać mała aplikacja eix1, którą zapewnie większość użytkowników Gentoo powinna znać. Poza tym, że potrafi ona cholernie przyspieszyć proces wyszukiwania pakietów ma także wiele innych ciekawych opcji. Strona man dla tej aplikacja jest dosyć obszerna, co świadczy o możliwościach tej na pozór małej aplikacji.

Do rzeczy więc … mając zainstalowanego layman i wydając polecenie :

# layman -L

Uzyskamy listę wszystkich dostępnych (ale niekoniecznie dodanych do systemu) nakładek na Portage. Możemy za pomocą opcji -v dowiedzieć się nieco więcej o każdej nakładce, ale to nam też niewiele pomoże. Chcielibyśmy przeglądać, najlepiej z opisami wszystkie ebuild z tychże nakładek. Tak jakby znajdowały się one w naszy oficjalnym Portage.

Eix dostarczą taką możliwość. Najpierw wywołamy polecenie :

# update-eix-remote update

To polecenie spowoduje tymczasowe dodanie wszystkich dostępnych przez laymana nakładek do bazy eix. Dzięki czemu będziemy mogli je przeszukiwać i przeglądać tak jak zwykłego Portage.

Teraz jednak chcielibyśmy uzyskać listę wszystkich pakietów pochodzących z tych nakładek, lecz bez tych znajdujących się w naszym oficjalnym Portage.

# eix -Oc

Eix wywołany z takimi parametrami wyświetli wszystkie pakiety należące do nakładek laymana, które przed chwilą tymczasowo dodaliśmy do jego bazy. Parametr -O, powoduje wyświetlanie tylko pakietów, które mają przynajmniej jedną dostepną wersje w nakładce. Opcja -c, wyświetla każdy wynik w jednej linijce. Można jeszcze dodać sformatować wynik, wedle własnych upodobań.

# eix -Oc --format-compact "(default)<category>/<name>(green)<description>"

Dla mnie jest bardziej wygodny i przejrzysty.

By usunąc tymczasowo dodane nakładki z bazy eix, korzystamy z polecenia :

# update-eix-remote remove

W ten sposób uzyskuje wygodny spis pakietów znajdujących się w nakładkach. Oczywiście możemy także przeglądać pakiety tylko z wybranych nakładek. Eix posiada duże możliwości i zalecam jego stosowanie.


Komentarze (4)

Czystka

Namieszałem w moim systemie i tym razem nie na żarty. Kolejne eksperymenty doprowadziły do tego, że zajechałem na amen serce systemu - Portage. Nie pomogło ręczne odzyskiwanie i inne wyszukane pomysły. Pewnie jakbym bardziej poszukał i pokombinował to być może w końcu udało by mi się uzdrowić mój system.

Jednak za to, wpadłem na niegłupi pomysł ;) Mianowicie przyszła mi do głowy myśl postawienia mojego Gentoo od nowa.

Mój system i tak długo wytrzymał, nie dbałem o niego zbytnio, testowałem na nim wszystko co tylko mnie zaciekawiło. Przy czym niezawsze po sobie sprzątałem. Było to moje pierwsze Gentoo, więc pewnie moje głupie pomysły z początku jego użytkowania także miały na niego wpływ. Ostatecznie Gentoo rozrósł się do … uwaga :

# epm -gqa | wc -l
887

Tak jest, 887 zainstalowanych pakietów. Te pakiety oraz inne śmieci zajmowały łącznie ponad 8,2 GB przestrzeni dyskowej. Chyba więc nadszedł najbardziej odpowiedni czas na czystkę systemu :)

Z racji, że miałem troche czasu wprowadziłem myśl w czyn. W pierwszy dzień zająłem się stawianiem podstawowego systemu. Jak już wszystko zainstalowałem oraz skonfigurowałem, i otrzymałem działający system zajałem się podstawowymi składnikami systemu oraz X’ami. Na drugi dzień zostawiłem sobie grube ryby (tj. pakiety kdelibs, qt oraz mozilla-firefox) oraz postawiłem moje minimalne KDE. W sumie wieczorem drugiego dnia miałem już w pełni działający i funkcjonalny system Gentoo Linux. Trzeci dzień to już tylko kosmetyki oraz konfiguracje różnych aplikacji i innych dla mnie ważnych rzeczy (np. serwer imap dla poczty).

Dokonałem sobie wcześniej wielkiej kopii mojego poprzedniego systemu, ale i tak zapomniałem o kilku sprawach. Przede wszystkim pominąłem najważniejsze … konfiguracje mojego kernela :D Stąd po konfiguracji z pamięci, na szybkiego, pojawił się kilkakrotnie “kernel panic”.

Teraz już wszystko śmiga jak należy i obiecuje sobie, że tym razem będę bardziej dbał o moje Gentoo i sprzątał po sobie :P Moje nowo postawione Gentoo zawiera 420 pakietów i zajmuje 4,5 GB przestrzeni dyskowej.

Komentarze (10)

Blog dodany do planety Larry’ego

larry_cow.pngSkusiłem się i za namową Citizena, zgłosiłem ten blog do zagranicznej planety Gentoo1. Zostałem więc dodany i z tego co widzę, na dzień dzisiejszy jestem tam drugim Polakiem :P

Większość tamtejszych bloggerów pisze po angielsku, ale można dostrzec też kilku trzymających się języki niemieckiego i innych. Więc czemu by nie “zaśmiecić” im planety moimi wpisami ;)

Zapraszam resztę osób prowadzących blogi o tematyce poruszającej dystrybucje Gentoo Linux, do zapisanie się. Potrzebne informacje znajdują się na dole strony planety.

Nie ukrywam, że brakuje mi takiej planety, zrzeszającej nasze Polskie blogi :)


Komentarze (4)

Fortunki z Chuckiem Norrisem

Sprawa z Chuckiem Norrisem ostatnim czasy troche przycichła. Ale dla prawdziwych fanów i tych lubiących dowcipy o Chucku Norrisie, powstała baza z fortunkami1. Jeśli ktoś jest zainteresowany, to może w łatwy sposób podpiąć owe fakty do swojego fortune.

# emerge fortune-mod-chucknorris
$ fortune chucknorris
Q: How many Chuck Norris' does it take to change a light bulb?
A: None, Chuck Norris prefers to kill in the dark.

Możemy to wszystko jeszcze oprawić w ładną krowę, stworzoną w ASCII.

# emerge cowsay
$ fortune chucknorris | cowsay

Efekt taki, jak poniżej.

cowsay_chucknorris.png


Komentarze (4)

Gentoo Sunrise Overlay - przegląd ciekawszych aplikacji

Sunrise1 to nakładka na drzewo Portage, zawierająca nieoficjalne, nadesłane przez użytkowników ebuildy. Korzystanie z niej jest na pewno bardziej wygodne, niż z Bugzilli. Ponadto ebuildy są ściśle kontrolowane i moderowane.

Najszybciej uzyskamy do niej dostęp poprzez aplikacje layman (gdy mamy ją zainstalowaną i skonfigurowaną) :

# layman -a sunrise

To wszystko … Pakiety z Sunrise są już widoczne w naszym Portage.

Przeglądając zasoby Sunrise natrafiłem na kilka przydatnych pakietów, które po krótce opisze :

  • xorg-edit dla osób lubiący wszechobecne GUI. Xorg-Edit to graficzna nakładka w dużym stopniu pomagająca niektórym osobom zmianę konfiguracji X’ów, czyli pliku xorg.conf.
xorg-edit.jpg
  • qtcurve to styl dla KDE, którego sam obecnie używam. Zawiera kilka wariantów konfiguracyjnych i prezentuje się bardzo ładnie.
qtcurve_2.png
polyester.png
  • feed2imap to czytnik RSS, który pobrane nagłówki przenosi (w formie maili) na serwer IMAP. Dzięki temu możemy użyć np. Evolution czy innego klienta poczty (nawet Mutt), do czytania zarówno poczty jak i kanałów RSS.
  • pcmanfm - szybki i elastyczny menedżer plików, lecz w mniejszym stopniu konfigurowalny od Rox’a. Spełnia swoje zadanie i na pewno wielu osobom przypadnie do gustu.
pcmanfm.png

Komentarze (6)

Cron i dead.letter

Dzisiaj zauważyłem, że moja partycja o pojemności 7GB, przeznaczona na Gentoo jest w całości zapełniona. Jak zwykle w takiej sytuacji odpalam Filelight1 i sprawdzam co tak niemiłosiernie pożera moją przestrzeń dyskową. Okazało się, że plik o nazwie dead.letter w katalogu domowym zajął sobie dość sporą część miejsca :

$ du dead.letter
448M dead.letter
448M total

Troche dużo jak na pojedyńczy plik :D

Plik ten zawierał informacje o wykonywanych zadaniach crona. Standardowo w przypadku błędu cron wysyła nam maila ze skargą. U mnie jednak nie mam skonfigurowanego ani zainstalowanego serwera poczty, ani także nie ma takiej konieczności powiadamiania. To więc cron z racji, że nie mógł wysłać mi maila, wszelkie błędy zapisywał sobie we wspomnianym pliku.

Czytając stronę man polecenia crontab, dowiemy się :

Jeśli MAILTO jest zdefiniowane, lecz puste (MAILTO=”"), to nie są wysyłane żadne listy.

Tak więc rozwiązaniem okazało się dopisanie do crontaba :

MAILTO=""

Teraz nie jest już tworzony plik dead.letter, ani też cron nie podejmuje prób powiadamiania mnie mailem.


Komentarze (4)

Czym przeglądać pakiety w Portage?

Pakiety w Portage są segregowane tematycznie, co pozwala na przeglądanie danej kategorii w poszukiwaniu ciekawych aplikacji. Lub po prostu testowaniu przeróżnych programów. Sam w ten sposób znalazłem wiele interesujących pozycji. Oczywiście podczasz takiego przeglądania nie będziemy korzystać z polecenia emerge -s, bo na dłuższą metę staje się to bezsensowne.

W takiej sytuacji dotychczasz korzystałem z graficznej nakładki Kuroo (o której kiedyś już wspominałem), która umożliwiała mi przeglądanie pakietów wraz z ich opisami, stroną domową itd. Kuroo jednak jest troche mozolne i czasami mnie zawodzi.

Lepszym wyborem okaże się skorzystanie z pakietu opartego na GTK. Mowa o małej aplikacji porthole1. Znajduje się ona w Portage. Wyglądem nie zachwyca, ale swoje zadanie spełnia i to znacznie szybciej.

porthole.png

Czasami przeglądając w ten sposób drzewo Portage, możemy natrafić na mniej znane, lecz dobre pakiety.


Komentarze (7)

Przyspieszamy start Gentoo - Initng

Initng1 być może w niedalekiej przyszłości zastąpi standardowy sysinit. Jego główny cel to zwiększenie szybkości rozruchu systemu poprzez wielowątkowe uruchamianie usług. Narazie jednak projekt jest cały czas w wersji testowej, ale szybko się rozwija. Już teraz można się pokusić o jego przetestowanie a nawet korzystanie na codzień. Nie zalecam jednak całkowitego przejścia na initng i usunięca sysinit.

Przy testowaniu initng natrafiłem na wiele problemów i nadal nie wszystko działa wyśmienicie, i tak jakby sobie to wyobrażał. Sądzę jednak, że można doprowadzić go do jako takiej stabilności. I tym razem jest o co walczyć. Z initng udało mi się niemal dwukrotnie zredukować czas rozruchu. Obecnie mój system startuje w 23s (do KDE)!

Załączam dowód oczywiście :

bootchart_2.jpg

Dodatkowo zyskujemy także na czasie, jeśli chodzi o zamykanie systemu. Tutaj również występuje równoległe zamykanie procesów. Gentoo wyłącza się w 7s!

Wymagane są dwa pakiety : initng oraz initng-ifiles. Ich najnowsze wersje uzyskałem z nakładki (dostępnej dzięki skryptowi layman) o nazwie initng.

Kwestia instalacji jest opisana na stronie initng2, więc nie będę się powtarzał. Warto także sięgnąć do HOWTO3 na Gentoo wiki. Kilka początkowych problemów na pewno rozwiążemy czytając FAQ4.

Initng zapewnia nam wygodny skrypt do zarządzania usługami, działający na identycznej zasadzie jak standardowy rc-update dla sysinit’a. Za pomocą tego skryptu i ewentualnie edytując odpowiednie pliki, np. /etc/initng/default.runlevel dla runlevel’a o nazwie default, zdecydujemy o usługach jakie będą nim uruchamiane.

Zamiast wydając polecenie :

# /etc/init.d/alsasound start

Do wystartowania odpowiedniego demona w initng, użyjemy skryptu ngc :

# ngc -s alsasound

Pozostaje mi tylko zachęcić do wypróbowania i przekonania się samemu o szybkości procesu rozruchu z użyciem initng.


Komentarze (5)

Nowości w Portage 2.1

Lista zmian1 jest dość pokaźna, jednak ja skupie się na tych co ciekawszych.

Pierwsza nowość która się nam zapewne rzuci w oczy, jest zmiana standardowej kolejności wyświetlania flag dla pakietów. Obecnie nie są one wszystkie sortowane alfabetycznie, lecz najpierw są umieszczane wszystkie aktywne flagi, a potem flagi wyłączone.

Jeśli ktoś był przyzwyczajony do starego schematu i chce do niego powrócić musi dodać taką linijkę do pliku /etc/make.conf :

EMERGE_DEFAULT_OPTS="--alphabetical"

Kolejna sprawa to flagi oznaczone żółtym kolorem oraz znakiem “%”. Oznacza to, że dana flaga została dodana teraz do pakietu, a dla wcześniejszych wersji tego pakietu nie była dostępna.

Ciekawe może się także okazać mapowanie kolorów. W prosty sposób możemy sobie nieco pozmieniać domyślne kolory używane przez Portage’a. W tym celu edytujemy plik /etc/portage/color.map i dodajemy kolejne definicje kolorów według schematu

bazowy_kolor=nowy_kolor

Przykładowo :

yellow=darkyellow
red=darkred
blue=lightgray
green=darkgreen

Co dam nam coś takiego :

portage_2.png

Kolory z jakich możemy przebierać, to te zdefiniowane w pliku /usr/lib/portage/pym/output.py.

Pojawiły się pewne zmiany w definiowaniu zmiennych. Zmienne RSYNC_* zostały wycofane, a należy używać zamiast ich, jeden zmiennej o nazwie PORTAGE_RSYNC_EXTRA_OPTS. Należy wprowadzić małe zmiany do pliku /etc/make.conf u mnie są to zmiany typu :

RSYNC_EXCLUDEFROM="/etc/portage/banned_branches"
RSYNC_TIMEOUT = 300

Musiałem zmienić na :

PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/banned_branches --timeout=300"

Na koniec wspomnę jeszcze o opcji parallel-fetch dzięki której podczas kompilacji, równolegle będą ściągane źródła do następnej kompilacji. W ten sposób zyskamy nieco na czasie. Chcąc korzystać z tej możliwości dodajemy do /etc/make.conf taką linijkę :

FEATURES="parallel-fetch"

Dodano nowe możliwości przechowywania logów z procesu kompilacji pakietów za pomocą emerge’a. Dotychczas można było uzsykać pełny plik log (zmienna PORT_LOGDIR) dla każdego pakietu, zawierający wszystkie informacje z kompilacji. Jednak w ten sposób łatwo można przegapić ważne informacje zawarte w ebuild i wypisywane podczasz kompilacji. Logi przechowywane w ten sposób, także bardzo szybko się rozrastały.

Teraz możemy wyciągnać najważniejsze informacje z procesu kompilacji, ostrzeżenia, informacje oraz błędy. Odpowiedzialne za ten proces są dwie nowe zmienne PORTAGE_ELOG_CLASSES, która decyduje jakie informacje zapisać do logów. Natomiast wartość zmiennej PORTAGE_ELOG_SYSTEM wpływa na to w jaki sposób i gdzie zapisywać logi. Oczywiście te zmienne ustawiamy standardowo w pliku /etc/make.conf :

PORTAGE_ELOG_CLASSES="info warn error log"
PORTAGE_ELOG_SYSTEM="save"

Teraz po każdej skończonej kompilacji uzyskamy znacznie mniejszy plik log w katalogu /var/log/portage/elog zawierający tylko najważniejsze informacje. Po więcej ustawień można zobaczyć do /etc/make.conf.example.


Komentarze (2)