Skip to content

Multimediální sbírka velmi krátkých řešených příkladů z prostředí linuxu, připomínající konverzační slovník cizího jazyka.

License

Notifications You must be signed in to change notification settings

singularis-mzf/linux-spellbook

Repository files navigation

Linux: Kniha kouzel

„Linux: Kniha kouzel“ je česká multimediální sbírka krátkých řešených příkladů z prostředí svobodného software v linuxu*, především distribucích Ubuntu a Linux Mint. Má formu připomínající konverzační slovník cizího jazyka a je vydávána v PDF A4 a B5 pro profesionální i domácí tisk a ve formátu HTML pro snadné vykopírování zaklínadel, můžete ji tedy používat na papíře i v počítači, proto „multimediální“.

Verze vanilková příchuť 2.14 je cílena na Ubuntu 20.04 Focal Fossa a jeho deriváty.

Obsah podléhá licenci CC BY-SA 4.0. Podrobné údaje o autorství zdrojových souborů jsou uvedeny v komentářích v jejich záhlaví; údaje o autorství obrázkových souborů jsou uvedeny v souboru COPYRIGHT.

Aktivní vývoj z mé strany byl přerušen, protože se chci věnovat novému projektu. Nadále ovšem poskytuji pasivní údržbu větvím 1.x a 2.x do předem vyhlášených termínů.


* V tomto projektu rozlišuji „Linux“ (jen jádro) a „linux“ (operační systém včetně programů). Podrobnější informace najdete v koncepci projektu.

Návody k použití

Základní použití online (úroveň 1 — pro začátečníky)

  1. Navštivte webové stránky.
  2. Vyberte si „TMAVÝ MOTIV“ (výchozí), nebo „SVĚTLÝ MOTIV“ a klikněte na něj.
  3. Zvolte si jednu či více kapitol z přehledu nebo z menu „KAPITOLY“. Zvolíte-li si více kapitol, doporučuji si je otevřít v samostatných „panelech“ prohlížeče.
  4. Ve vybraných kapitolách pak najděte nějaké zaklínadlo, které si chcete vyzkoušet.

Obvyklý postup použití zaklínadla je následující:

  1. Zamyslete se, jaký kontext zaklínadlo vyžaduje. (Nemá smysl se např. snažit vypsat název větve gitu mimo jeho pracovní adresář. Ne všechna zaklínadla se zapisují přímo na příkazovou řádku.)
  2. Označte zaklínadlo v prohlížeči (má-li zaklínadlo víc alternativních variant, označte jen jednu z nich).
  3. Zkopírujte ho do schránky (Ctrl+C).
  4. Přepněte se do okna terminálu (nebo otevřete nové).
  5. Vložte zaklínadlo (Shift+Ctrl+V).
  6. Projděte zaklínadlo a místa, která jsou na webové stránce označena podtržením (k doplnění), nahraďte odpovídajícími parametry (např. názvem souboru). Smažte hranaté závorky obklopující volitelné parametry.
  7. Potvrďte příkaz (Enter).

Poznámka 1: Na webu najdete jen základní kapitoly. Prémiové kapitoly jsou za odměnu za sestavení. Na webu najdete jen tmavý a světlý motiv; ostatní barevné motivy můžete získat v offline HTML verzi přejmenováním souborů s příponou „.css“.

Poznámka 2: Linux: Kniha kouzel není tutorial. Pokud ani po přečtení úvodu a definic nepochopíte, jak se uvedená zaklínadla používají, musíte nejprve získat zkušenosti nebo navštívit jiné stránky, kde vám použití daných nástrojů někdo názorně vysvětlí. Odkazy na takové stránky (včetně videí) najdete v sekci „Další zdroje informací“ na konci téměř každé kapitoly.

Základní použití offline (úroveň 2)

Na stránce Ke stažení si stáhněte „offline HTML“ variantu aktuální verze vanilkové příchuti (soubor „html.zip“) a archiv rozbalte do vámi zvoleného adresáře. Na téže stránce si můžete stáhnout PDF pro tisk a vytisknout.

Pokud chcete přepnout barevný motiv, smažte (nebo přejmenujte) soubor „lkk-datum.css“ a soubor „lkk-datum-id-motivu“ přejmenujte na „lkk-datum.css“. To je výhoda, kterou má offline HTML verze oproti online HTML verzi.

Nakonec otevřete soubor „index.htm“ ve vašem oblíbeném prohlížeči (můj oblíbený prohlížeč je Firefox) a dále postupujte jako u základního použití online. Pokud budete HTML verzi používat dlouhodobě, čas od času si nezapomeňte stáhnout novou verzi, abyste dostal/a ta nejnovější vylepšení a opravy.

Poznámka 1: V offline HTML verzi a PDF pro tisk dostupných ke stažení najdete jen základní kapitoly. Prémiové kapitoly jsou za odměnu za sestavení.

Vlastní sestavení a tisk (úroveň 3)

Vlastní sestavení vám dává největší volnost ve výběru kapitol a v možnosti projekt upravovat a přispívat do něj. Máte na výběr dvě varianty:

  1. Malé sestavení, při kterém vznikne offline HTML verze a případně balíček pomocných funkcí a skriptů (a případně ladicí varianta „log“). Malé sestavení je celkově nenáročné, nezískáte při něm ale PDF pro tisk.
  2. Velké sestavení, při kterém můžete sestavit všechny dostupné výstupní formáty. Velké sestavení vyžaduje téměř kompletní TeXlive (několik gigabajtů nástrojů) a na pomalejším počítači může trvat i mnoho minut. PDF pro tisk pak doporučuji nechat profesionálně vytisknout a svázat do kroužkové vazby. Pak můžete použít lepicí záložky k označení nejčastěji používaných zaklínadel.

Místo fyzické instalace Ubuntu 20.04 můžete k sestavení použít kontejnery Dockeru. Poskytuji a oficiálně podporuji Dockerfile pro malé sestavení (vyžaduje cca 500MB místa na disku) a Dockerfile pro velké sestavení (vyžaduje cca 1,5GB místa na disku). Po sestavení obrazu (sudo docker build -t lkk .) a spuštění kontejneru (sudo docker run --rm -it lkk) v obou skončíte v adresáři „/root/linux-spellbook“, kde můžete provést „git pull“, přepnout větev (pokud chcete) a následně použít příkazy „make“ z návodů pro malé/velké sestavení. Výstup překladu budete muset z kontejneru vykopírovat. Pokud budete mít s překladem v Dockeru jakýkoliv problém, napište mi e-mail a pokusím se vám poradit, nebo dokonce pomoci.

Pokud budete upravovat zdrojové kódy kapitol, vyplatí se si před tím pročíst dokument Syntaxe kapitol a jako vzor vám může sloužit zvláštní kapitola Ukázka.

Výběr a pořadí kapitol

Zde je aktualizovaný přehled kapitol, které si při sestavení můžete vybrat v souboru „pořadí-kapitol.lst“:

Vydané kapitoly a podkapitoly

ID Název kapitoly Vydána od verze Zařazení
awk AWK 1.2 prémiová
bash BASH 2.8 základní
bash/funkce-a-skripty.md BASH/Funkce a skripty 2.8 základní
bash/interaktivní-režim.md BASH/Interaktivní režim 2.8 základní
bash/vstup-výstup.md BASH/Vstup, výstup a přesměrování 2.8 prémiová
datum-čas-kalendář Datum, čas a kalendář 1.1 prémiová
diskové-oddíly Diskové oddíly 1.6 základní
diskové-oddíly/btrfs Diskové oddíly/Btrfs 2.5 základní?
diskové-oddíly/lvm Diskové oddíly/LVM 2.5 základní?
diskové-oddíly/softwarový-raid Diskové oddíly/Softwarový RAID 2.5 základní?
git Git 1.0 základní
hledání-souborů Hledání souborů 1.5 základní
make Make 1.0 prémiová
manuálové-stránky Manuálové stránky 2.4 prémiová
markdown Markdown 1.0 prémiová
metapříkazy Metapříkazy 2.7 základní
nabídka-aplikací Nabídka aplikací 2.4 základní
odkazy Pevné a symbolické odkazy 2.2 základní
perl-moduly Perl: moduly a objekty 2.3 prémiová
perl-základy Perl: základy 2.3 základní
práce-s-archivy Práce s archivy 1.1 základní
prohlížení-textových-souborů Prohlížení textových souborů 2.10 základní
proměnné Proměnné prostředí a interpretu 1.9 prémiová
regulární-výrazy Regulární výrazy 1.1 základní
sed Sed 1.8 prémiová
soubory-a-adresáře Soubory a adresáře 1.5 prémiová
správa-balíčků Správa balíčků 1.1 základní
správa-procesů Správa procesů 1.4 prémiová
správa-uživatelských-účtů Správa uživatelských účtů 1.11 základní
stahování-videí Stahování videí 1.0 prémiová
systém Systém 1.2 základní
terminál Terminál (1.0) prémiová
terminál/emodži Terminál / Emodži (2.0) prémiová
vim Vim 1.8 prémiová
zpracování-binárních-souborů Zpracování binárních souborů 2.0 prémiová
zpracování-textových-souborů Zpracování textových souborů 1.2 základní
zpracování-videa-a-zvuku Zpracování videa a zvuku 1.0 základní

Zvláštní a vyřazené kapitoly

  • _šablona − Nepřekládá se. Slouží jako výchozí podoba pro nově založené kapitoly.
  • x-ostatní − Slouží k dočasnému shromážďování dosud nezařazených zaklínadel.
  • x-ukázka − Překládá se, ale není součástí vydaných verzí. Slouží k dokumentaci a testování mechanismu překladu. Obsahuje všechny podporované jazykové konstrukce a znaky.
  • Docker
  • Plánování úloh

Větve na GitHubu

  • vývojová – Hlavní větev, nyní opuštěná.
  • stabilní – Zdrojový kód poslední vydané verze. Pokud vám nepůjde přeložit kód z větve „vývojová“, použijte kód z větve „stabilní“.
  • v1 — Větev 1.x; ve stádiu dlouhodobé pasivní údržby do 1. března 2023.
  • v2 — Větev 2.x; ve stádiu dlouhodobé pasivní údržby do 1. března 2025.

Podobné projekty

Poznámka: Uvedené údaje o licencích jsou orientační, a ačkoliv je uvádím v dobré víře, nemusí již být aktuální!

  • Sallyx.org (nesvobodná licence CC BY-NC-SA 3.0) jsou vynikající, obsáhlé a dodnes velmi dobře udržované stránky o linuxu a programování. Na rozdíl od Linuxu: Knihy kouzel nejsou open-source (autor je udržuje sám, v podstatě jde o freeware) a nemají knižní ambice, jsou však optimalizovány pro samouky, aby se z nich uváděné nástroje mohli snadno naučit. Dle mého názoru jde o nejlepší konkurenční zdroj v češtině.
  • Pure Bash Bible (anglicky, licence: MIT) je stejně jako Linux: Kniha kouzel knihou řešených příkladů (ačkoliv jde o e-book) a také se snaží nabízet ověřená a co nejlepší řešení, autor dokonce na svoje příkazy píše automatizované testy. Oproti Linuxu: Knize kouzel je ale Pure Bash Bible zaměřená pouze na příkazový interpret „bash“.
  • Linux Journey (anglicky, licence pouze textu: CC BY-SA 4.0) je rozsáhlý a kvalitní výukový kurz linuxových příkazů z různých oblastí. Hlavním rozdílem oproti Linuxu: Knize kouzel zde je, že je zaměřený na výuku (dokonce u jednotlivých sekcí nabízí i úkoly k procvičení), není však tak podrobný a vyhýbá se komplikovaným a nejmodernějším technologiím (např. tam nenajdete vysvětlení ACL, LVM apod.).
  • TL;DR (anglicky − „Too Long; Didn't Read“, licence: MIT) představuje výrazně zjednodušené manuálové stránky s krátkými příklady k jednotlivým nástrojům. Na rozdíl od Linuxu: Knihy kouzel je organizován po nástrojích, takže musíte vědět, k čemu chcete nápovědu, a neporadí vám lepší nástroje k provedení dané činnosti. Ke každému nástrojí navíc uvádí jen nejběžnější příklady. Kladem je, že jeden z jeho klientů je dostupný jako balíček UbuntuDebianu.
  • Projekt eg (anglicky, licence MIT) nabízí zjednodušené a velmi praktické „manuálové stránky“ s vynikajícím zvýrazňováním syntaxe, snadným přístupem a možností je snadno upravovat (v Markdownu). Jeho nedostatkem je orientace na dokumentaci nástrojů spíš než na řešení úloh. Také již není příliš aktivně vyvíjen (poslední verze 1.1.1 je z října 2018). (Mimochodem, autor má smysl pro humor, když radí přejmenovat „eg“ na „woman“.)
  • Cheat (anglicky, licence: MIT) je nástroj pro správu vlastních jednoduchých „manuálových stránek“. Používá se snadno, ale není určen k objevování nových programů a ve srovnání s klasickými manuálovými stránkami má horší zvýrazňování syntaxe.

Zastaralé podobné projekty

  • The Linux Documentation Project (anglicky, licence: GFDL 1.2, některé části i pod jinými svobodnými licencemi) je monumentální historická sbírka návodů a příruček mapující programy GNU a Linux. Je již ovšem prakticky neudržovaná a většinou velmi zastaralá. K návštěvě ji mohu doporučit jen „počítačovým archeologům“, rozhodně ne současným začátečníkům.
  • GNU/Linux Desktop Survival Guide (anglicky, licence: GPL v2+ nebo CC BY 2.0+) je původně rozsáhlá sbírka jednostránkových článků o konkrétních problémech uživatele Debianu. Ačkoliv je dodnes udržovaná, připadá mi, že jedinou formou aktualizace je odstraňování již neaktuálního obsahu, po kterém bohužel zůstávají prázdné články. Na rozdíl od Linuxu: Knihy kouzel již vyšla knižně a PDF verze je placená (HTML verze je dostupná online a zdarma).

Licence

Kniha a všechny zdrojové kódy podléhají licenci CC BY-SA 4.0, některé soubory nabízejí také jinou licenci. Podrobné údaje o autorství a konkrétní licenci zdrojových souborů jsou uvedeny v komentářích v jejich záhlaví; údaje o autorství obrázkových a datových souborů (včetně formátu .tsv) jsou uvedeny v souboru COPYRIGHT.