Ve Fedoře lze aplikace instalovat buď v prostředí, které nahlíží na software jako na aplikace, nebo dvěma tradičními způsoby - pomocí tzv. balíčků nebo kompilací zdrojového kódu. Následující kapitola obsahuje stručný popis všech těchto možností.
Tradiční způsob instalace aplikací ve Fedoře, který je popsaný dále v kapitole, spočívá v instalaci balíčků. Pod nimi se však kromě aplikací může skrývat i další software jako např. knihovny, zásuvné moduly, jaderné moduly, které běžného uživatele zpravidla nezajímají. Proto vznikla aplikace GNOME Software, která má za cíl uživatelům nabízet software pouze v podobě aplikací. Avšak v takové podobě, v jaké jsou na ni zvyklí ze softwarových center ostatních platforem, především mobilních. GNOME Software nakonec k instalaci aplikací také využívá balíčky, ale uživatele od práce s nimi odstiňuje.
GNOME Software naleznete pod aplikací Software a ikonou nákupní tašky (pokud používáte jiné prostředí než výchozí GNOME, nemusí být GNOME Software nainstalován, v takovém případě jej můžete nainstalovat z balíčku gnome-software pomocí nástrojů uvedených dále v kapitole). Jak můžete vidět na snímku obrazovky níže, nabízí tři karty: Vše, Nainstalované a Aktualizace. Pod Vše můžete aplikace vyhledávat nebo si vybrat jednu z doporučovaných, případně brouzdat jednotlivými kategoriemi. Momentálně profily aplikací nabízejí pouze ikonu a rozšířený popis, ale do budoucna se plánují i snímky obrazovky nebo hodnocení uživatelů. Pokud se vám aplikace líbí, můžete ji nainstalovat modrým tlačítkem Nainstalovat v pravém horním rohu. Na kartě Nainstalované naleznete seznam nainstalovaných aplikací a je také místem, kde můžete aplikace odinstalovat. Na kartě Aktualizace naleznete seznam dostupných aktualizací jak systému, tak aplikací.
Softwarový balíček je ve své podstatě standardizovaný „balík“ souborů nezbytných pro spuštění určitého programu. Obsahuje tedy samotnou aplikaci, informace o jejím umístění v systému, procedury které se mají provést při instalaci / odstranění aplikace a informace o tom, jaké další aplikace potřebuje program ke své činnosti (tzv. závislosti). S jednotlivými balíčky je možné „manipulovat“ pomocí některého ze systémů pro správu balíčků. Správce balíčků se používá pro konzistentní instalaci, aktualizaci a odebírání aplikací.
Fedora používá balíčky rpm (RPM Package Manager - jedná se o tzv. rekurzivní zkratku). rpm sice v dnešní době představuje především formát softwarových balíčků, avšak jméno samotné se vyvinulo z původního správce balíčků, který byl používán pro jejich správu (Red Hat Package Manager). Tento správce je sice ve Fedoře stále k dispozici, avšak z hlediska funkcionality byl překonán vyspělejším správcem balíčků yum. Existují také další „balíčkové“ standardy a správci - například Debian1) používá balíčky deb a správce balíčků apt.
O jaký balíček se jedná, lze velice jednoduše poznat podle jeho koncovky. Balíčky rpm tak mají koncovku .rpm, balíčky deb pak koncovku .deb. To, že se jedná o balíček rpm, není dostačující podmínkou pro to, abyste byli schopni ho nainstalovat. Balíčky tohoto standardu totiž používají také jiné distribuce jako např. Mandriva. Navíc musí být balíček určen pro architekturu Vašeho počítače (např. i386, i686, x86_64 2)). Některé balíčky nejsou závislé na architektuře počítače (např. dokumentace) - tyto balíčky jsou v názvu označeny slovem noarch. Zkratka src označuje zdrojové kódy, které jsou také shodné pro všechny architektury. Dále je velmi doporučeníhodné, aby daný balíček byl určen přímo pro Vaši verzi distribuce. Všechny potřebné údaje jsou zakompovány do názvu balíčku. Například
xmms-1.2.10-23.f17.x86_64.rpm
je balíčkem multimediální aplikace xmms verze 1.2.10-23 určeným pro Fedoru 17 a architekturu x86_64.
Balíčky se nacházejí na instalačním DVD v adresáři Packages. Na Internetu jsou balíčky k dispozici např. na www.rpmseek.com a v tzv. repozitářích (viz. dále).
Balíčky .rpm lze instalovat pomocí
rpm -Uvh soubor_balicku.rpm
a odinstalovat pomocí
rpm -e jmeno_balicku
Následující příkaz Vám vypíše všechny nainstalované balíčky seřazené vzestupně podle datumu instalace.
rpm -qa --last | tac
Základní nevýhodou správce balíčků rpm je, že neohlídá závislosti mezi jednotlivými balíčky. Jeden balíček totiž může pro svou instalaci vyžadovat balíček jiný. Tato závislost může být několikanásobná - Vámi požadovaný balíček může být závislý na dalších třech, které mohou zase vyžadovat další balíčky atd. Snadno se tak dostanete do situace, která je označována jako „rpm hell“. Nainstalovat / odebrat konkrétní balíček pak může být úkol vskutku nadlidský. Proto byl vyvinut správce balíčků yum, který umí tyto závislosti ohlídat a nainstaluje / odebere všechny potřebné balíčky za Vás.
Poznámka: Bližší informace o příkazu rpm viz. man rpm
nebo info rpm
.
Jak bylo zmíněno v kapitole Instalování / odinstalování balíčků pomocí rpm, nejlepším způsobem, jak instalovat aplikace, je použít správce balíčků yum. Abychom však mohli yum používat, musíme mít nastaveny tzv. repozitáře. Repozitáře jsou servery, na nichž jsou uloženy soubory určené pro distribuci po Internetu. Z repozitářů je možné si stáhnout balíčky pro rozšíření / aktualizaci Vaší Fedory (např. nejrůznější kodeky a aplikace, které nejsou standardní součástí instalačního DVD). Jinými slovy je to zdroj softwaru. Z repozitáře lze instalovat programy pomocí buď textového příkazu yum
nebo grafických nástrojů jako například PackageKit nebo yumex. Následující text předpokládá funkční připojení k Internetu.
Jestliže máte do systému přidány repozitáře, můžete používat správce balíčků yum. Jak již bylo několikrát zmíněno, slouží yum ke konzistentní instalaci, aktualizaci a odebírání balíčků. Navíc yum ohlídá závislosti mezi jednotlivými balíčky3) a tím značně zjednoduší jejich instalaci. Velice se doporučuje provádět správu balíčků právě prostřednictvím yum.
usage: yum [options] < update | install | info | remove | list | clean | provides | search | check-update | groupinstall | groupupdate | grouplist | groupinfo | groupremove | makecache | localinstall | erase | upgrade | whatprovides | localupdate | resolvedep | shell | deplist > options: -h, --help show this help message and exit -t, --tolerant be tolerant of errors -C run entirely from cache, don't update cache -c [config file] config file location -R [minutes] maximum command wait time -d [debug level] debugging output level -e [error level] error output level -y answer yes for all questions --version show Yum version and exit --installroot=[path] set install root --enablerepo=[repo] enable one or more repositories (wildcards allowed) --disablerepo=[repo] disable one or more repositories (wildcards allowed) --exclude=[package] exclude package(s) by name or glob --obsoletes enable obsoletes processing during updates --noplugins disable Yum plugins
Na první pohled se používání příkazu yum může jevit složité, ale ve skutečnosti je velice jednoduché.
Příklady:
Následující příkaz vygeneruje seznam všech balíčků, které souvisí s aplikací jmeno_aplikace
.
yum search jmeno_aplikace
Chceme-li získat o určitém balíčku více informací stačí zadat
yum info jmeno_aplikace
yum může také projít všechny Vámi nastavené repozitáře a podat informaci o tom, kde je možné získat příslušný balíček.
yum list available
Přehled nainstalovaných balíčků získáte zadáním
yum list installed
yum také umožňuje získat přehled jednotlivých skupin balíčků (např. Administration Tools, Sound and Video, MySQL Database apod.).
yum grouplist
Jestliže chcete získat přehled balíčků k aktualizaci, zadejte do příkazové řádky
yum list update
Nové aplikace lze nainstalovat pomocí
yum install jmeno_aplikace
yum také umožňuje instalaci celé skupiny aplikací. Například skupinu aplikací pro přehrávání audia a videa lze snadno nainstalovat pomocí
yum groupinstall „Sound and Video“
Jestliže jste stáhli rpm balíček do adresáře /path/to/the/rpm
můžete jeho instalaci provést pomocí následujícího příkazu. yum se postará o případné závislosti a stáhne požadované balíčky.
yum localinstall /cesta/k/lokalnimu/rpm
yum je také schopen aktualizovat systém bez interakce uživatele, budete-li si to přát4).
yum update
V případě, že si nejste jisti, zda-li máte aktuální balíčky, zadejte
yum check-update
Může se stát, že budete chtít vědět, jaké balíčky byly aktualizovány s poslední aktualizací. Jednotlivé aktualizace jsou očíslovány a jejich seznam můžete vypsat příkazem:
yum history
Potom vyberete aktualizaci, o které chcete vědět podrobnější informace a její pořadové číslo zadáte do následujícího příkazu, který vypíše mimo jiné i balíčky, které byly změněny:
yum history info cislo
Pomocí příkazu yum můžete odinstalovat nejen daný balíček ale také balíčky, které instalaci tohoto balíčku podmiňují, a které byly s tímto balíčkem nainstalovány.
yum remove jmeno_aplikace
Poznámka: Více informací o správci balíčků yum lze získat pomocí man yum
popř. info yum
.
Pokud Vám v cestě do Internetu stojí proxy server, můžete jeho používání pro yum nastavit v /etc/yum.conf
, kde do sekce main
musíte přidat
proxy = jmeno.nebo.ip.proxy:port proxy_username = uzivatelske_jmeno proxy_password = heslo
Grafické aplikace pro instalaci softwaru existují ve Fedoře dvě - PackageKit a Yumex, přičemž PackageKit naleznete ve výchozí instalaci.
PackageKit je další vrstva, která dokáže běžet nad různými správci balíčků, v případě Fedory nad yumem. Nad ní běží různá grafická rozhraní. Ve Fedoře je to gnome-packagekit, který naleznete pod názvem Software, a Apper, který se používá v KDE Spinu. Jelikož Software je výchozí aplikací, budou následující řádky věnovány právě jemu.
Jak můžete vidět na obrázku, Software má jednoduché rozhraní. Vlevo nahoře je pole pro vyhledávání balíčků. Pod ním naleznete kategorie, podle kterých balíčky můžete filtrovat. V pravé horní části se nachází seznam nalezených/vyfiltrovaných balíčků a v dolní části potom informace o vybraném balíčku.
Instalaci nebo odstranění balíčku jednoduše provedete tak, že označíte nebo odznačíte zaškrtávací políčko a kliknete na tlačítko Použít v pravém dolním rohu.
Seznam balíčků, na kterých vybraný balíček závisí, můžete získat v nabídce Výběr → Závisí na. Zobrazí se vám okno jako na obrázku níže. Obrácenou závislost, tedy balíčky, které závisí na vybraném balíčku, zobrazíte kliknutím na Požadováno od. Užitečnou funkcí je také zobrazení souborů, které se do systému při instalaci daného balíčku nahrají: Výběr → Získat seznam souborů.
V nabídce Filtry naleznete další možnosti filtrování balíčků. Užitečné je Systém → Záznam o softwaru, které vám zobrazí historii práce s balíčky (instalace, odinstalace, aktualizace,…). To se hodí v případě, že se v systému něco rozbije a vy potřebujete zjistit, jakou změnou v nainstalovaných balíčcích to bylo způsobeno.
Yumex, celým jménem Yum Extender, je stejně jako PackageKit nádstavbou nad yumem. Na rozdíl od něj ale umí pracovat pouze s yumem. Yumex byl na místě výchozí grafického správce ve Fedoře nahrazen aplikací Přidat/odebrat software. Nicméně stále je vyvíjen a v určitých ohledech Přidat/odebrat software překonává. Naleznete jej v repozitářích a nainstalujete následujícím příkazem:
yum install -y yumex
Naleznete jej v (Činnosti) → Aplikace → Systémové nástroje → Yumex.
Konkrétní balíček nainstalujete popř. zaktualizujete na kartě Balíčkový náhled5). Na této kartě můžete třídit balíčky podle několika kritérií6):
Balíčky, které vyhovují výše uvedeným kritériům třídění, se zobrazí v hlavním části okna aplikace. Jestliže kliknete na vybraný balíček, je možné o něm získat bližší informace na záložkách Popis, Informace, Soubory, Záznamy o změnách a Ostatní, které se nachází u dolního okraje okna aplikace.
Jestliže chcete vybraný balíček nainstalovat popř. zaktualizovat, stačí ho na seznamu vyfiltrovaných balíčků zaškrtnout. V případě, že chcete balíček odebrat, odškrtněte balíček ze seznamu nainstalovaných balíčků. Samotný proces zpracování balíčků spustíte tlačítkem Použít, které se nachází v pravém dolním rohu okna aplikace.
Seznam balíčků, které jste vybrali pro instalaci, aktualizaci popř. odebrání ze systému naleznete na kartě Náhled fronty balíčků7). Zpracování balíčků ve frontě můžete spustit pomocí tlačítka Použít, které se nachází v pravém dolním rohu okna aplikace.
Zahrnutí popř. vyjmutí již přidaného repozitáře provedete pouhým označením popř. odznačením zvoleného repozitáře na kartě Náhled výběru z repozitáře8). yumex neumožňuje přidávání nových repozitářů ale pouze správu stávajících!
Na poslední kartě Náhled výstupu9) naleznete hlášení aplikace yumex, která se mohou hodit v případě analyzování problémů.
Váš systém standardně obsahuje odkazy na základní repozitáře fedora a updates. Velice užitečnými repozitáři, které nejsou implicitně nastaveny, jsou např. repozitáře RPM Fusion. Tyto repozitáře přidáte pomocí příkazu
rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm
Příslušné konfigurační soubory pro jednotlivé repozitáře jsou uloženy v adresáři /etc/yum.repos.d
. Každý ze souborů v tomto adresáři obsahuje informace o jednom repozitáři. Výpisem obsahu tohoto adresáře lze tak snadno zjistit, jaké konkrétní repozitáře máte nastaveny. Soubory můžete přidávat, odebírat popř. editovat běžným textovým editorem.
Poznámka: Přidat repozitáře RPM Fusion můžete jednoduše také pomocí aplikace easyLife.
GNU Privacy Guard (GnuPG nebo také GPG) je náhradou kryptografického softwaru PGP. GPG používá asymetrického šifrování (tj. konceptu veřejného a soukromého klíče).
Některé repozitáře nebudou fungovat pokud nebudete mít nainstalován jejich GPG klíč (záleží to na nastavení parametru gpgcheck v nastavení repozitáře. K zadání následujících příkazů musíte být přihlášen jako superuživatel. Pomocí příkazu
rpm --import http://<adresa>/<JMENO-GPG-KLICE>
stáhnete a nainstalujete veřejné klíče k repozitáři. Klíče pak slouží k účelům autentifikace balíčků stažených přes Internet. Tento způsob by Vám měl poskytnout jistotu, že balíčky skutečně pocházejí z daného repozitáře.
Poznámka: Aby byla při stažení balíčků z repozitáře provedena autentifikace pomocí GPG klíčů, je třeba mít v konfiguračním souboru10) příslušného repozitáře nastaveno gpgcheck=1
. Jestliže máte v konfiguračním souboru daného repozitáře nastaveno gpgcheck=0
, nebude autentifikace balíčků provedena.
Jestliže nemáte funkční připojení k Internetu, je možné si z Vašeho instalačního DVD vytvořit ISO obraz a ten následně připojit jako repozitář. Výhody a nevýhody lokálního repozitáře jsou zřejmé - na jedné straně je velice rychlá instalace balíčků, na druhé straně stojí absence balíčků z repozitáře RPM Fusion a po nějakém čase také neaktuální balíčky.
Vytvořte adresář /opt/fedora
, ve kterém bude umístěn ISO obraz instalačního DVD. K tomu, abyste byli schopni vytvořit ISO obraz, budete potřebovat 3.5 GB volného diskového prostoru.
mkdir /opt/fedora
Předpokládejme, že soubor zařízení Vaší DVD mechaniky je /dev/cdrom
. ISO obraz instalačního DVD vytvoříte v adresáři /opt/fedora
pomocí příkazů
cd /opt/fedora umount /dev/cdrom dd if=/dev/cdrom of=fedora.iso bs=1024
Dále vytvořte adresář /opt/lokalni_repozitar/dvd
. Do tohoto adresáře se bude připojovat ISO obraz.
mkdir -p /opt/lokalni_repozitar/dvd
Ten připojíte pomocí
mount -r -o loop /opt/fedora/fedora.iso /opt/lokalni_repozitar/dvd
Níže uvedeným příkazem nainstalujete balíček createrepo
z instalačního DVD.
cd "/opt/lokalni_repozitar/dvd/Packages" rpm -Uhv createrepo-0.9.5-2.f17.noarch.rpm
Následně se přesuňte do adresáře /opt/lokalni_repozitar
a vygenerujete seznam balíčků obsažených na instalačním DVD. Tato operace může trvat až několik minut v závislosti na výkonu Vašeho počítače.
cd /opt/lokalni_repozitar createrepo .
Aby nebylo nutné pokaždém restartu systému ISO obraz připojovat ručně, otevřete soubor /etc/fstab
gedit /etc/fstab
a na jeho konec přidejte řádek
/opt/fedora/fedora.iso /opt/lokalni_repozitar/dvd iso9660 ro,loop 0 0
Poznámka: Soubor fstab
musí vždy končit prázdnou řádkou - v opačné případě bude systém hlásit chybu.
Dále je třeba přidat nově vytvořený repozitář do seznamu repozitářů určených pro aktualizaci systému - to umožní aplikaci yum použít tento repozitář pro aktualizaci systému. Vytvořte soubor lokalni_repozitar.repo
.
gedit /etc/yum.repos.d/lokalni_repozitar.repo
Do nově vytvořeného souboru zkopírujte řádky
[lokalni_repozitar] name=Lokalni repozitar baseurl=file:///opt/lokalni_repozitar enable=1 gpgcheck=0
a soubor uložte.
Poznámka: Jestliže repozitář uložíte na sdílený disk, lze tímto způsobem vytvořit repozitář, který je možné následně využívat v rámci lokální sítě.
Při kompilaci zdrojových kódů překládáme programový kód pomocí tzv. kompilátoru. Standardně se jedná o kompilátor gcc, který je součástí vývojových balíčků. Tyto balíčky musíte mít nainstalovány, abyste byli schopni zdrojový kód zkompilovat. Nejprve stáhněte požadovaný soubor obsahující zdrojový kód např. na stránkách www.sourceforge.org. Soubor rozbalte11) a prostudujte přiložené soubory README popř. INSTALL. V nich je vysvětleno krok za krokem, jak postupovat při samotné kompilaci. Ve většině případů je postup následující
su - ./configure & make & make install
Kompilace aplikací ze zdrojových kódů s sebou přináší výhody i nevýhody. Výhodou je, že „ručně“ zkompilovaný program je zpravidla méně náročný na systémové prostředky, což může být zejména na slabších strojích pádný argument. Nevýhodou je, že tento způsob instalace vyžaduje relativně podrobnou znalost systému Linux a že o splnění případných závislostí se musí uživatel postarat sám. Z těchto důvodů se jednoznačně upřednostňuje instalace programů pomocí správce balíčků yum. Ke kompilaci ze zdrojových kódů je možné přistoupit v případě, že požadovaná aplikace není součástí repozitářů.
Poznámka: Některé aplikace je možné používat okamžitě po jejich rozbalení. Jednou z takovýchto aplikací je např. FPS hra Sauerbraten.
uname -m
. Dále je dobré vědět, že balíčky pro architekturu i386 je možné používat pro všechny architektury typu x86 - tj. i386, i486, i586 a i686./etc/yum.repos.d
.