V roce 2021 existuje více důvodů, proč lidé milují Linux než kdykoli předtím. V této sérii se podělím o 21 různých důvodů, proč používat Linux. Dnes budu mluvit o tom, proč je balení pro Linux ideální pro programátory.
Programátoři rádi programují. To se pravděpodobně zdá jako zřejmé prohlášení, ale je důležité pochopit, že vývoj softwaru zahrnuje mnohem více než jen psaní kódu. Zahrnuje kompilaci, dokumentaci, správu zdrojového kódu, instalační skripty, výchozí nastavení konfigurace, podpůrné soubory, formát doručení a další. Dostat se z prázdné obrazovky k doručitelnému instalačnímu softwaru vyžaduje mnohem víc než jen programování, ale většina programátorů raději programuje než balí.
Co je balení?
Když je jídlo odesláno do obchodů k nákupu, je zabaleno. Při nákupu přímo od farmáře nebo v ekologicky šetrném obchodě s velkoobjemovým zbožím nebo popelnicí je obal takový obal, který jste si přinesli s sebou. Při nákupu v obchodě s potravinami může být balením kartonová krabice, plastový sáček, plechovka atd.
Další zdroje pro Linux
- Cheat pro příkazy Linuxu
- Cheat sheet pro pokročilé příkazy systému Linux
- Bezplatný online kurz:Technický přehled RHEL
- Síťový cheat pro Linux
- Cheat sheet SELinux
- Cheat pro běžné příkazy pro Linux
- Co jsou kontejnery systému Linux?
- Naše nejnovější články o Linuxu
Když je software zpřístupněn uživatelům počítačů jako celku, musí být také zabalen. Stejně jako jídlo existuje několik způsobů, jak lze software zabalit. Software s otevřeným zdrojovým kódem lze ponechat nezabalený, protože uživatelé, kteří mají přístup k surovému kódu, jej mohou sami zkompilovat a zabalit. Balíčky však mají své výhody, takže aplikace jsou běžně dodávány v nějakém formátu specifickém pro platformu uživatele. A tam začínají problémy, protože neexistuje pouze jeden formát pro softwarové balíčky.
Pro uživatele balíčky usnadňují instalaci softwaru, protože veškerou práci provádí instalační program systému. Software je extrahován z balíku a distribuován na příslušná místa v rámci operačního systému. Je malá příležitost, aby se něco pokazilo.
Pro vývojáře softwaru však balení znamená, že se musíte naučit, jak vytvořit balíček – a ne pouze jeden balíček, ale jedinečný balíček pro každý operační systém, na který chcete software nainstalovat. Aby to bylo komplikované, existuje několik formátů balení a možností pro každý operační systém a někdy dokonce i pro používaný programovací jazyk.
Balení v systému Linux
Možnosti balení pro Linux se tradičně zdály dost ohromující. Distribuce Linuxu odvozené od Fedory, jako je Red Hat a CentOS, mají výchozí hodnotu .rpm
balíčky. Debian a Ubuntu (a podobné) mají výchozí hodnotu .deb
balíčky. Jiné distribuce mohou používat jednu nebo druhou nebo žádnou, přičemž se rozhodnou pro vlastní formát. Na otázku mnoho uživatelů Linuxu říká, že v ideálním případě programátor svůj software pro Linux vůbec nezabalí, ale místo toho se při vytvoření balíčku spoléhá na správce balíčků každé distribuce. Veškerý software nainstalovaný na libovolném systému Linux by měl pocházet z oficiálního úložiště této distribuce. Zůstává však nejasné, jak zajistit, aby byl váš software spolehlivě zabalen a součástí jedné distribuce, natož všech distribucí.
Flatpak pro Linux
Balíčkovací systém Flatpak byl představen s cílem sjednotit a decentralizovat Linux jako cíl poskytování pro vývojáře. S Flatpakem může vývojář nebo kdokoli (člen linuxové komunity, jiný vývojář, člen týmu Flatpak nebo kdokoli jiný) volně balit software. Poté mohou balíček odeslat na Flathub nebo se rozhodnout, že balíček budou hostovat sami a nabídnout jej v podstatě jakékoli distribuci Linuxu. Systém Flatpak je dostupný pro všechny distribuce Linuxu, takže zacílení na jednu je stejné jako zacílení na všechny.
Jak technologie Flatpak funguje
Tajemství univerzální přitažlivosti Flatpak je standardní základ. Systém Flatpak umožňuje vývojářům odkazovat na společnou sadu modulů Software Developer Kit (SDK). Ty jsou zabaleny a spravovány správci systému Flatpak. Sady SDK se zavádějí podle potřeby, kdykoli nainstalujete Flatpak, čímž je zajištěna kompatibilita s vaším systémem. Každá daná sada SDK je vyžadována pouze jednou, protože knihovny, které obsahuje, lze sdílet v rámci jakéhokoli Flatpak, který ji vyžaduje.
Pokud vývojář vyžaduje knihovnu, která ještě není zahrnuta v existující sadě SDK, může tuto knihovnu přidat do Flatpak.
Výsledky hovoří samy za sebe. Uživatelé mohou nainstalovat stovky balíčků na jakoukoli distribuci Linuxu z jednoho centrálního úložiště, zvaného Flathub.
Jak vývojáři používají Flatpaks
Flatpaks jsou navrženy tak, aby byly reprodukovatelné, takže proces sestavování lze snadno integrovat do pracovního postupu CI/CD. Flatpak je definován v souboru manifestu YAML nebo JSON. Svůj první Flatpak si můžete vytvořit podle mého úvodního článku a celou dokumentaci si můžete přečíst na docs.flatpak.org.
Linux to usnadňuje
Vytváření softwaru na Linuxu je snadné a jeho zabalení pro Linux je jednoduché a automatizovatelné. Pokud jste programátor, Linux vám usnadní zapomenout na balení tím, že se zaměříte na jeden systém a integrujete jej do procesu sestavování.