Vytváření balíčků v Slackwaru

Z HKfree wiki
Přejít na: navigace, hledání

Autor: Lore, Bongo

1 metoda: Checkinstall

Vytváření slackwarovských balíčku .tgz je velice snadná věc. Obzvláště s nástrojem checkinstall. Stáhnou jej lze na: http://checkinstall.izto.org/ nebo [[1]]

Po naistalovaní checkinstallu můžete vytvářet tgz, rpm a deb balíčky. Případné nastavení lze upravit v konfiguračním souboru /usr/local/lib/checkinstall/checkinstallrc

Pro vytvoření balíčku nějakého softwaru stačí v adresáři se zrojovými souboru napsat příkaz: $ checkinstall

Vyzkoušíme si vytvoření balíčku quaggy.

1. Nejprve rozbalíme distribuční archív.

$ tar zxf quagga-0.98.2.tar.gz

2.Pokud chceme jinou než implicitní konfiguraci zadáme patřičné parametry.

$ ./configure --disable-bgpd --disable-ripd --disable-ripngd

3. Provedeme skompilování a sestavení balíčku.

$ checkinstall

4. Budeme dotázáni na volitelné informace, které budou součástí balíčku.

5. Ve výsledku se nám vytvořil hotový balíček: quagga-0.98.2-i386-1.tgz.

6. Případný upgrade quaggy provedeme pomocí:

$ upgradepkg quagga-0.98.2-i386-1.tgz

A máme nainstalovanou novou zebru :)


2 metoda: makepkg

Druha metoda je jednodušší v tom, že není potřeba instalovat žádný dodatečný software, navíc program checkinstall není u některých uživatelů příliš oblíben.

1. Tvorba balíčku začíná shodně jako v předchozím případě, tedy stažením, konfigurací (script configure) a kompilací (příkaz make).

2. Vytvoříme si adresář, do kterého si nainstalujeme přeložený program (např. /tmp/source/).

3. Poté do tohoto adresáře nainstalujeme přeložený program za pomoci příkazu make (make install DESTDIR=/tmp/source).

4. Přepneme se do adresáře s nainstalovanym programem (můžete si všimnout, že v tomto adresáři se vytvořila potřebná adr. struktura) a dáme příkaz pro vytvoření balíčku (makepkg nazev_baliku). Tím vytvoříme balíček,, který nalezneme v aktuálním adresáři. Ostatní soubory a adresáře můžeme smazat.

Tato metoda nám umožní libovolně a jednoduše zasáhnout do obsahu balíčku, jelikož cokoliv přidáme či upravíme v adresáři, kde balíček tvoříme, to se v něm projeví.


Struktura TGZ balíčku

Tu dopíšu někdy příště ;-)


Motivace

Tentro proces má nesmírnou výhodu, pokud máme více systému, kde chceme provést aktualizaci nejakého softwaru.