Difference between revisions of "Creating packages (Česky)"

From ArchWiki
Jump to: navigation, search
(rm temporary i18n template)
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Category:O Archu (Česky)]]
+
[[Category:About Arch (Česky)]]
[[Category:Výroba Balíčků (Česky)]]
+
[[Category:Package development (Česky)]]
 
+
[[en:Creating Packages]]
 
+
[[es:Creating Packages]]
Tento článen se zaměřuje na pomoc uživatelům, při vytváření vlastních balíčků v Arch Linuxu (a systémech z něho vycházejících). Obsahuje vytvoření [[PKGBUILD (Česky)|PKGBUILD]] – soubor obsahující instrukce pro sestavení pomocí {{ic|makepkg}}, který vytvoří binární balíček ze zdrojového kódu.  
+
[[it:Creating Packages]]
 +
[[ja:Creating Packages]]
 +
[[ru:Creating Packages]]
 +
[[sk:Creating Packages]]
 +
[[tr:Paket_oluşturma]]
 +
[[zh-CN:Creating Packages]]
 +
Tento článek je zaměřen na pomoc uživatelům při vytváření vlastních balíčků v Arch Linuxu (a systémech z něj vycházejících). Obsahuje vytvoření [[PKGBUILD (Česky)|PKGBUILD]] – soubor obsahující instrukce pro sestavení pomocí {{ic|makepkg}}, který vytvoří binární balíček ze zdrojového kódu.  
  
 
== Přehled ==  
 
== Přehled ==  
  
Balíčky v Arch Linuxu jsou sestavovány pomocí [[makepkg]] utility a informací v souboru [[PKGBUILD]]. {{ic|makepkg}} při startu hledá soubor {{ic|PKGBUILD}} v pracovním adresáři a řídí se jeho instrukcemi pro kompilaci. Výsledný balíček obsahuje binární soubory a instrukce k své instalaci pro [[pacman]].
+
Balíčky v Arch Linuxu jsou sestavovány nástrojem [[makepkg]] pomocí informací v souboru [[PKGBUILD]]. {{ic|makepkg}} při startu hledá soubor {{ic|PKGBUILD}} v pracovním adresáři a řídí se jeho instrukcemi pro kompilaci. Výsledný balíček obsahuje binární soubory a instrukce k své instalaci pro [[pacman (Česky)| pacman]].
  
Balíček Archu není nic než tar archív komprimovaný xz nebo 'tarballem', který obsahuje:
+
Balíček Archu není nic než tar archív komprimovaný xz nebo 'tarball', který obsahuje:
  
 
* Binární soubory k instalaci
 
* Binární soubory k instalaci
Line 15: Line 21:
 
* {{ic|.PKGINFO}}: obsahující všechna metadata, které pacman potřebuje pro ostaní balíčky, závislosti atp.
 
* {{ic|.PKGINFO}}: obsahující všechna metadata, které pacman potřebuje pro ostaní balíčky, závislosti atp.
  
* {{ic|.INSTALL}}: volitelný soubor, používaný pro spuštění příkazů po instalaci/upgradu/odstranění stage. (Tento soubor je přítomný pouze pokud je uveden v {{ic|PKGBUILD}}.)
+
* {{ic|.INSTALL}}: volitelný soubor používaný pro spuštění příkazů po instalaci/upgradu/odstranění stage. (Tento soubor je přítomný pouze tehdy, pokud je uveden v {{ic|PKGBUILD}}.)
  
* {{ic|.Changelog}}: volitelný soubor, dokumentující změny v balíčku. (Není přítomný ve všech balíčcích.)
+
* {{ic|.Changelog}}: volitelný soubor dokumentující změny v balíčku. (Není přítomný ve všech balíčcích.)
  
 
== Příprava ==
 
== Příprava ==
Line 23: Line 29:
 
===Potřebný software===
 
===Potřebný software===
  
Nejprve se ujistěte, že potřebné nástroje jsou nainstalované. Skupina balíčků s názvem "base-deve" by měla stačit; obsahuje ''make'' a další nástroje potřebné ke kompilaci ze zdrojového kódu.
+
Nejprve se ujistěte, že potřebné nástroje jsou nainstalované. Skupina balíčků s názvem "base-devel" by měla stačit; obsahuje ''make'' a další nástroje potřebné ke kompilaci ze zdrojového kódu.
  
 
  # pacman -S base-devel
 
  # pacman -S base-devel
Line 40: Line 46:
 
=== Stažení a test instalace ===
 
=== Stažení a test instalace ===
  
Stáhněte zdrojový tarball softwaru, kterého chcete mít balíček, rozpakujte jej a řiďte se kroky autora programu. Zapište každý příkaz a/nebo krok potřebný pro kompilaci a instalaci. Stejné kroky budete opakovat v ''PKGBUILD'' souboru.
+
Stáhněte zdrojový tarball softwaru, kterého chcete mít balíček, rozbalte jej a řiďte se kroky autora programu. Zapište každý příkaz a/nebo krok potřebný pro kompilaci a instalaci. Stejné kroky budete opakovat v ''PKGBUILD'' souboru.
  
 
Většina autorů softwaru se zůstávají u tří kroků:  
 
Většina autorů softwaru se zůstávají u tří kroků:  
Line 52: Line 58:
 
== Vytváření PKGBUILDu ==
 
== Vytváření PKGBUILDu ==
  
Když spustíte {{ic|makepkg}}, bude hledat {{ic|[[PKGBUILD]]}} soubor v pracovním adresáři. Když je soubor {{ic|PKGBUILD}}  nalezen, proběhne stažení zdrojového kódu softwaru a kompilace podle instrukcí v souboru{{ic|PKGBUILD}}. Uvedené instrukce musí být plně interpretovatelné [[Wikipedia:Bash|Bashem]] shellem. Po úspěšném provedení, výsledný binární soubor/soubory a metadata, to je balíček a závislosti jsou zapakované v {{ic|jmeno_balicku.pkg.tar.xz}} souboru balíčku, který může být nainstalovaný pomocí {{ic|pacman -U [soubor_balicku]}}.
+
Když spustíte {{ic|makepkg}}, bude hledat {{ic|[[PKGBUILD (Česky)|PKGBUILD]]}} soubor v pracovním adresáři. Když je soubor {{ic|PKGBUILD}}  nalezen, proběhne stažení zdrojového kódu softwaru a kompilace podle instrukcí v souboru{{ic|PKGBUILD}}. Uvedené instrukce musí být plně interpretovatelné [[Wikipedia:Bash|Bashem]] shellem. Po úspěšném provedení, výsledný binární soubor/soubory a metadata, to je balíček a závislosti jsou zapakované v {{ic|jmeno_balicku.pkg.tar.xz}} souboru balíčku, který může být nainstalovaný pomocí {{ic|pacman -U [soubor_balicku]}}.

Revision as of 08:16, 16 June 2012

Tento článek je zaměřen na pomoc uživatelům při vytváření vlastních balíčků v Arch Linuxu (a systémech z něj vycházejících). Obsahuje vytvoření PKGBUILD – soubor obsahující instrukce pro sestavení pomocí makepkg, který vytvoří binární balíček ze zdrojového kódu.

Přehled

Balíčky v Arch Linuxu jsou sestavovány nástrojem makepkg pomocí informací v souboru PKGBUILD. makepkg při startu hledá soubor PKGBUILD v pracovním adresáři a řídí se jeho instrukcemi pro kompilaci. Výsledný balíček obsahuje binární soubory a instrukce k své instalaci pro pacman.

Balíček Archu není nic než tar archív komprimovaný xz nebo 'tarball', který obsahuje:

  • Binární soubory k instalaci
  • .PKGINFO: obsahující všechna metadata, které pacman potřebuje pro ostaní balíčky, závislosti atp.
  • .INSTALL: volitelný soubor používaný pro spuštění příkazů po instalaci/upgradu/odstranění stage. (Tento soubor je přítomný pouze tehdy, pokud je uveden v PKGBUILD.)
  • .Changelog: volitelný soubor dokumentující změny v balíčku. (Není přítomný ve všech balíčcích.)

Příprava

Potřebný software

Nejprve se ujistěte, že potřebné nástroje jsou nainstalované. Skupina balíčků s názvem "base-devel" by měla stačit; obsahuje make a další nástroje potřebné ke kompilaci ze zdrojového kódu.

# pacman -S base-devel

Jeden z klíčů pro sestavení balíčků je makepkg, který dělá následující:

  1. Kontroluje, jestli jsou nainstalované závislosti.
  2. Stáhne zdrojový soubor (soubory) z uvedeného (uvedených) serveru(serverů).
  3. Rozpakuje zdrojový soubor (soubory).
  4. Zkompiluje software a nainstaluje v fakeroot prostředí.
  5. Oddělí symboly od binárních souborů a knihoven.
  6. Generuje meta soubor balíčku, který obashuje každý balíček.
  7. Zkomprimuje fakeroot prostředí do souboru balíčku.
  8. Uloží soubor balíčku v nakonfigurované cílové složce, výchozí nastavení je pracovní složka.


Stažení a test instalace

Stáhněte zdrojový tarball softwaru, kterého chcete mít balíček, rozbalte jej a řiďte se kroky autora programu. Zapište každý příkaz a/nebo krok potřebný pro kompilaci a instalaci. Stejné kroky budete opakovat v PKGBUILD souboru.

Většina autorů softwaru se zůstávají u tří kroků:

./configure
make
make install

Toto je vhodný čas pro ujištění, jestli program pracuje správně.

Vytváření PKGBUILDu

Když spustíte makepkg, bude hledat PKGBUILD soubor v pracovním adresáři. Když je soubor PKGBUILD nalezen, proběhne stažení zdrojového kódu softwaru a kompilace podle instrukcí v souboruPKGBUILD. Uvedené instrukce musí být plně interpretovatelné Bashem shellem. Po úspěšném provedení, výsledný binární soubor/soubory a metadata, to je balíček a závislosti jsou zapakované v jmeno_balicku.pkg.tar.xz souboru balíčku, který může být nainstalovaný pomocí pacman -U [soubor_balicku].