From 851990d548dc8fcbb4a84cfb57ed83f8c7eb729b Mon Sep 17 00:00:00 2001 From: foglar Date: Fri, 14 Mar 2025 21:47:59 +0100 Subject: [PATCH] =?UTF-8?q?pospisovn=C4=9Bn=C3=AD=20prezentace=20a=20men?= =?UTF-8?q?=C5=A1=C3=AD=20=C3=BApravy?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit vyžaduje revizy --- prezentace.md | 56 +++++++++++++++++++++++++++++---------------------- 1 file changed, 32 insertions(+), 24 deletions(-) diff --git a/prezentace.md b/prezentace.md index 9c9e303..4dddfa7 100644 --- a/prezentace.md +++ b/prezentace.md @@ -31,8 +31,8 @@ footer: "Albert Vala, Filip Kohout, Nix flakes & Nix command" # Nix Command -* Nové nix cli -* Flake support +* Nové CLI pro Nix +* Podpora Flakes --- @@ -48,39 +48,42 @@ nix run nixpkgs#cowsay #New # Commandy -| Command | Na | -| ------------ | ---------------------------------- | -| flake new | Vytvoření flaky z template | -| develop | Build environment shell | -| shell | temp shell s nějakým programem | -| config check | Check configu na potenciální chyby | -| run | Spustí output z flaky | +| Command | Na | +| -------------- | ---------------------------------- | +| `flake new` | Vytvoření flaky z template | +| `develop` | Build environment shell | +| `shell` | temp shell s nějakým programem | +| `config check` | Check configu na potenciální chyby | +| `run` | Spustí output z flaky | --- # Flakes -* ## Proč? +* ## Proč Flakes? -* Lockfiles. -* Flake inputs +* Použití lockfiles pro deterministické buildy +* Jednoduchá správa vstupů (flake inputs) -* ## Na co? +* ## Na co lze Flakes použít? -* Cokoliv. +* Správa systémové konfigurace +* Vývojové prostředí +* Balíčkování +* Nástroje pro deployment --- # Nix command + flakes -- temp shell +- dočasný shell ```shell nix shell nixpkgs#alejandra nix shell github:kamadorueda/alejandra ``` -- Show output attr +- zobrazení atributů ```shell nix flake show github:kamadorueda/alejandra @@ -90,7 +93,7 @@ nix flake show github:kamadorueda/alejandra # Jak použít flakes na systémovou configuraci? -* Flakes používáme jen na management input a output atributů +* Flakes používáme jen na správu input a output atributů * Zbytek konfigurace používá inputy definované ve flake.nix --- @@ -224,8 +227,8 @@ nix build /etc/nixos#nixosConfigurations.nixos.config.system.build.toplevel * `nixos-rebuild --target-host nixFreak@192.168.8.32 switch --flake .#default` * `--use-remote-sudo` -* `--build-host` - konfigurace tady -* `--target-host` - konfigurace tam +* `--build-host` - konfigurace bude použita na tomto zařízení +* `--target-host` - konfigurace bude použita na cíleném zařízení * `nix.settings.trusted-users` @@ -413,9 +416,8 @@ in # Nix writers -* Jednoduchý způsob přidávání skriptů v různých programovacích jazycích do - systému -* Rozdíl oproti klasickému `pkgs.writeShellScriptBin` +* Jednoduchý způsob přidávání skriptů v různých programovacích jazycích do systému +* Rozdíl oproti klasickému `pkgs.writeShellScriptBin` či balíčkovaání skriptu do derivace * [nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/build-support/writers/scripts.nix) - pro všechny možnosti konfigurace skriptů * [https://nixos.wiki/wiki/Nix-writers](https://nixos.wiki/wiki/Nix-writers) - wiki @@ -456,9 +458,13 @@ pkgs.writers.writePython3 "hello-world-python" print("Hello world!") '' ``` + --- -# Chápete již, co dělá tato flake? + +# Rozumíte? + --- + ```nix { inputs = { @@ -491,9 +497,11 @@ print("Hello world!") }; } ``` + --- + # [EWW Flake](https://github.com/elkowar/eww/blob/master/flake.nix) --- -# **Děkujeme za pozornost.** \ No newline at end of file +# **Používejte Nix**