NixCon 2025 ์ฐธ๊ด๊ธฐ ๐
์ฌํด ์ด์ ์ด๋ฆฐ NixOS ๋ฐ์ ์ด ์ ๋ง ์ข์๋๋ฐ, ๋ฐ์ ๋ง์ง๋ง์ ์ฌํด NixCon 2025๊ฐ ์ค์์ค์์, ๊ทธ๊ฒ๋ ๋ฐ๋ก ๊ฐ์ ์ฅ์์ธ ๋ผํผ์ค๋น์ ๋๋ถ ์ค์์ค ์์ฉ๊ณผํ๋ํ OST์์ ์ด๋ฆฐ๋ค๋ ์์์ ๋ค์์ต๋๋ค. ๊ทธ๋์ ๊ฐ๋ณด๊ธฐ๋ก ํ์ฃ ! ์ด๋ฒ ์ฐธ๊ด๊ธฐ์์๋ ์ด ๋ฉ์ง ์ปจํผ๋ฐ์ค๋ฅผ ์ ๊ฐ ์ด๋ป๊ฒ ๊ฒฝํํ๋์ง ๋๋ต์ ์ผ๋ก ์ ํด๋๋ฆฌ๋ ค๊ณ ํฉ๋๋ค :)
์ ๋ชฉ์ ์๋ ๋ฒ์ NixCon ๋ด๋ถ ๋๋ด์ ๋๋ค ;)
๊ธ์์ผ
๋น ์ค๋ ๊ธ์์ผ ์์นจ 9์ 30๋ถ์ฏค ๋์ฐฉํด์, ๊ธฐ์ฐจ์ญ์์ OST 1๋๊น์ง ์๋๋ฌ ๋ค์ด๊ฐ ํฐ์ผ QR ์ฝ๋๋ฅผ ๋ณด์ฌ์ฃผ๊ณ ์ปจํผ๋ฐ์ค ๋ฐฐ์ง์ ๋ฏธ๋ฆฌ ์ฃผ๋ฌธํด ๋ ์ปค์คํ ๋ช ์ฐฐ์ ๋ฐ์์ต๋๋ค. ์ปค์คํ ๋ช ์ฐฐ์ ์ด๋ฆ์ด ๊ฐ์ธ๋์ด ์๊ณ ์ท์ ๋ถ์ผ ์ ์๋ ๊ฐ๋ ฅํ ์์์ด ํจ๊ป ์ ๊ณต๋ฉ๋๋ค:

๊ฐ๋จํ ์๊ธฐ๋ฅผ ํ ๋ค ๊ฐํ ์ธ์ ์ ์ํด ๋๊ฐ๋น์ผ๋ก ํฅํ์ต๋๋ค. OST์ Farhad Mehta ๊ต์๋๊ณผ NixCon ์ด์ํ ์ ์ฒด๊ฐ ๋ฑ๋กํ 450๋ช ์ ์ฐธ๊ฐ์๋ฅผ ์ 10ํ NixCon์ ๋ง์ดํด์ฃผ์์ต๋๋ค! Nix ๋ฐ์ ์์ ๋ดค๋ ์ต์ํ ์ผ๊ตด๋ค์ด ๋ง์ด ๋ณด์์ง๋ง, NixCon์ด ์ฒ์์ธ ์ฌ๋, ํน์ ์ค์์ค ์์ฒด๊ฐ ์ฒ์์ธ ์ฌ๋์ด ์์ ๋ค์ด๋ณด๋ผ๋ ์ง๋ฌธ์๋ ๋ง์ ์์ด ์ฌ๋ผ์์ต๋๋ค.
ํนํ ์ด๋ฐ ๋ฐ์ ๊ณผ ํ์ฌ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํด ์ฃผ์ Mehta ๊ต์๋๊ป ๊ฐ์ฌ๋๋ฆฝ๋๋ค! ๐
๋ํ์ด๋ ํ๊ต, ํน์ ๊ฐ์์ค์ ํ๋ณดํ ์ ์๋ ๋ค๋ฅธ ๊ธฐ๊ด์์ ์ผํ๊ณ ๊ณ์๋ค๋ฉด ๋ฐ์ ๊ฐ์ต๋ฅผ ์ ์ํด ๋ณด์๋ ๊ฑด ์ด๋จ๊น์(์ ๊ธฐ์ ์ผ๋ก๋ , ๋จ ํ ๋ฒ์ด๋ )! ์ฅ์๋ฅผ ๊ตฌํ๋ ์ผ์ด ์ธ์ ๋ ๊ฐ์ฅ ์ด๋ ต๊ธฐ ๋๋ฌธ์, ๊ณต๊ฐ์ ์ ๊ณตํ๋ ๊ฒ๋ง์ผ๋ก๋ ์คํ์์ค์ ํฐ ๊ธฐ์ฌ๊ฐ ๋ฉ๋๋ค.
โ๋ง์ฝ GitHub Actions๊ฐ ๋ก์ปฌ ์ฐ์ ์ด๊ณ Nix๋ก ๋ง๋ค์ด์ก๋ค๋ฉด?โ
๊ทธ๋ ์ ์ฒซ ๋ฒ์งธ ๊ธฐ์ ๋ฐํ๋ cachix.org(ํธ์คํ Nix ์บ์)์ ์ด์์์ธ Domen Koลพar์ โ๋ง์ฝ GitHub Actions๊ฐ ๋ก์ปฌ ์ฐ์ ์ด๊ณ Nix๋ก ๋ง๋ค์ด์ก๋ค๋ฉด?โ์ด์์ต๋๋ค. ์ด ๋ฐํ์์๋ devenv๋ฅผ ํ์ฉํ Nix ๊ธฐ๋ฐ CI ์๋ฃจ์ (GitHub Actions์ ์ ์ฌ)์ธ cloud.devenv.sh๋ฅผ ์๊ฐํ์ต๋๋ค.
์ด ์๋ฃจ์ ์ ์ฌ์ฉํ๋ฉด GitHub Actions๋ฅผ ๋ก์ปฌ์์ ์ฝ๊ณ ์์ ํ๊ฒ ์คํํ ์ ์๋ค๋ ๋ฌธ์ (๋ค, ์ฐ๋ฆฌ ๋ชจ๋ act๋ฅผ ์๊ณ ์์ต๋๋ค)๋ฅผ ํด๊ฒฐํ ์ ์๊ณ , YAML ์ค์ ๋์ Nix ์ค์ ์ ์์ฑํ๊ฒ ๋ฉ๋๋ค(?).
์๋ฃจ์ ์์ฒด๋ ๊ด์ฐฎ์ ๋ณด์์ง๋ง, ๋ฐํ์๊ฐ ์ฌ๋ผ์ด๋๋ฅผ ์ด๋ฆฌ์ ๋ฆฌ ๋๋๋ค์ด ๋ฐํ๊ฐ ๋ค์ ์ฐ๋งํ๊ฒ ๋๊ปด์ก์ต๋๋ค. ๊ฒฐ์ ์ ์ธ ์ง๋ฌธ ํ๋๋ ๋ต์ด ๋์ค์ง ์์์ต๋๋ค. ์ด ์ปค์คํ ์๋ฃจ์ ์ ๊ธฐ์กด GitHub ํ๋ก์ ํธ์ ์ด๋ป๊ฒ ํตํฉํ๋๋๋ ๊ฒ์ด์ฃ . ์ ํ๋ก์ ํธ์๋ GitHub Actions์ ๊ธฐ๋ณธ ์ค์ ๋ฐฉ์์์ ๋ฒ์ด๋๋ ๊ฒ์ด ๊ทธ๋งํ ๊ฐ์น๊ฐ ์์ด ๋ณด์ด์ง ์์์ต๋๋ค. ๋ฌผ๋ก ์ฌ๋์ ๋ฐ๋ผ ๋ค๋ฅผ ์ ์์ต๋๋ค.
โ ๋ นํ ์์ ๋ณด๊ธฐ (46๋ถ) - media.ccc.de
โHydra Queue Runner๋ฅผ Rust๋ก ๋ค์ ์ฐ๊ธฐโ
๋ค์์ ๋ ์ผ์ ์๊ท๋ชจ ์ํํธ์จ์ด ํ์ฌ์ธ Helsinki Systems์ Simon Hauser๊ฐ ๋ฐํํ โHydra Queue Runner๋ฅผ Rust๋ก ๋ค์ ์ฐ๊ธฐโ์์ต๋๋ค. Hydra๋ NixOS ์ธํ๋ผ์์ ๋น๋๋ฅผ ์ค์ผ์ค๋งํ๋ ์ปดํฌ๋ํธ์ ๋๋ค. nixpkgs๊ฐ ๋ณ๊ฒฝ๋๋ฉด ๋น๋๋ฅผ ์คํํ๊ณ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ cache.nixos.org์ ์ฌ๋ฆฌ๋ ์ญํ ์ ํ๋ฉฐ, ๋ฐ๋น์์ผ๋ก ์น๋ฉด buildd์ ํด๋นํฉ๋๋ค.
Simon์ ํ์ฌ ํ ๋ฌ๋์ ๋ณ๋ชฉ ๋๋ฌธ์ ์ธํ๋ผ๊ฐ ์ ํด ์ํ์ ๋น ์ง๋ค๊ณ ์ค๋ช ํ์ต๋๋ค. ํ๋ก์ ํธ์ ์ธ ์ ์๋ ๋จธ์ ์ด ์์ง๋ง ์ ๋๋ก ํ์ฉํ์ง ๋ชปํ๋ค๋ ๊ฒ์ด์ฃ . ๊ทธ๋ ํ์ ํ SSH ๊ธฐ๋ฐ ์๋ํ๋ฅผ ์ ์ค๊ณ๋ gRPC ํ๋กํ ์ฝ๋ก ์ด๋ป๊ฒ ๊ต์ฒดํ๋์ง ์ค๋ช ํ์ต๋๋ค. ์ด ์ค๊ณ๋ฅผ ์ฌ๋ฌ ์ฌ๋์ด ํจ๊ป ๊ฐ๋ฐํ๊ณ ๋ฆฌ๋ทฐํ ๊ฒ ๊ฐ๋ค๋ ์ธ์์ ๋ฐ์๋๋ฐ, ๊ฑด๊ฐํ ํ๋ก์ ํธ์ ์ข์ ์งํ๋ผ๊ณ ์๊ฐํฉ๋๋ค.
์์ฝ๊ฒ๋ ๋ฐํ์์ ๋น ์ ธ ์๋ ๊ฒ์ด ์๋ค๋ฉด ์งํ์์ต๋๋ค. ๋ค์ ์์ฑ๋ ํ ๋ฌ๋๊ฐ ์ผ๋ง๋ ๋ ๋์์ก๋์ง ๋ณด์ฌ์ฃผ๋ ๊ทธ๋ํ ๋ช ๊ฐ๊ฐ ์์๋ค๋ฉด ์ข์์ ๊ฒ ๊ฐ์ต๋๋ค.
ํ์ฌ ์๋ก์ด ํ ๋ฌ๋๋ ์ด๋ฏธ Nix Community ๋น๋์๋ ์ฌ์ฉ๋๊ณ ์์ง๋ง, ์์ง NixOS ์์ฒด ํ๋ก๋์ ์๋ ์ ์ฉ๋์ง ์์์ต๋๋ค. ๊ณง ์ ์ฉ๋๊ธฐ๋ฅผ ๊ธฐ๋ํฉ๋๋ค!
โ ๋ นํ ์์ ๋ณด๊ธฐ (27๋ถ) - media.ccc.de
โdevshell์์ hell์ ๋นผ๋ฉด ์ฒ ์๊ฐ ์ ๋ง์ฃ โ
์ด ๋ฐํ๋ Nix ๊ธฐ๋ฐ ๊ฐ๋ฐ ํ๊ฒฝ ์๋ฃจ์
์ธ Flox์ Zach Mitchell์ด ๋งก์์ต๋๋ค. ์ ๋ ์ง๊ธ๊น์ง nix-shell์ด๋ nix develop์ ์ฌ์ฉํด ์๊ธฐ ๋๋ฌธ์(Development shells with Nix: four quick examples ์ฐธ๊ณ ), ์ด๋ฒ ๋ฐํ์์ ๋ฌด์์ ๋ฐฐ์ธ ์ ์์์ง ๊ถ๊ธํ์ต๋๋ค.
Zach๋ nix-shell๊ณผ nix develop ๋ชจ๋ ์๋ ๋ฒ์ฉ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ ๊ณตํ๊ธฐ ์ํ ๊ฒ์ด ์๋๋ผ Nix ํจํค์ง ๋น๋๋ฅผ ๋๋ฒ๊น
ํ๊ธฐ ์ํด ๋ง๋ค์ด์ก๋ค๊ณ ์ค๋ช
ํ์ต๋๋ค. ์ฌ์ฉ์์๊ฒ๋ ์ข์ํ๋ ์
ธ์ ์ธ ์ ์๋ค๋ ํํ๋ก ๋ํ๋ฉ๋๋ค. nix develop์ Bash๋ง ์ง์ํ๊ธฐ ๋๋ฌธ์
๋๋ค. ์ด๋๊ฐ์์ nix develop -c exec <shell> ๊ฐ์ ๋ฐฉ๋ฒ์ ๋ณด์
จ์ ์๋ ์์ง๋ง, ๊ทธ๊ฑด ์๋ชป๋ ๋ฐฉ๋ฒ์
๋๋ค. ๊ทธ๋ ๊ฒ ํ๋ฉด ์
ธ์ RC ํ์ผ์ด Nix ์ค์ ์ดํ์ ์คํ๋๋ฉด์ ์ค์ ์ผ๋ถ๋ฅผ ๋ง๊ฐ๋จ๋ฆด ์ ์๊ธฐ ๋๋ฌธ์
๋๋ค.
์ฌ๋ฏธ์๊ฒ ์๊ฒ ๋ ์ฌ์ค ์ค ํ๋๋ Nix ๊ฐ๋น์ง ์ปฌ๋ ํฐ๊ฐ ์คํ ์ค์ธ ํ๋ก์ธ์ค๊ฐ ์ฌ์ ํ ํ์๋ก ํ๋ Nix ์คํ ์ด ๊ฒฝ๋ก๋ฅผ ์ญ์ ํ์ง ์๋๋ก /proc์ ์ค์บํ๋ค๋ ์ ์
๋๋ค.
Zach๋ https://github.com/zmitchell/proctrace๋ฅผ ์ธ๊ธํ๋๋ฐ, ์ด๋ forks/execs๋ฅผ ์ถ์ ํด ํ์ด๋ฐ์ ๋ํ ๊ฐํธ ์ฐจํธ ๋ฌธ๋ฒ์ ์์ฑํ๋ bpftrace ๊ธฐ๋ฐ ํ๋กํ์ผ๋ฌ์ ๋๋ค. ๋ฉ์ ธ ๋ณด์ด์ง๋ง ์์ฝ๊ฒ๋ ์ง๊ธ์ ์๋ํ์ง ์๋ ๊ฒ ๊ฐ์ต๋๋คโฆ? ์์ฝ๋ค์.
โ ๋ นํ ์์ ๋ณด๊ธฐ (45๋ถ) - media.ccc.de
โNix Binary Cache์ AWSโ
์ด ๋ ธ๋ณ ๋ดํ์์ Tarus Balog๋ 20๋ ๊ฐ ์คํ์์ค๋ฅผ ํ๋ค๊ฐ ์ด๋ป๊ฒ AWS์ ํฉ๋ฅํ๊ฒ ๋์๋์ง, ๊ทธ๋ฆฌ๊ณ ๊ทธ์ ํ์ด ์ด๋ป๊ฒ ์ปค๋ฎค๋ํฐ์ ๋ณด๋ตํ๊ณ ์ ํ๋์ง๋ฅผ ๊ณต์ ํ์ต๋๋ค. ๊ทธ ๋ฐฉ๋ฒ ์ค ํ๋๊ฐ ๋ฐ๋ก cache.nixos.org๋ฅผ ํธ์คํ ํ๋ ๊ฒ์ ๋๋ค.
โ ๋ นํ ์์ ๋ณด๊ธฐ (24๋ถ) - media.ccc.de
โShopify์ Nix ๊ธฐ๋ฐ ๊ฐ๋ฐ ํ๊ฒฝ (์ฌ์ฐ)โ
Shopify์ Josh Heinrichs๊ฐ ์ด๋ป๊ฒ Nix๋ฅผ ๋์ ํ๋์ง(๋ค์!) ๊ณต์ ํ๋๋ฐ, ์ด๋ฐ ์ค์ ๊ธฐ์ ๋์ ์ฌ๋ก๋ ์ ๋ง ํฅ๋ฏธ๋กญ๋ค๊ณ ์๊ฐํฉ๋๋ค.
์์ฝํ์๋ฉด, Shopify๋ 2016๋
๋ถํฐ ์ ์ธ์ ์ค์ ์ ์ ๊ณตํ๊ณ Linux์์๋ apt, macOS์์๋ homebrew๋ก ๋ถ๊ธฐ ์ฒ๋ฆฌํ๋ dev ๋ช
๋ น์ ๊ฐ์ง๊ณ ์์์ต๋๋ค. Nix๋ก ์ด์ ํ๋ ค๋ ์ฒซ ์๋์์๋ ์์ ์ ์ธ ๊ธฐ๋ฐ์ ๋ค์ง์ง ๋ชปํ๊ณ (์ผ๋ถ ์ธ์์ ์์ง ์ฌ์ฉํ ์ ์์์ต๋๋ค), ์ดํ ํ์ฌ ์ ์ฒด๊ฐ ํด๋ผ์ฐ๋ ๊ฐ๋ฐ๋ก ์ ํํ๋ฉด์ ๋ ์ฌ์ด ํด๊ฒฐ์ฑ
์ธ โ๊ทธ๋ฅ ubuntu๋ฅผ ์ฐ์โ๋ฅผ ์ ํํ์ต๋๋ค.
๋ช ๋
์ด ์ง๋์ ํด๋ผ์ฐ๋ ๊ฐ๋ฐ ํ๊ฒฝ์ ๋ํ ๋ถ๋ง์ด ์ปค์ก๊ณ , ์ด๋ ๋ Shopify CEO์ธ Tobias Lรผtke๊ฐ Shopify์ dev์ ๋๋๋๋ก ์ ์ฌํ Nix ๊ธฐ๋ฐ ์๋ฃจ์
์ธ devenv๋ฅผ ๋ฐ๊ฒฌํฉ๋๋ค. ๊ทธ๋์ Tobi๋ ์์ฌ ์๋น์ค ์ค ํ๋์ devenv๋ฅผ ๋์
ํ๊ณ Nix ์ฌ์ฉ์ ์ง์งํ๊ฒ ๋ฉ๋๋ค. ์ด๋ฒ์๋ ์กฐ์ง ๋ด ์ฑ๊ณต์ ์ธ ํ์ฐ์ ํจ์ฌ ๋ ๋ง์ ์๊ฐ์ ๋ค์๊ณ , ์ ์ง์ ๋์
๊ณผ ๋ชจ๋ ์ดํด๊ด๊ณ์์ ์ฐธ์ฌ๋ฅผ ์ด๋์ด๋ด๋ ๋ฐฉ์ ๋ฑ์ผ๋ก ์งํํ์ต๋๋ค.
๊ตํ์ ์ ์ง์๋๋ ํ๋์ ๊ตฌ์ฒด์ ์ธ ์ฌ์ฉ ์ฌ๋ก๊ฐ ๋์ ์ ๋๋ ฅ์ด ๋ ์ ์๋ค๋ ์ ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฐ๋ฐ ํ๊ฒฝ์ Nix ๊ธฐ๋ฐ ์๋ฃจ์ ์ผ๋ก ์ฎ๊ฒจ ๋์ผ๋ฉด ์ํ๊ณ์ ๋ค๋ฅธ ๋ถ๋ถ๋ค๋ ๋ ์ฝ๊ฒ ๋์ ํ ์ ์์ต๋๋ค.
โ ๋ นํ ์์ ๋ณด๊ธฐ (19๋ถ) - media.ccc.de
โ๋์ ์ฒซ Nix ๊นจ๋ฌ์!: ์ ๊ท ์ฌ์ฉ์์ ๊ด์ โ
Shopify ๋ฐํ์ ๋น์ทํ ๋งฅ๋ฝ์์, ASML์ Kavisha Kumar๋ ๋๋ฃ๊ฐ nix-shell์ ์ด์ฉํด ๊น๋ํ ๊ฐ๋ฐ ์
ธ์ ์ป๋ ๊ฒ์ ๋ณด๊ณ ์ด๋ป๊ฒ Nix์ ์
๋ฌธํ๊ฒ ๋์๋์ง๋ฅผ ๊ณต์ ํ์ต๋๋ค.
Kavisha๋ ASML์์ ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ ์, ์ด๋ป๊ฒ Nix๋ฅผ ์จ์ผ ํ๋์ง ๊ฐ๋ฅด์น๋ ๋ฐ ๋ง์ ์๊ฐ์ ๋ณด๋์ต๋๋ค. ๊ทธ๋ ๋ ๋น๋์ค ๊ฒ์์ ์์ฌ๋ก Nix ๊ฐ๋ ์ ์ค๋ช ํ๋ ๋ฉ์ง ๋น์ ๋ค์ ์ฌ๋ฌ ๊ฐ์ง ๊ณต์ ํ์ต๋๋ค.
๋ง์ ์ฌ๋๋ค์ด Nix์ ์ด๊ดํ๋ฉด์๋ ๊ทธ ์ด์ ์ ๋ค๋ฅธ ์ฌ๋์๊ฒ ์ ๋ฌํ๋ ๋ฐ ์ด๋ ค์์ ๊ฒช๋๋ค๊ณ ์๊ฐํฉ๋๋ค. Kavisha๋ ์์ ์๊ฒ ํตํ๋ ์ข์ ๋ฐฉ๋ฒ์ ์ฐ๋ฆฌ์๊ฒ ๋ณด์ฌ์ฃผ์์ต๋๋ค.
โ ๋ นํ ์์ ๋ณด๊ธฐ (19๋ถ) - media.ccc.de
๋ผ์ดํธ๋ ํ ํฌ
ํ๋ฃจ์ ๋๋จธ์ง๋ ๋ผ์ดํธ๋ ํ ํฌ๋ก ์ฑ์์ก์ต๋๋ค.
Determinate Systems์ Cole Mickens๋ ์์ ๋ค์ ๋ค์ด์คํธ๋ฆผ ๋ฐฐํฌํ์ธ โDeterminate Nixโ์์ ํ์ฌ ์ ๊ณตํ๊ณ ์๋ ๊ธฐ๋ฅ๋ค(ํฅํ ์ ์คํธ๋ฆผ์ ๋ฐ์๋ ์์ )์ ์ค๋ช ํ์ต๋๋ค. Flakes ํ๊ฐ๋ฅผ ์ํ ์ฑ๋ฅ ์ต์ ํ์ธ lazy trees, ํ๊ฐ ์๊ฐ์ 16์ด์์ 7์ด๋ก ๋จ์ถํ๋ ๋ณ๋ ฌ ํ๊ฐ, ๊ทธ๋ฆฌ๊ณ mac์ ์ํ ๋ค์ดํฐ๋ธ Linux ๋น๋์ ๋๋ค. ๋ค์์ผ๋ก๋ ์์ง ์ ๊ฐ ์ฝ์ด๋ณด์ง ๋ชปํ Flake Schemas๊ฐ ์์ ๋์ด ์์ต๋๋ค.
Nix ๋ฐ DevOps ์ปจ์คํ
ํ์ฌ์ธ Numtide์ Yvan Sraka๋ NixOS๋ก ์น๊ตฌ์ ๊ฐ์กฑ์ Linux ๋จธ์ ์ ์ด๋ป๊ฒ ๊ด๋ฆฌํ๋์ง ๋ณด์ฌ์ฃผ์์ต๋๋ค. ๊ทธ๋ NixOS ์์ ์์ ๋ง์ ์ค์ ๋ ์ด์ด๋ฅผ ๋๊ณ ์์คํ
์์ฒด๋ ๊ธฐ๋ฐ(base)์ผ๋ก๋ง ์ฌ์ฉํฉ๋๋ค. ๋๋ถ๋ถ์ ์ค์ ํ๋ก๊ทธ๋จ์ AppImage, Flatpak, envfs, nix-ld๋ฅผ ํตํด ์ฌ์ฉํฉ๋๋ค. ๋ค์ ๋ ๊ฐ์ง๋ /usr/bin ๋ฑ ํ์ค ๊ฒฝ๋ก๊ฐ ์กด์ฌํ๋ค๊ณ ๊ฐ์ ํ๋ FHS ๊ธฐ๋ฐ ํ๋ก๊ทธ๋จ์ NixOS ๊ฐ์ non-FHS ์์คํ
์์ ์ธ ์ ์๊ฒ ํด์ฃผ๋ ์๋ฃจ์
์
๋๋ค. nix-ld๋ ๋ค์ด๋ณธ ์ ์ด ์์ง๋ง envfs๋ ์ฒ์ ์์์ต๋๋ค.
Nixcademy์ Jacek Galowicz๋ systemd-sysupdate์ systemd-repart๋ฅผ ์ด์ฉํด NixOS์ systemd์์ A/B ๋ฐฉ์ ์ ๋ฐ์ดํธ๋ฅผ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ฃผ์์ต๋๋ค. ์ ์ญ์ gokrazy์์ A/B ๋ฐฉ์ ์ ๋ฐ์ดํธ๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ์ฌ์ฉํ๊ณ ์์ด์, ์ด ๊ธฐ๋ฒ์ด ์ ์ ๋ ์ฃผ๋ฅ๊ฐ ๋์ด๊ฐ๋ ๊ฒ์ ๋ณด๋ ๋ฐ๊ฐ์ต๋๋ค.
ํ ์์ผ
ํ ์์ผ ๋ ์จ๋ ํจ์ฌ ์ข์๊ธฐ ๋๋ฌธ์, ์ทจ๋ฆฌํ ํธ์๊ฐ ๋ณด์ด๋ ์๋ฆฌ๋ฅผ ๊ผญ ๋งก์์ต๋๋ค:

โ์์ ๊ฑฐ ๋ณด๊ด์๋ ์ ๋ฆฌ๋๋ค: ๊ณต์ Nix ํฌ๋งคํฐโ
์ด๋ฒ ๋ฐํ์์๋ Tweag ์์์ด์ NixCon์ ์ฃผ์ ์กฐ์ง์ ์ค ํ ๋ช ์ธ Silvan Mosberger๊ฐ .nix ํ์ผ์ ์ํ ๊ณต์ ํฌ๋งคํ ๋๊ตฌ๊ฐ ์ด๋ป๊ฒ ํ์ํ๋์ง ์ค๋ช ํ์ต๋๋ค.
๊ณต์ Go ํฌ๋งคํฐ์ธ gofmt๊ฐ ์๊ฐ์ ์์ฒ์ผ๋ก ์ธ๊ธ๋ ๊ฒ์ ๋ฃ๊ณ ๋ฐ๊ฐ์ ์ต๋๋ค. ๋ค๋ฅธ ์ธ์ด ์ํ๊ณ์ ๋ง์ฐฌ๊ฐ์ง๋ก, ํต์ผ๋ ํฌ๋งท์ ๋์
ํ๋ฉด ์ฝ๋ ์คํ์ผ ์ค์ ์ฌ๋ถ๋ฅผ ๋๋ฌ์ผ ์ฝ๋ ๋ฆฌ๋ทฐ์์์ ์๊ฐ ์๋ชจ์ ์ธ ๋
ผ์์ ์์จ ์ ์์ต๋๋ค. ์์ฝ๊ฒ๋ ํฌ๋งคํ
ํ์ gofmt ์ฑ๊ณต์ ํต์ฌ ์์ ํ๋๋ฅผ ๋ฐ๋ผ ํ์ง ์์์ต๋๋ค. gofmt์๋ ์ต์
์ด ์๋ค๋ ์ ์
๋๋ค. ์ ๋ช
ํ Go ๊ฒฉ์ธ์ ๋ฐ๋ฅด๋ฉด:
Gofmt์ ์คํ์ผ์ ๋๊ตฌ๋ ๊ฐ์ฅ ์ข์ํ์ง ์์ง๋ง, gofmt๋ ๋ชจ๋๊ฐ ๊ฐ์ฅ ์ข์ํ๋ค!
์ฆ, ๋ชจ๋๊ฐ ๊ฐ์์ ์คํ์ผ ์ทจํฅ์ ํํํ ์ ์๋ ๊ฒ๋ณด๋ค ๋ชจ๋๊ฐ ๊ฐ์ ์คํ์ผ์ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ ์ค์ํ๋ค๋ ๋ป์ ๋๋ค.
โ ๋ นํ ์์ ๋ณด๊ธฐ (20๋ถ) - media.ccc.de
โNixOS ํตํฉ ํ ์คํธ ๋ง์คํฐํ๊ธฐ: ๋น ๋ฅด๊ณ ๊ฒฌ๊ณ ํ ๋ค์ค VM ํ ์คํธ๋ฅผ ์ํ ๊ณ ๊ธ ๊ธฐ๋ฒโ
์ด 2์๊ฐ์ง๋ฆฌ ์ํฌ์์์ Nixcademy์ Jacek Galowicz๋ Nix ๊ฐ์ฌ์ผ ๋ฟ๋ง ์๋๋ผ NixOS ํตํฉ ํ ์คํธ ๋๋ผ์ด๋ฒ์ ๋ฉ์ธํ ์ด๋์ด๊ธฐ๋ ํ๋ฐ, ๋จ ๋ช ์ค์ Nix์ Python์ผ๋ก ๋ณต์กํ ํตํฉ ํ ์คํธ๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ฃผ์์ต๋๋ค.
Jacek์ ํธ๋์ปค, ํด๋ผ์ด์ธํธ, ๋ฐฉํ๋ฒฝ, ์ฌ๋ฌ ๋คํธ์ํฌ๋ก ๊ตฌ์ฑ๋ BitTorrent ์๋น์ค ํตํฉ ํ ์คํธ ์์ ๋ฅผ ๋ณด์ฌ์ฃผ์์ต๋๋ค! nixpkgs์๋ ์ด๋ฌํ ํตํฉ ํ ์คํธ๊ฐ 1,000๊ฐ ์ด์ ํฌํจ๋์ด ์์ผ๋ฉฐ, ๋ ธํธ๋ถ์์ ํ๋๋ฅผ ์คํํ๋ ๊ฒ๋ ์ฝ์ต๋๋ค.
ํ ์คํธ๋ฅผ ๋๋ฒ๊น ํ๋ ๋ค์ํ ๋ฐฉ๋ฒ๋ ๊ฝค ๋ฉ์ ธ ๋ณด์์ต๋๋ค. ํฌํธ ํฌ์๋ฉ ๋์ vsock์ ์ฌ์ฉํ๊ฑฐ๋, ์คํจํ ํ ์คํธ๊ฐ ๋ฉ์ถฐ์ ๋๋ฒ๊น ์ ๊ธฐ๋ค๋ฆฌ๋๋ก ํ๋ ๋๋ฒ๊ทธ ํ ์ ํ์ฑํํ๋ ๋ฐฉ์์ ๋๋ค.
ํ๋ฅญํ ๊ฐ์์๋ค๊ณ ์๊ฐํ๋ฉฐ, Jacek์ ๋ชฐ์ ๋ ๋์ ๊ฐ์ฌ์์ต๋๋ค. ๊ทธ์ ์์ ์ ๋ค์ด๋ณด์๊ธธ ์ถ์ฒ๋๋ฆฝ๋๋ค!
โ์ธ์ Nix๋ฅผ ์ฐ์ง ๋ง์์ผ ํ ๊น: ์ธ๋ถ ์ค์ ๊ณผ SOPS Nix ํ์ฉํ๊ธฐโ
Ryota๋ ์ธ์ Nix๋ฅผ ์ฐ๊ณ ์ธ์ ์ฐ์ง ๋ง์์ผ ํ๋์ง์ ๋ํด ์ด์ผ๊ธฐํ์ต๋๋ค. ์๋ฅผ ๋ค์ด dotfile(์ค์ ํ์ผ)์ Nix๋ก ๊ด๋ฆฌํ ์๋ ์๊ณ , ๊ทธ๋ ์ง ์๊ธฐ๋ก ๊ฒฐ์ ํ ์๋ ์์ต๋๋ค. ์ต๊ทผ ์ ์ ๋ ๋ง์ ๋จธ์ ๊ณผ ์ค์ ์ Nix๋ก ์ฎ๊ฒจ์จ ์ ๋ก์๋ ์ด ๋ฐํ์ ๊น์ด ๊ณต๊ฐํ์ต๋๋ค. ์ ์ธ์ ์ผ๋ก ๊ด๋ฆฌ๋๋ ์ค์ ๊ณผ ์ํ ๊ธฐ๋ฐ์ผ๋ก ๊ด๋ฆฌ๋๋ ์ค์ ์์ ๊ฐ๊ฐ ๋ฌด์์ ์ป์ ์ ์๋์ง, ๊ทธ๋ฆฌ๊ณ ์ธ์ ์ด๋ค ์ ๊ทผ์ด ๋ ๋์์ง๋ฅผ ์ดํดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
โ ๋ นํ ์์ ๋ณด๊ธฐ (19๋ถ) - media.ccc.de
๋ผ์ดํธ๋ ํ ํฌ
ํ๋ฃจ์ ๋๋จธ์ง๋ ๋ผ์ดํธ๋ ํ ํฌ์์ ๋ณด๋๋๋ฐ, ๊ทธ์ค ์ผ๋ถ๋ ์คํฐ์ ๋ฐํ ์ฌ๋กฏ์ด์์ต๋๋ค. ์์๋ ๋ค์ฃฝ๋ฐ์ฃฝ์ด์ง๋ง, ์ ๊ฐ ์๊ฒ ๋ ๊ฒ๋ค์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- Cloud Hypervisor, qemu์ ๊ฐ์ KVM ๊ธฐ๋ฐ ํ์ดํผ๋ฐ์ด์ ์ด์ง๋ง Rust๋ก ์์ฑ๋์์ต๋๋ค.
- nixbuild.net, ํ์ํ ๋งํผ๋ง ๋น์ฉ์ ์ง๋ถํ๊ณ ์ถ๊ฐ ๋น๋ ์ฉ๋์ ๋น๋ฆด ์ ์๋ ์๋น์ค์ ๋๋ค. ์ผ์์ผ์ ์ด๋ค ๋ถ์ด ์๊ธฐ ํ์ฌ์์ nixbuild.net์ ์ฐ๊ณ ์๋๋ฐ ๋งค์ฐ ๋งค๋๋ฝ๋ค๊ณ ๋งํ๋ ๊ฑธ ๋ค์์ต๋๋ค.
- NixCI, Nix ๊ธฐ๋ฐ ํธ์คํ CI์ ๋๋ค. ์ฆ, ๊ธ์์ผ์ ๋ค์๋ cloud.devenv.sh ์๋น์ค๋ ์ด ์๋น์ค์ ๊ฒฝ์์์ ๋๋ค.
- Nix in the Wild๋ Flox๊ฐ ์งํํ๋ ํ๋ก์ ํธ๋ก, Nix ์ฑ๊ณต ์ฌ๋ก์ ๋ํด 45~60๋ถ๊ฐ ์ธํฐ๋ทฐ๋ฅผ ์งํํฉ๋๋ค. ์กฐ์ง ๋ด ์ฌ๋๋ค์ ์ค๋ํ๋ ๋ฐ ๋์์ด ๋ ์ ์์ต๋๋ค.
- clan์ fleet ๊ด๋ฆฌ ์๋ฃจ์ ์ ๋๋ค.
- NovaCustom, 1์ธ ๊ธฐ์ ๋ ธํธ๋ถ/PC ํ์ฌ์ ๋๋ค. ๋ ธํธ๋ถ์๋ coreboot๊ฐ ํ์ฌ๋์ด ์๊ณ NixOS์ ์ ์๋ํฉ๋๋ค.
- ExpressVPN์ด ๋ด๋ถ ์๋ฒ ์ค์ (TrustedServer)์ Debian์์ NixOS๋ก ์ด์ ์ค์ ๋๋ค! 105๊ฐ๊ตญ ์ด์์์ ๋งค์ฃผ ๋ฐฐํฌํ๊ณ ์์ต๋๋ค.
- ๋ ์ผ ํ์ฌ์ธ Cyberus๋ EU ์ฌ์ด๋ฒ ๋ณต์๋ ฅ๋ฒ(Cyber Resilience Act) ์๋ฌด๋ฅผ ์ค์ํ๋ NixOS LTS ๋ฆด๋ฆฌ์ค๋ฅผ ์ ๊ณตํ๊ณ ์์ต๋๋ค.
- David์ styx ํ๋ก์ ํธ๋ NixOS ์ ๋ฐ์ดํธ๋ฅผ ์ํ ๋์ญํญ ํจ์จ์ ์ธ ๋ค์ด๋ก๋ ๋ฉ์ปค๋์ฆ์ ๋๋ค. EROFS๋ฅผ ์ฌ์ฉํ๋๋ฐ, SquashFS ์ด๋ฏธ์ง์ ํฅ๋ฏธ๋ก์ด ๋์์ผ๋ก ๋ณด์ ๋๋ค.
๋ชจ๋ ๋ฐํ๊ฐ ๋๋ ๋ค์๋ ๋ฐ์์ ๋จ์ฒด ์ฌ์ง์ ์ฐ๊ณ ํธ์ซ๊ฐ์์ ๋ฐ๋นํ๋ฅผ ํ์ต๋๋ค:

NixCon 2025, ์ฌ์ง: Arik Grahl. CC BY-SA 4.0 ๋ผ์ด์ ์ค.
์ผ์์ผ
์ปจํผ๋ฐ์ค ์ ์๋ ์ผ์์ผ(ํต ๋ฐ์ด)์ ๊ตณ์ด ๊ฐ๊น ๊ณ ๋ฏผํ์ง๋ง, ๋ง์ ์ผ์์ผ์ด ๋๋ โ๋น์ฐํ ๊ฐ์ผ์ง!โ๋ผ๋ ์๊ฐ์ด ๋ค์๊ณ , ์ ๋ง ์ํ ๊ฒฐ์ ์ด์์ต๋๋ค!
๋ง์ ์ฌ๋๋ค์ด ๋จ์ ๊ฐ์์ ํ๋ก์ ํธ๋ฅผ ์์ ํ๊ณ ์์์ต๋๋ค. ์ด๋ค Nix ์ง๋ฌธ์ด๋ ์ฑํ ๋ฉ์์ง ํ๋๋ฉด ๋ต์ ์ป์ ์ ์์ ๊ฒ ๊ฐ์ ๋๋์ด์์ต๋๋ค. ํ๋ก์ ํธ์ ๋ค์ํ ๋ถ์ผ์์ ์ ๋ฌธ ์ง์๊ณผ ๋์์ ์ฃผ๋ ์๊ธธ์ด ์์์ต๋๋ค.
์ด์ ์๋ ์จ๋ผ์ธ์์๋ง ์๋ ๋ช๋ช ๋ถ๋ค์ ์ง์ ๋ง๋๊ฒ ๋์๊ณ , ๋ฐ์ ์ ๋ํด์๋ ์ด์ผ๊ธฐ๋ฅผ ๋ง์ด ๋๋์์ต๋๋ค. ๋๋ถ์ ์ด์ ์ฌ๋ฌ ๋ฐ์ ์์ ๋ฐํํด ๋ฌ๋ผ๋ ์ด์ฒญ๊น์ง ๋ฐ์์ต๋๋ค :D
๊ฒฐ๋ก
์ ๋ง ๋ฉ์ง ์ปจํผ๋ฐ์ค์์ต๋๋ค! ์ด์ํ๊ณผ ๋ชจ๋ ๊ธฐ์ฌ์๋ค์ด ํ๋ฅญํ ์ผ์ ํด๋์ต๋๋ค!
์ธ์ ๋ ๊ทธ๋ ๋ฏ ๋ผํผ์ค๋น์ OST๋ ์คํ์์ค ํ์ฌ๋ฅผ ์ํ ํ๋ฅญํ ์ฅ์์ ๋๋ค.
ํฐ์ผ ํ๋งค์ ๋ฐํ ์ ์/์ผ์ ๊ด๋ฆฌ๋ Pretix์ Pretalx ์คํ์์ค ์์คํ ์ผ๋ก ์งํ๋์๋๋ฐ, Pretix์ ๊ธฐ์ฌํ ์ฌ๋์ผ๋ก์ ์๋์ค๋ฝ์ต๋๋ค.
๋ฐํ ์ ์ ๋ ํ๋ฅญํ์ต๋๋ค. ๊น์ด ์๋ ๊ธฐ์ ๋ฐํ๋ ์์๊ณ , ์ธ๊ฐ์ ์ธ ์ธก๋ฉด์๋ง ์ด์ ์ ๋ ๋ฐํ๋ ์์์ผ๋ฉฐ, ๊ทธ ์ค๊ฐ ์ด๋๊ฐ์ ์๋ ๋ฐํ๋ ๋ง์์ต๋๋ค. ์ ๊ฐ ๋ณธ ๋ชจ๋ ๋ฐํ์๋ค์ด ์์ ์ ์ฃผ์ ์ ์ง์ ์ผ๋ก ์ ์ ์ ๊ฐ์ง๊ณ ์๋ค๋ ์ธ์์ ๋ฐ์๊ณ , ๊ทธ๋์ ์ ๋ฐ์ ์ธ ์๋์ง๊ฐ ๋งค์ฐ ์ข์์ต๋๋ค!
(๋ฐํ ๋ นํ ์์์ media.ccc.de: NixCon 2025์์ ๋ณด์ค ์ ์์ต๋๋ค.)
๋ฐํ ์ธ์๋ ๋ง์ ๋ถ๋ค๊ณผ ์น๊ทผํ๊ฒ ๊ต๋ฅํ๊ณ ํฅ๋ฏธ๋ก์ด ๋ํ๋ฅผ ๋๋์์ต๋๋ค. Nix์ ๋ํ ๊ด์ฌ๊ณผ ๋์ ์ด ๋ง๋ค๋ ๊ฒ์ ๋ณผ ์ ์์ด ์ ๋ง ๋ณด๊ธฐ ์ข์์ต๋๋ค!
์์๋ด์ฌ๋ก ์ด์๋๋ ํ์ฌ์น๊ณ ์ปจํผ๋ฐ์ค์ ์์ฑ๋๋ ๋งค์ฐ ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด ๋ฐํ ์ฌ์ด์ ๋์จ ๋ฉ์ง ๋ธ๋ ์ดํฌ ์์ ์ NixCon์ ์ํด ํน๋ณํ ์ ์๋ tonstr.studio์ โLavaโ์์ต๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก ์ฐ์ปด๋ฐฑ์๋ NixCon์ ์ํด ํน๋ณํ ๋ง๋ ๋คํฌ ์ค์์ค ์ด์ฝ๋ฆฟ์ด ๋ค์ด ์์์ต๋๋ค(์๋ ์ฌ์ง ์ฐธ๊ณ ). ์ ๋ ์๋ ๋คํฌ ์ด์ฝ๋ฆฟ์ ์ข์ํ์ง๋ ์๋๋ฐ, ์ด๊ฑด ์ ๋ง ๋ง์์์ต๋๋ค!
๋ชจ๋ ๋์ฐ๋ฏธ๋ถ๋ค๊ป ๋ค์ ํ ๋ฒ ๊ฐ์ฌ๋๋ฆฌ๋ฉฐ, ๊ณง ๋ค์ ๋์์ค๊ธฐ๋ฅผ ๊ธฐ๋ํฉ๋๋ค!

๊ธ์ ๋ฌด์์๋ก ์ฝ๊ธฐ