Portál AbcLinuxu, 4. května 2025 04:27
V posledním díle si vysvětlíme práci s ABS stromem a ukážeme, jak použít skript makeworld.
ABS (The Arch Build System) není nic jiného než strom balíčků z repositářů Arch Linuxu, tedy přesněji řečeno PKGBUILDy, které slouží k sestavení balíčku. Běžně tento strom na svém počítači stažený nemáte; pokud jej chcete, je třeba spustit příkaz abs
, který stáhne jeho aktuální podobu z cvs. Aby vám abs fungoval, musíte mít nainstalován balíček cvsup
nebo csup
.
ABS strom je umístěn v adresáři /var/abs
, strom vypadá nějak takto:
/var/abs/ |-- base | |-- acl | |-- attr ... | |-- xfsprogs | `-- zlib |-- community | |-- daemons | | |-- abyssws | | |-- anacron ... | `-- unixodbc |-- editors | |-- gvim | `-- joe |-- extra | |-- daemons | | |-- autofs ...
Nejběžnějším použitím bude úprava parametrů při kompilaci, přidání nějaké vlastnosti či opatchování zdrojových kódů. Například pokud balíček je v repositáři zkompilovaný bez podpory OSS a vy ji vyžadujete, není nic jednoduššího, než si upravit PKGBUILD a balíček si znovu sestavit pomocí makepkg
.
Zde je třeba pamatovat na pořádek a vlastní upravené PKGBUILDy dávat někam stranou. Nejlépe si vytvořit adresář /var/abs/custom
a do něj si vždy zkopírovat celý adresář s PKGBUILDem který chceme upravit. Často totiž bývají u PKGBUILDu i patche. O tom, jak psát (upravovat) a pracovat s PKGBUILDy byl předchozí díl seriálu.
V předchozím díle bylo také zmíněno, že v nastavení makepkg
, který slouží k sestavování balíčku, lze nastavit optimalizaci pro procesor. Proto lze v extrémním případě zvažovat kompletní překompilování celého systému a tím dosáhnout optimalizace přímo na míru.
Právě k tomu slouží skript makeworld
; spouští se:
/usr/bin/makeworld [volby] <cilovy_adresar> <kategorie> [kategorie] ...
Potom je vhodné v adresáři, kam se zkopírovaly hotové balíčky, vytvořit lokální repositář a ten si přidat do pacmana. Zajistíte tím řešení závislostí.
Tento postup ale s sebou nese několik nepříjemností: musíte si sami hlídat aktualizace, a pokud nechcete míchat vlastní balíčky s balíčky z repositářů, je vhodné používat jen lokální repositář a zakázat oficiální. Potom je ale třeba také pamatovat na závislosti, tedy mít všechny potřebné balíčky v lokálním repositáři.
Z těchto důvodů je makeworld vhodný, například pokud byste chtěli spravovat repositáře pro jinou než oficiálně podporovanou platformu. Pokud toužíte po optimalizovaném systému, Arch sice nabízí řešení, ale není tím pravým - je to sice možné, ale je třeba velké úsilí.
Balíčkovací systém Arch Linuxu má jednoduché základy, je přehledný a snadno pochopitelný. Pacman dokáže systém udržovat v aktuální podobě a čistý bez balíčků, které by zůstaly nainstalovány jako nepotřebné závislosti.
Jestliže vám některý balíček nevyhovuje, není problém si jej díky ABS stromu upravit. Pokud něco chybí, není problém si vytvořit balíček. PKGBUILDy mají jednoduchou a přehlednou strukturu (nezapomeňte PKGBUILD poskytnout ostatním).
Pokud tedy hledáte distribuci, která je rychlá a flexibilní a má skvělý balíčkovací systém přístupný uživatelům, potom je Arch Linux jasná volba.
Doufám, že vám seriál přinesl užitečné informace a pomohl poodkrýt roušku tajemství pacmana a balíčků pro Arch Linux.
netcfg
, profily, atd.). Stejne tak rc.conf
a moznost vyberu sitoveho profilu pri bootu atd. atd. ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.