RkBlog

Hardware, programming and astronomy tutorials and reviews.

Własne ebuildy w portage

Przewodnik opisujący jak dodać własne pliki ebuild do lokalnego drzewa portage za pomocą PORTDIR_OVERLAY definiującego lokalną dodatkową gałąź portage

Dodawanie do drzewa własnych ebuildów

- Jako root wykonaj emerge --info i zobacz czy masz ustawione: PORTDIR_OVERLAY="/usr/local/portage". Jak nie:
mkdir /usr/local/portage && echo 'PORTDIR_OVERLAY="/usr/local/portage"' >> /etc/make.conf
Teraz wszystkie ebuildy w tym katalogu (/usr/local/portage/) będą widoczne dla emerge (/usr/local/portage/kategoria/nazwapakietu/nazwapakietu.ebuild).

Dodajemy ebuild - nowsza wersja pakietu dostępnego w drzewie portage

Załóżmy że chcemy zrobić ebuilda dla nowszej wersji pakiety, np. "xchat". Na początek musimy ustalić jego pełną nazwę (katalog-dział w którym się znajduje):
emerge search xchat
Pełna nazwa to "net-irc/xchat". Tworzymy odpowiedni katalog i kopiujemy najnowszego dostępnego ebuilda:
mkdir -p /usr/local/portage/net-irc/xchat
cp /usr/portage/net-irc/xchat/xchat-2.4.4-r1.ebuild /usr/local/portage/net-irc/xchat/xchat-2.4.5.ebuild
Gdzie 2.4.4-r1 to w danej chwili najnowsza wersja dostępna w portage a wersja 2.4.5 to ta nowsza, której nie ma i bardzo się nam śpieszy... W przypadku drobnych zmian nie wymagających zmian sposobu instalacji wystarczy tylko zmienić numer wersji w nazwie pliku ebuilda. Nie trzeba go edytować.
Kolejnym krokiem jest stworzenie pliku digest:
ebuild /usr/local/portage/net-irc/xchat/xchat-2.4.5.ebuild digest


EBUILDy osób trzecich

W sieci jest ich sporo np. na kde/gnome/xfce-look.org i pochodnych. Po prostu pobieramy ebuild, wrzucamy go do katalogu pod PORTDIR_OVERLAY/katalog-kategoria/pakiet/TUTAJ.ebuild i gotowe.
UWAGA: ebuildy te mogą zawierać błędy lub też celowo mogą nam uszkodzić system albo wrzucić pliki w dziwne miejsca. Możemy zamiast instalować pakiet - zrobić z niego pakiet i zobaczyć co i gdzie będzie umieszczone. Służy do tego opcja -B. Jeżeli pakiet ma zależności to trzeba najpierw je zainstalować (jeżeli pochodzą z drzewa portage to problemów nie ma):
emerge nikczemny_pakiet --onlydeps
emerge -B nikczemny_pakiet
Pierwsz zainstaluje tylko zależności a drugie zrobi pakiet binarny-gotowy do instalacji (/usr/portage/packages/All). Jeżeli jest ok to instalujemy emerge --usepkg nikczemny_pakiet
RkBlog

14 July 2008;

Comment article