HOGYAN készítsünk frissített Ebuild-et

A Gentoo Linux Wiki wikiből

Tartalomjegyzék

[szerkesztés] Bevezetés

Nos, találtunk egy nagyon jó programot így megnézzük, hogy benne van-e a portage fában - Benne van, de nem a legfrissebb verzió. Hogyan készíthető el az új verzió? A válasz némiképp bonyolult lehet a kezdőbbeknek, de ha egyszer megcsináljuk, sosem felejtjük el. Ez a HOWTO erről fog szólni.

[szerkesztés] A Portage Overlay használata

A portage-nek van egy kiemelkedően hasznos szolgáltatása pont az ilyen esetekre - amit overlay-nek hívnak. Az "overlay" egy könyvtár melybe az ebuild-jeinket rakhatjuk de úgy lesznek kezelve, mintha az aktuális portage fában lennének - mintha az emerge sync-el lettek volna leszedve. Fontos azonban megjegyezni, hogy az emerge sync nem írja fölül ezt a könyvtárat ellentétben azzal ha valamit a valódi portage mappához adunk.

Nos, hogyan is lehet az "overlay"-t beállítani? A következő rész erről szól.

[szerkesztés] Overlay készítése

Egy portage overlay készítéséhez a következő sort kell hozzáadni a /etc/make.conf állományhoz:

PORTDIR_OVERLAY="/usr/local/portage"

A legegyszerűbben ezt úgy végezhetjük el, ha root felhasználóval kiadjuk a következő parancsot:

mkdir /usr/local/portage && echo 'PORTDIR_OVERLAY="/usr/local/portage"' >> /etc/make.conf

Ez a parancs egy lépésben létrehozza a mappát és hozzáadja az overlay-t a make.conf-hoz.

[szerkesztés] A frissített Ebuild elkészítése

Továbbhaladva, keressük meg a már-portage-ben-lévő ebuild-et. A példában az xchat-et használjuk:

# emerge search xchat
 *  net-irc/xchat
      Latest version available: 2.0.8
      Latest version installed: 2.0.8
      Size of downloaded files: 1,067 kB
      Homepage:    http://www.xchat.org/
      Description: Graphical IRC client
      License:     GPL-2
 *  net-irc/xchat-systray
      Latest version available: 2.4.0
      Latest version installed: [ Not Installed ]
      Size of downloaded files: 41 kB
      Homepage:    http://blight.altervista.org/
      Description: System tray plugin for X-Chat.

Most már tudjuk az xchat teljes nevét: net-irc/xchat. Folytathatjuk a saját ebuild-ünk elkészítését.

[szerkesztés] Ebuild másolása az overlay-be

Most már bemásolhatjuk az ebuild-et az overlay-be az új verziószámmal, de először, létre kell hoznunk neki a megfelelő könyvtárat:

mkdir -p /usr/local/portage/net-irc/xchat

Most már átmásolhatjuk a régi ebuild-et az új helyre:

cp /usr/portage/net-irc/xchat/xchat-2.0.8.ebuild /usr/local/portage/net-irc/xchat/xchat-2.0.9.ebuild

Ezt követően egy digest-et kell készítenünk hozzá.

[szerkesztés] Digest készítése

A következőket kell tenni a digest elkészítéséhez:

ebuild /usr/local/portage/net-irc/xchat/xchat-2.0.9.ebuild digest

A parancs letölti az állományokat és elkészíti a hozzájuk tartozó md5 összeget. Általában ennyi az egész. Az xchat-nek ebben a verziójában (2.0.8) azonban volt egy biztonsági rés melyet az ebuild befoltozott és a 2.0.9-es verzióban a fejlesztők javították a hibát. Itt fordulhatnak elő hibák.

[szerkesztés] A foltozott ebuild javítása

Meg kell nyitnunk az új ebuild-et:

nano -w /usr/local/portage/net-irc/xchat-2.0.9.ebuild

Majd megkeressük a probléma forrását:

# fix for sock5 vulnerability - see #46856
epatch ${FILESDIR}/xc208-fixsocks5.diff

Ahhoz, hogy az epatch működjön a következőt kell beírni az ebuild első sorába:

inherit eutils

A sock5 sebezhetőség javítva lett a 2.0.9-es verzióban, így törölhetjük azt az epatch-t, majd ezután az ebuild-nek hibamentesen fordulnia kell.

Ugyanígy járhatunk el más ebuild-ekkel is, hogy a lehető legfrissebb rendszert kapjuk.

Személyes eszközök