Svatá trojkombinace
Termín svatá trojkombinace se používá obvykle v souvislosti s instalací open source programů jako sarkastické označení trojice příkazů configure
, make
a make install
.
Důvodem vzniku tohoto hanlivého označení je nespočet různých návodů a článků, ve kterých autoři neuváženě doporučují instalovat program ze zdrojových kódů ručně zadanou posloupností příkazů mezi něž uvedené patří, ačkoliv je většinou k disposici lepší alternativa — využití balíčkovacího systému dané distribuce operačního systému.
Kompletní postup instalace programu ze zdrojových kódů sestává obvykle z následujících činností:
- Stažení archivu se zdrojovými kódy
- Rozbalení archivu (např.
tar -xzf jméno_programu.tgz
) - Příprava pro kompilaci na daném systému – příkaz
configure
provede nastavení parametrů pro kompilátor např. podle typu procesoru, dostupných knihoven a umožňuje uživateli upravit některé parametry, které nelze měnit za běhu programu - Sestavení (kompilace) programu – příkaz
make
- Vlastní instalace – příkaz
make install
zkopírování součástí programu na obvyklá místa v systému
Tento postup má značnou výhodu, že je prakticky nezávislý na použitém operačním systému (pokud je daná rodina programem podporována), ale mnoho nevýhod:
- pracnost a neintuitivnost
- náročnost na čas (u větších programů trvá kompilace v řádu hodin i na současných nejrychlejších PC)
- problematičtější odinstalace (někdy je možné v původním adresáři, odkud byl program instalován, spustit příkaz
make uninstall
) - někdy nutná dobrá znalost systému pro postinstalační/odinstalační zásahy (přidávání zvláštních uživatelských kont, zásahy do startovacích skriptů atp.)
- uživatel si musí udržovat přehled o instalovaném software sám
- uživatel musí sám zajistit sledování (bezpečnostních) aktualizací
- není zaručená kompatibilita s ostatními komponentami v systému (bezchybný chod dané verze programu)
Řadu uvedených problémů řeší použití balíčkovacích systémů; jedinou podmínkou je, aby byl program dostupný i ve formě balíčku pro danou distribuci operačního systému (resp. obvykle je možnost naimportovat i balíčky z jiné distribuce), což u běžně užívaných programů není problém.
Mezi běžně používané balíčkovací systémy patří:
- pro Windows: Windows Installer (
.msi
) - pro Linux: Debian package (
.deb
— Debian GNU/Linux, Ubuntu …), RPM Package Manager (.rpm
— RedHat, Fedora Core, Mandriva Linux …), Portage (.ebuild
— Gentoo Linux) - pro Mac OS: Installer (
.pkg
) - pro BSD: PC-BSD Installer (
.pbi
— PC-BSD), Ports Collection (FreeBSD)
Většina balíčkovacích systémů používá k instalaci tzv. binární balíčky, tedy archivy obsahující již zkompilovaný program, některé ale umožňují zvolit tzv. zdrojový balíček a provést kompilaci ze zdrojových kódů. Jiné systémy instalují ze zdrojových kódů (které ani nemusí být součástí balíčku, ale balíčkovač je stahuje odděleně) a binární formu nabízí třeba jen jako alternativu u vybraných programů.