Většina lidí, dokonce i lidé, kteří fušují do Linuxu, úplně nerozumí rozdílu mezi Linuxem, GNU/Linuxem a GNU toolchain, ale na rozdílech záleží, když přemýšlíte o určitých typech softwarových závislostí.
Linux a GNU
Linux vychází z řetězce vývoje, který začal Unixem. Jako takový je velká část Linuxu navržena podobně a může dokonce obsahovat kód Unix.
GNU však jeho tvůrce Richard Stallman zamýšlel jako zcela svobodný a nezávislý operační systém, který nepoužívá stejnou kódovou základnu nebo licenční normy jako Unix nebo Linux. Oba jsou samostatné projekty. Tak nějak.
GNU/Linux
Výzvou projektu GNU však je, že jeho jádro – základní software, který interaguje s hardwarem a koordinuje všechny ostatní aplikace – ještě není připraveno k produkci. Jádro GNU Hurd, vydané v předprodukčním stavu v roce 2015, stále není připraveno na hlavní vysílací čas.
Řešení? Linux. Linuxové jádro ve formě Linux-Libre se stalo součástí projektu GNU. Tedy GNU s linuxovým jádrem nebo GNU/Linux.
The GNU Toolchain
GNU distribuce obvykle provozuje linuxové jádro, ačkoli GNU Hurd zůstává k dispozici pro nekritické testování. Co však odlišuje distribuci GNU od jakékoli jiné distribuce Linuxu, je integrace GNU toolchain, série několika stovek programů, které jsou zdarma a s otevřeným zdrojovým kódem a podporují vývoj nového svobodného softwaru.
Mezi běžné prvky GNU toolchainu patří GNU Make, GNU C Library, GNU Debugger a GNU build system.
Další balíčky GNU
Aplikace, včetně grafických aplikací určených pro interakci koncového uživatele, mohou být součástí deštníku GNU, pokud se řídí filozofickými pokyny stanovenými Stallmanem. Mezi běžné aplikace rodiny GNU patří:
- TexInfo: Jazyk a program pro zobrazování technické dokumentace.
- GNU Emacs: Systém pro zpracování dokumentů.
- GNOME: Správce plochy, který poskytuje základní vzhled a chování grafického uživatelského rozhraní.
- GNU Octave: Prostředí statistik modelované podle Matlabu.
- GNU He alth: Elektronický zdravotní záznam pro lékaře a nemocnice.
- GnuCash: Systém osobních financí.