NixCon 2025 Trip Report ๐Ÿ

Michael Stapelberg

NixCon 2025 ์ฐธ๊ด€๊ธฐ ๐Ÿ

์›๋ฌธ์€ Michael Stapelberg๋‹˜์ด ์— ๊ฒŒ์žฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ธ”๋กœ๊ทธ ๊ตฌ๋…ํ•˜๊ธฐ

์˜ฌํ•ด ์ดˆ์— ์—ด๋ฆฐ NixOS ๋ฐ‹์—…์ด ๋งˆ์Œ์— ๋“ค์—ˆ๋Š”๋ฐ, ๋ฐ‹์—…์ด ๋๋‚˜๊ฐˆ ๋ฌด๋ ต ์˜ฌํ•ด NixCon 2025๊ฐ€ ์Šค์œ„์Šค์—์„œ ์—ด๋ฆฐ๋‹ค๋Š” ์†Œ์‹์ด ์ „ํ•ด์กŒ๋‹ค. ๊ทธ๊ฒƒ๋„ ๋ฐ”๋กœ ๊ฐ™์€ ์žฅ์†Œ์ธ ๋ผํผ์Šค๋นŒ์— ์žˆ๋Š” ๋™๋ถ€ ์Šค์œ„์Šค ์‘์šฉ๊ณผํ•™๋Œ€ํ•™ OST์—์„œ ๋ง์ด๋‹ค. ๊ทธ๋ž˜์„œ ๊ฐ€๋ณด๊ธฐ๋กœ ํ–ˆ๋‹ค! ์ด ์ฐธ๊ด€๊ธฐ์—์„œ๋Š” ๋‚ด๊ฐ€ ๊ฒฝํ—˜ํ•œ ๋ฉ‹์ง„ ์ปจํผ๋Ÿฐ์Šค์— ๋Œ€ํ•œ ๋Œ€๋žต์ ์ธ ์ธ์ƒ์„ ์ „ํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค :)

์ œ๋ชฉ์— ์žˆ๋Š” ๋ฒŒ์€ NixCon ๋‚ด๋ถ€์—์„œ ํ†ตํ•˜๋Š” ๋†๋‹ด์ด๋‹ค ;)

๊ธˆ์š”์ผ

๋น„๊ฐ€ ๋‚ด๋ฆฌ๋˜ ๊ธˆ์š”์ผ ์•„์นจ 9์‹œ 30๋ถ„์ฏค ๋„์ฐฉํ–ˆ๋‹ค. ๊ธฐ์ฐจ์—ญ์—์„œ OST 1๋™๊นŒ์ง€ ์„œ๋‘˜๋Ÿฌ ๋“ค์–ด๊ฐ€ ํ‹ฐ์ผ“ QR ์ฝ”๋“œ๋ฅผ ๋ณด์—ฌ์ฃผ๊ณ  ์ปจํผ๋Ÿฐ์Šค ๋ฐฐ์ง€์™€ ๋ฏธ๋ฆฌ ์ฃผ๋ฌธํ•œ ์ปค์Šคํ…€ ๋ช…์ฐฐ์„ ๋ฐ›์•˜๋‹ค. ์ปค์Šคํ…€ ๋ช…์ฐฐ์€ ์ด๋ฆ„์ด ์ƒˆ๊ฒจ์ ธ ์žˆ๊ณ  ์˜ท์— ๋ถ™์ผ ์ˆ˜ ์žˆ๋Š” ๊ฐ•๋ ฅํ•œ ์ž์„์ด ํ•จ๊ป˜ ์ œ๊ณต๋œ๋‹ค:

์ผ๋ฐ˜ ๋ช…์ฐฐ๊ณผ ์ปค์Šคํ…€ ๋ช…์ฐฐ

๊ฐ„๋‹จํžˆ ์š”๊ธฐ๋ฅผ ํ•œ ๋’ค ์˜คํ”„๋‹ ์„ธ์…˜์„ ์œ„ํ•ด ๋Œ€๊ฐ•๋‹น์œผ๋กœ ํ–ฅํ–ˆ๋‹ค. OST์˜ Farhad Mehta ๊ต์ˆ˜์™€ NixCon ์šด์˜ํŒ€ ์ „์ฒด๊ฐ€ ๋“ฑ๋ก ์ฐธ๊ฐ€์ž 450๋ช…์„ ํ™˜์˜ํ•˜๋ฉฐ ์ œ10ํšŒ NixCon์˜ ์‹œ์ž‘์„ ์•Œ๋ ธ๋‹ค! Nix ๋ฐ‹์—…์—์„œ ๋ดค๋˜ ์ต์ˆ™ํ•œ ์–ผ๊ตด๋“ค์ด ๋งŽ์ด ๋ณด์˜€์ง€๋งŒ, NixCon์ด ์ฒ˜์Œ์ธ ์‚ฌ๋žŒ์ด๋‚˜ ์Šค์œ„์Šค ์ž์ฒด๊ฐ€ ์ฒ˜์Œ์ธ ์‚ฌ๋žŒ์ด ๋ˆ„๊ตฌ๋ƒ๋Š” ์งˆ๋ฌธ์—๋Š” ๋งŽ์€ ์†์ด ์˜ฌ๋ผ์™”๋‹ค.

ํŠนํžˆ ์ด๋Ÿฐ ๋ฐ‹์—…๊ณผ ํ–‰์‚ฌ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ด์ฃผ์‹  Mehta ๊ต์ˆ˜๋‹˜๊ป˜ ๊ฐ์‚ฌ๋“œ๋ฆฌ๊ณ  ์‹ถ๋‹ค! ๐Ÿ‘

๋Œ€ํ•™, ํ•™๊ต ๋˜๋Š” ๊ณต๊ฐ„์„ ํ™•๋ณดํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค๋ฅธ ๊ธฐ๊ด€์—์„œ ์ผํ•˜๊ณ  ์žˆ๋‹ค๋ฉด, ๋ฐ‹์—…์„ ์ฃผ์ตœํ•  ์žฅ์†Œ๋ฅผ ์ œ๊ณตํ•ด ๋ณด๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•ด ๋ณด๊ธธ ๋ฐ”๋ž€๋‹ค(์ •๊ธฐ์ ์œผ๋กœ๋“ , ๋‹จ ํ•œ ๋ฒˆ์ด๋“ )! ์žฅ์†Œ๋ฅผ ๊ตฌํ•˜๋Š” ์ผ์€ ์–ธ์ œ๋‚˜ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์— ๊ณต๊ฐ„์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ์˜คํ”ˆ์†Œ์Šค์— ํฐ ๊ธฐ์—ฌ๊ฐ€ ๋œ๋‹ค.

โ€œWhat if GitHub Actions were local-first and built using Nix?โ€

์ด๋‚  ์ฒซ ๋ฒˆ์งธ ๊ธฐ์ˆ  ๋ฐœํ‘œ๋Š” ํ˜ธ์ŠคํŒ…ํ˜• Nix ์บ์‹œ์ธ cachix.org๋ฅผ ๋งŒ๋“  Domen Koลพar์˜ โ€œWhat if GitHub Actions were local-first and built using Nix?โ€์˜€๋‹ค. ์ด ๋ฐœํ‘œ์—์„œ๋Š” devenv๋ฅผ ํ™œ์šฉํ•œ Nix ๊ธฐ๋ฐ˜ CI ์†”๋ฃจ์…˜(GitHub Actions์™€ ์œ ์‚ฌํ•œ)์ธ cloud.devenv.sh๋ฅผ ์†Œ๊ฐœํ–ˆ๋‹ค.

์ด ์†”๋ฃจ์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด GitHub Actions๋ฅผ ๋กœ์ปฌ์—์„œ ์‰ฝ๊ณ  ์™„์ „ํ•˜๊ฒŒ ์‹คํ–‰ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๊ณ (๋„ค, ์šฐ๋ฆฌ๋Š” ๋ชจ๋‘ act๋ฅผ ์•Œ๊ณ  ์žˆ๋‹ค), YAML ๋Œ€์‹  Nix ์„ค์ • ํŒŒ์ผ์„ ์ž‘์„ฑํ•˜๊ฒŒ ๋œ๋‹ค(?).

์†”๋ฃจ์…˜ ์ž์ฒด๋Š” ๊ดœ์ฐฎ์•„ ๋ณด์˜€์ง€๋งŒ, ๋ฐœํ‘œ์ž๊ฐ€ ์Šฌ๋ผ์ด๋“œ๋ฅผ ์ด๋ฆฌ์ €๋ฆฌ ๋„˜๋‚˜๋“ค๋ฉฐ ์ง„ํ–‰ํ•ด ๋‹ค์†Œ ์‚ฐ๋งŒํ•˜๊ฒŒ ๋А๊ปด์กŒ๋‹ค. ํ•œ ๊ฐ€์ง€ ์ค‘์š”ํ•œ ์งˆ๋ฌธ์€ ๋‹ต์„ ์–ป์ง€ ๋ชปํ–ˆ๋‹ค. ์ด ์ปค์Šคํ…€ ์†”๋ฃจ์…˜์„ GitHub ํ”„๋กœ์ ํŠธ์™€ ์–ด๋–ป๊ฒŒ ํ†ตํ•ฉํ•˜๋Š”๊ฐ€? ๋‚ด ํ”„๋กœ์ ํŠธ์—์„œ๋Š” GitHub Actions์˜ ๊ธฐ๋ณธ ์„ค์ • ๋ฐฉ์‹์—์„œ ๋ฒ—์–ด๋‚˜๋Š” ๊ฒƒ์ด ๊ทธ๋งŒํ•œ ๊ฐ€์น˜๊ฐ€ ์žˆ์–ด ๋ณด์ด์ง€ ์•Š์•˜๋‹ค. ๋ฌผ๋ก  ์‚ฌ๋žŒ๋งˆ๋‹ค ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋‹ค.

โ†’ ๋…นํ™” ์˜์ƒ ๋ณด๊ธฐ (46๋ถ„, media.ccc.de)

โ€œRewriting the Hydra Queue Runner in Rustโ€

๋‹ค์Œ์€ ๋…์ผ์˜ ์†Œ๊ทœ๋ชจ ์†Œํ”„ํŠธ์›จ์–ด ํšŒ์‚ฌ์ธ Helsinki Systems์˜ Simon Hauser๊ฐ€ ๋ฐœํ‘œํ•œ โ€œRewriting the Hydra Queue Runner in Rustโ€์˜€๋‹ค. Hydra๋Š” NixOS ์ธํ”„๋ผ์—์„œ ๋นŒ๋“œ๋ฅผ ์Šค์ผ€์ค„๋งํ•˜๋Š” ์ปดํฌ๋„ŒํŠธ๋กœ, nixpkgs๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด ๋นŒ๋“œ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๊ทธ ๊ฒฐ๊ณผ๊ฐ€ cache.nixos.org์— ์˜ฌ๋ผ๊ฐ€๊ฒŒ ํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค(Debian์œผ๋กœ ์น˜๋ฉด buildd์— ํ•ด๋‹นํ•œ๋‹ค).

Simon์€ ํ˜„์žฌ ํ ๋Ÿฌ๋„ˆ์˜ ๋ณ‘๋ชฉ ๋•Œ๋ฌธ์— ์ธํ”„๋ผ๊ฐ€ ๋†€๊ณ  ์žˆ๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•œ๋‹ค๊ณ  ์„ค๋ช…ํ–ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์— ๊ฐ€์šฉํ•œ ๋จธ์‹ ์ด ์žˆ์–ด๋„ ์ด๋ฅผ ์™„์ „ํžˆ ํ™œ์šฉํ•˜์ง€ ๋ชปํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋Š” ๊ธฐ์กด์˜ ๋‚ก์€ SSH ๊ธฐ๋ฐ˜ ์ž๋™ํ™”๋ฅผ ์ž˜ ์„ค๊ณ„๋œ gRPC ํ”„๋กœํ† ์ฝœ๋กœ ๊ต์ฒดํ•œ ๊ณผ์ •์„ ์„ค๋ช…ํ–ˆ๋‹ค. ์„ค๊ณ„ ๊ณผ์ •์„ ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ์ด ํ•จ๊ป˜ ๊ฐœ๋ฐœํ•˜๊ณ  ๊ฒ€ํ† ํ•œ ๊ฒƒ ๊ฐ™๋‹ค๋Š” ์ธ์ƒ์„ ๋ฐ›์•˜๋Š”๋ฐ, ์ด๋Š” ํ”„๋กœ์ ํŠธ๊ฐ€ ๊ฑด๊ฐ•ํ•˜๊ฒŒ ์šด์˜๋˜๊ณ  ์žˆ๋‹ค๋Š” ์ข‹์€ ์‹ ํ˜ธ๋‹ค.

์•„์‰ฝ๊ฒŒ๋„ ๋ฐœํ‘œ์—์„œ ๋น ์ง„ ๊ฒƒ์ด ํ•˜๋‚˜ ์žˆ์—ˆ๋Š”๋ฐ, ๋ฐ”๋กœ ์ˆ˜์น˜์˜€๋‹ค. ์ƒˆ๋กœ ์ž‘์„ฑ๋œ ํ ๋Ÿฌ๋„ˆ๊ฐ€ ์–ผ๋งˆ๋‚˜ ๋” ๋‚˜์•„์กŒ๋Š”์ง€๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ทธ๋ž˜ํ”„๊ฐ€ ๋ช‡ ๊ฐœ ์žˆ์—ˆ๋‹ค๋ฉด ์ข‹์•˜์„ ๊ฒƒ์ด๋‹ค.

ํ˜„์žฌ ์ƒˆ๋กœ์šด ํ ๋Ÿฌ๋„ˆ๋Š” Nix Community ๋นŒ๋“œ์—๋Š” ์ด๋ฏธ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ์ง€๋งŒ, ์ •์ž‘ NixOS ์ž์ฒด ํ”„๋กœ๋•์…˜์—์„œ๋Š” ์•„์ง ์‚ฌ์šฉ๋˜์ง€ ์•Š๊ณ  ์žˆ๋‹ค. ๊ณง ๋„์ž…๋˜๊ธฐ๋ฅผ ๊ธฐ๋Œ€ํ•ด ๋ณธ๋‹ค!

โ†’ ๋…นํ™” ์˜์ƒ ๋ณด๊ธฐ (27๋ถ„, media.ccc.de)

โ€œYou canโ€™t spell โ€œdevshellโ€ without โ€œ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๋ฅผ ์–ธ๊ธ‰ํ–ˆ๋Š”๋ฐ, ์ด๋Š” fork/exec์„ ์ถ”์ ํ•˜๊ณ  ํƒ€์ด๋ฐ์— ๋Œ€ํ•œ ๊ฐ„ํŠธ ์ฐจํŠธ ๊ตฌ๋ฌธ์„ ์ƒ์„ฑํ•˜๋Š” bpftrace ๊ธฐ๋ฐ˜ ํ”„๋กœํŒŒ์ผ๋Ÿฌ๋‹ค. ๋ฉ‹์ ธ ๋ณด์ด์ง€๋งŒ ์•„์‰ฝ๊ฒŒ๋„ ์ง€๊ธˆ์€ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™๋‹คโ€ฆ? ์•„์‰ฝ๋‹ค.

โ†’ ๋…นํ™” ์˜์ƒ ๋ณด๊ธฐ (45๋ถ„, media.ccc.de)

โ€œThe Nix Binary Cache and AWSโ€

์ด ๋…ธ๋ณ€๋‹ดํ™”(fireside chat)์—์„œ Tarus Balog๋Š” 20๋…„๊ฐ„ ์˜คํ”ˆ์†Œ์Šค ํ™œ๋™์„ ํ•˜๋‹ค๊ฐ€ AWS์— ํ•ฉ๋ฅ˜ํ•˜๊ฒŒ ๋œ ๊ณผ์ •๊ณผ, ๊ทธ์˜ ํŒ€์ด ์ปค๋ฎค๋‹ˆํ‹ฐ์— ์–ด๋–ป๊ฒŒ ๊ธฐ์—ฌํ•˜๊ณ ์ž ํ•˜๋Š”์ง€๋ฅผ ๊ณต์œ ํ–ˆ๋‹ค. ๊ทธ์ค‘ ํ•œ ๊ฐ€์ง€ ๊ตฌ์ฒด์ ์ธ ๋ฐฉ๋ฒ•์ด ๋ฐ”๋กœ cache.nixos.org๋ฅผ ํ˜ธ์ŠคํŒ…ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

โ†’ ๋…นํ™” ์˜์ƒ ๋ณด๊ธฐ (24๋ถ„, media.ccc.de)

โ€œNix-based development environments at Shopify (reprise)โ€

Shopify์˜ Josh Heinrichs๋Š” ๊ทธ๋“ค์ด Nix๋ฅผ ์–ด๋–ป๊ฒŒ ๋„์ž…ํ–ˆ๋Š”์ง€(๋˜๋‹ค์‹œ!) ๊ณต์œ ํ–ˆ๋Š”๋ฐ, ์ด๋Ÿฐ ํ˜„์‹ค ์„ธ๊ณ„์˜ ๊ธฐ์—… ๋„์ž… ์ด์•ผ๊ธฐ๋Š” ๋งค์šฐ ํฅ๋ฏธ๋กญ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.

์š”์•ฝํ•˜์ž๋ฉด, Shopify๋Š” 2016๋…„๋ถ€ํ„ฐ ์„ ์–ธ์  ์„ค์ •์„ ์ œ๊ณตํ•˜๊ณ  ์ดํ›„ apt(Linux)๋‚˜ homebrew(macOS)๋กœ ์ „๋‹ฌํ•˜๋Š” dev ๋ช…๋ น์„ ๊ฐ€์ง€๊ณ  ์žˆ์—ˆ๋‹ค. Nix๋กœ ์ด์ „ํ•˜๋ ค๋Š” ์ฒซ ๋ฒˆ์งธ ์‹œ๋„์—์„œ๋Š” ์•ˆ์ •์ ์ธ ๊ธฐ๋ฐ˜์„ ๋‹ค์ง€์ง€ ๋ชปํ–ˆ๊ณ (์ผ๋ถ€ ๊ตฌ์„ฑ์›์ด ์•„์ง ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ์ƒํƒœ์˜€๋‹ค), ์ดํ›„ ํšŒ์‚ฌ ์ „์ฒด๊ฐ€ ํด๋ผ์šฐ๋“œ ๊ฐœ๋ฐœ๋กœ ์ „ํ™˜ํ•˜๋ฉด์„œ ๋” ์‰ฌ์šด ํ•ด๊ฒฐ์ฑ…์ธ โ€œ๊ทธ๋ƒฅ ubuntu๋ฅผ ์“ฐ์žโ€๊ฐ€ ์„ ํƒ๋˜์—ˆ๋‹ค.

๋ช‡ ๋…„์ด ์ง€๋‚˜์ž ์‚ฌ๋žŒ๋“ค์€ ํด๋ผ์šฐ๋“œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์— ๊ทธ๋ฆฌ ๋งŒ์กฑํ•˜์ง€ ๋ชปํ•˜๋Š” ๋ถ„์œ„๊ธฐ์˜€๊ณ , ์–ด๋А ๋‚  Shopify CEO์ธ Tobias Lรผtke๊ฐ€ Shopify์˜ dev์™€ ๋†€๋ž๋„๋ก ์œ ์‚ฌํ•œ Nix ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์ธ devenv๋ฅผ ๋ฐœ๊ฒฌํ•œ๋‹ค. ๊ทธ๋ž˜์„œ Tobi๋Š” ์ž์‚ฌ ์„œ๋น„์Šค ์ค‘ ํ•˜๋‚˜์— devenv๋ฅผ ๋„์ž…ํ•˜๊ณ  Nix ์‚ฌ์šฉ์„ ์ง€์ง€ํ•˜๊ฒŒ ๋œ๋‹ค. ์ด๋ฒˆ์—๋Š” ์กฐ์ง ๋‚ด ์„ฑ๊ณต์ ์ธ ๋„์ž…์„ ์œ„ํ•ด ํ›จ์”ฌ ๋” ๋งŽ์€ ์‹œ๊ฐ„์„ ํˆฌ์žํ–ˆ๋Š”๋ฐ, ์ ์ง„์  ๋„์ž…๊ณผ ๋ชจ๋“  ์ดํ•ด๊ด€๊ณ„์ž๋ฅผ ์ฐธ์—ฌ์‹œํ‚ค๋Š” ๋ฐฉ์‹ ๋“ฑ์ด์—ˆ๋‹ค.

๊ตํ›ˆ์€ ํ•˜๋‚˜์˜ ๊ตฌ์ฒด์ ์ด๊ณ  ์ž˜ ์ง€์›๋˜๋Š” ์‚ฌ์šฉ ์‚ฌ๋ก€๊ฐ€ ๋„์ž…์„ ์ด๋„๋Š” ๋™๋ ฅ์ด ๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ผ๋‹จ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ Nix ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์œผ๋กœ ์˜ฎ๊ธฐ๋ฉด, ์ƒํƒœ๊ณ„์˜ ๋‹ค๋ฅธ ๋ถ€๋ถ„๋“ค๋„ ๋” ์‰ฝ๊ฒŒ ๋„์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค.

โ†’ ๋…นํ™” ์˜์ƒ ๋ณด๊ธฐ (19๋ถ„, media.ccc.de)

โ€œMy first Nix Aha!: A Newcomerโ€™s Perspectiveโ€

Shopify ๋ฐœํ‘œ์™€ ๋น„์Šทํ•œ ๋งฅ๋ฝ์—์„œ, ASML์˜ Kavisha Kumar๋Š” ๋™๋ฃŒ๊ฐ€ ๊นจ๋—ํ•œ ๊ฐœ๋ฐœ ์…ธ์„ ์–ป๊ธฐ ์œ„ํ•ด nix-shell์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๋ณด๊ณ  Nix์— ์ž…๋ฌธํ•˜๊ฒŒ ๋œ ๊ณผ์ •์„ ๊ณต์œ ํ–ˆ๋‹ค.

Kavisha๋Š” ASML์—์„œ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์™œ, ์–ด๋–ป๊ฒŒ Nix๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š”์ง€ ๊ฐ€๋ฅด์น˜๋Š” ๋ฐ ๋งŽ์€ ์‹œ๊ฐ„์„ ๋ณด๋ƒˆ๋‹ค. ๊ทธ๋…€๋Š” ๋น„๋””์˜ค ๊ฒŒ์ž„์ด๋ผ๋Š” ์ฃผ์ œ๋ฅผ ํ†ตํ•ด Nix ๊ฐœ๋…์„ ์„ค๋ช…ํ•˜๋Š” ์—ฌ๋Ÿฌ ๋ฉ‹์ง„ ๋น„์œ ๋ฅผ ๊ณต์œ ํ–ˆ๋‹ค.

๋งŽ์€ ์‚ฌ๋žŒ์ด Nix์— ๋Œ€ํ•ด ์—ด์ •์ ์ด์ง€๋งŒ ๊ทธ ์—ด์ •์„ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์—๊ฒŒ ์ „๋‹ฌํ•˜๋Š” ๋ฐ ์–ด๋ ค์›€์„ ๊ฒช๋Š”๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. Kavisha๋Š” ์ž์‹ ์—๊ฒŒ ํšจ๊ณผ๊ฐ€ ์žˆ์—ˆ๋˜ ์ข‹์€ ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ฃผ์—ˆ๋‹ค.

โ†’ ๋…นํ™” ์˜์ƒ ๋ณด๊ธฐ (19๋ถ„, media.ccc.de)

๋ผ์ดํŠธ๋‹ ํ† ํฌ

๊ทธ๋‚ ์˜ ๋‚จ์€ ์‹œ๊ฐ„์€ ๋ผ์ดํŠธ๋‹ ํ† ํฌ๋กœ ์ฑ„์›Œ์กŒ๋‹ค.

Determinate Systems์˜ Cole Mickens๋Š” ๊ทธ๋“ค์ด ํ•˜์œ„ ๋ฐฐํฌํŒ์ธ โ€œDeterminate Nixโ€์—์„œ ํ˜„์žฌ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋Š” ๊ธฐ๋Šฅ๋“ค(์ถ”ํ›„ ์—…์ŠคํŠธ๋ฆผ์— ๋ฐ˜์˜๋  ์˜ˆ์ •)์„ ์„ค๋ช…ํ–ˆ๋‹ค: lazy trees(Flakes ํ‰๊ฐ€๋ฅผ ์œ„ํ•œ ์„ฑ๋Šฅ ์ตœ์ ํ™”), ๋ณ‘๋ ฌ ํ‰๊ฐ€(ํ‰๊ฐ€ ์‹œ๊ฐ„์„ 16์ดˆ์—์„œ 7์ดˆ๋กœ ๋‹จ์ถ•) ๊ทธ๋ฆฌ๊ณ  mac์šฉ ๋„ค์ดํ‹ฐ๋ธŒ Linux ๋นŒ๋”๋‹ค. ๋‹ค์Œ์œผ๋กœ ์ค€๋น„ ์ค‘์ธ ๊ฒƒ์€ Flake Schemas์ธ๋ฐ, ๋‚˜๋Š” ์•„์ง ์ฝ์–ด๋ณด์ง€ ๋ชปํ–ˆ๋‹ค.

Nix ๋ฐ DevOps ์ปจ์„คํŒ… ํšŒ์‚ฌ์ธ Numtide์˜ Yvan Sraka๋Š” ๊ทธ๊ฐ€ NixOS๋กœ ์นœ๊ตฌ์™€ ๊ฐ€์กฑ์˜ Linux ๋จธ์‹ ์„ ์–ด๋–ป๊ฒŒ ๊ด€๋ฆฌํ•˜๋Š”์ง€ ๋ณด์—ฌ์ฃผ์—ˆ๋‹ค. ๊ทธ๋Š” NixOS ์œ„์— ์ž์‹ ๋งŒ์˜ ์„ค์ • ๋ ˆ์ด์–ด๋ฅผ ๋‘๊ณ , NixOS ์ž์ฒด๋Š” ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ์œผ๋กœ๋งŒ ์‚ฌ์šฉํ•œ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ์‹ค์ œ ํ”„๋กœ๊ทธ๋žจ์€ 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 ๋ฐฉ์‹ ์—…๋ฐ์ดํŠธ๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์–ด์„œ, ์ด ๊ธฐ์ˆ ์ด ์ ์  ๋” ์ฃผ๋ฅ˜๊ฐ€ ๋˜๊ณ  ์žˆ๋Š” ๊ฒƒ์„ ๋ณด๋‹ˆ ๋ฐ˜๊ฐ€์› ๋‹ค.

ํ† ์š”์ผ

ํ† ์š”์ผ์€ ๋‚ ์”จ๊ฐ€ ํ›จ์”ฌ ์ข‹์•„์„œ, ์ทจ๋ฆฌํžˆ ํ˜ธ์ˆ˜๊ฐ€ ๋ณด์ด๋Š” ์ž๋ฆฌ์— ์•‰์•˜๋‹ค:

ํ˜ธ์ˆ˜ ์ „๋ง!

โ€œThe bikes have been shed: The official Nix formatterโ€

์ด๋ฒˆ ๋ฐœํ‘œ์—์„œ๋Š” Tweag ์†Œ์†์ด์ž NixCon์˜ ์ฃผ์š” ์ฃผ์ตœ์ž ์ค‘ ํ•œ ๋ช…์ธ Silvan Mosberger๊ฐ€ .nix ํŒŒ์ผ์„ ์œ„ํ•œ ๊ณต์‹ ํฌ๋งคํ„ฐ๊ฐ€ ์–ด๋–ป๊ฒŒ ํƒ„์ƒํ–ˆ๋Š”์ง€ ์„ค๋ช…ํ–ˆ๋‹ค.

๊ณต์‹ Go ํฌ๋งคํ„ฐ์ธ gofmt๊ฐ€ ์˜๊ฐ์˜ ์›์ฒœ์œผ๋กœ ์–ธ๊ธ‰๋œ ๊ฒƒ์„ ๋“ฃ๊ณ  ๋ฐ˜๊ฐ€์› ๋‹ค. ๋‹ค๋ฅธ ์–ธ์–ด ์ƒํƒœ๊ณ„์—์„œ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, ํ†ต์ผ๋œ ํฌ๋งท์„ ๋„์ž…ํ•˜๋ฉด ์ฝ”๋“œ ์Šคํƒ€์ผ ์ค€์ˆ˜ ์—ฌ๋ถ€๋ฅผ ๋‘๊ณ  ์ฝ”๋“œ ๋ฆฌ๋ทฐ์—์„œ ์‹œ๊ฐ„์„ ์žก์•„๋จน๋Š” ๊ณต๋ฐฉ์„ ์—†์•จ ์ˆ˜ ์žˆ๋‹ค. ์•ˆํƒ€๊น๊ฒŒ๋„ ํฌ๋งทํŒ…์„ ๋งŒ๋“  ๋ถ„๋“ค์€ gofmt ์„ฑ๊ณต์˜ ํ•ต์‹ฌ ์š”์†Œ ํ•˜๋‚˜๋ฅผ ์žฌํ˜„ํ•˜์ง€ ์•Š์•˜๋‹ค. gofmt์—๋Š” ์˜ต์…˜์ด ์—†๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์œ ๋ช…ํ•œ Go ๊ฒฉ์–ธ์— ๋”ฐ๋ฅด๋ฉด:

Gofmt์˜ ์Šคํƒ€์ผ์€ ๋ˆ„๊ตฌ๋„ ๊ฐ€์žฅ ์ข‹์•„ํ•˜๋Š” ์Šคํƒ€์ผ์ด ์•„๋‹ˆ์ง€๋งŒ, gofmt๋Š” ๋ชจ๋‘์—๊ฒŒ ๊ฐ€์žฅ ์‚ฌ๋ž‘๋ฐ›๋Š”๋‹ค!

์ฆ‰, ๋ชจ๋‘๊ฐ€ ์ž์‹ ์˜ ์Šคํƒ€์ผ ์ทจํ–ฅ์„ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋ชจ๋‘๊ฐ€ ๊ฐ™์€ ์Šคํƒ€์ผ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ์ค‘์š”ํ•˜๋‹ค๋Š” ๋œป์ด๋‹ค.

โ†’ ๋…นํ™” ์˜์ƒ ๋ณด๊ธฐ (20๋ถ„, media.ccc.de)

โ€œMastering NixOS Integration Tests: Advanced Techniques for Fast and Robust Multi-VM Testsโ€

๋‘ ์‹œ๊ฐ„์งœ๋ฆฌ ์ด ์›Œํฌ์ˆ์—์„œ Nix ๊ฐ•์‚ฌ์ผ ๋ฟ ์•„๋‹ˆ๋ผ NixOS ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ ๋“œ๋ผ์ด๋ฒ„์˜ ๋ฉ”์ธํ…Œ์ด๋„ˆ์ด๊ธฐ๋„ ํ•œ Nixcademy์˜ Jacek Galowicz๊ฐ€ ๋‹จ ๋ช‡ ์ค„์˜ Nix์™€ Python์œผ๋กœ ๋ณต์žกํ•œ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ฃผ์—ˆ๋‹ค.

Jacek์€ ํŠธ๋ž˜์ปค, ํด๋ผ์ด์–ธํŠธ, ๋ฐฉํ™”๋ฒฝ ๋ฐ ์—ฌ๋Ÿฌ ๋„คํŠธ์›Œํฌ๋กœ ๊ตฌ์„ฑ๋œ BitTorrent ์„œ๋น„์Šค ์˜ˆ์‹œ๋กœ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ๋ฅผ ์‹œ์—ฐํ–ˆ๋‹ค! nixpkgs์—๋Š” ์ด๋Ÿฌํ•œ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ๊ฐ€ 1,000๊ฐœ ์ด์ƒ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๋…ธํŠธ๋ถ์—์„œ ํ•˜๋‚˜๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์‰ฝ๋‹ค.

ํ…Œ์ŠคํŠธ๋ฅผ ๋””๋ฒ„๊น…ํ•˜๋Š” ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์ด ๊ฝค ๋ฉ‹์ ธ ๋ณด์˜€๋‹ค. ํฌํŠธ ํฌ์›Œ๋”ฉ ๋Œ€์‹  vsock์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜, ์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ๊ฐ€ ๋ฉˆ์ถฐ์„œ ๋””๋ฒ„๊น…์„ ๊ธฐ๋‹ค๋ฆฌ๋„๋ก ํ•˜๋Š” ๋””๋ฒ„๊ทธ ํ›…์„ ํ™œ์„ฑํ™”ํ•˜๋Š” ๋ฐฉ์‹ ๋“ฑ์ด๋‹ค.

ํ›Œ๋ฅญํ•œ ๊ฐœ์š”์˜€๊ณ  Jacek์€ ๋ชฐ์ž…๋„ ๋†’์€ ๊ฐ•์‚ฌ์˜€๋‹ค. ๊ทธ์˜ ์ˆ˜์—…์„ ๋“ค์–ด๋ณด๊ธธ ์ถ”์ฒœํ•œ๋‹ค!

โ€œWhen Not to Nix: Working with External Config and 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์€ ํ”Œ๋ฆฟ ๊ด€๋ฆฌ ์†”๋ฃจ์…˜์ด๋‹ค.
  • NovaCustom, 1์ธ ๊ธฐ์—…์œผ๋กœ ์šด์˜ํ•˜๋Š” ๋…ธํŠธ๋ถ/PC ํšŒ์‚ฌ. ๋…ธํŠธ๋ถ์—๋Š” coreboot๊ฐ€ ํƒ‘์žฌ๋˜์–ด ์žˆ์œผ๋ฉฐ NixOS์™€ ์ž˜ ๋™์ž‘ํ•œ๋‹ค.
  • ExpressVPN์€ ๋‚ด๋ถ€ ์„œ๋ฒ„ ๊ตฌ์„ฑ(TrustedServer)์„ Debian์—์„œ NixOS๋กœ ์ด์ „ ์ค‘์ด๋‹ค! 105๊ฐœ๊ตญ ์ด์ƒ์—์„œ ๋งค์ฃผ ๋ฐฐํฌํ•˜๊ณ  ์žˆ๋‹ค.
  • ๋…์ผ ๊ธฐ์—…์ธ Cyberus๋Š” EU ์‚ฌ์ด๋ฒ„ ๋ณต์›๋ ฅ ๋ฒ•(Cyber Resilience Act) ์˜๋ฌด๋ฅผ ์ค€์ˆ˜ํ•˜๋Š” NixOS LTS ๋ฆด๋ฆฌ์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋‹ค.
  • David์˜ styx ํ”„๋กœ์ ํŠธ๋Š” NixOS ์—…๋ฐ์ดํŠธ๋ฅผ ์œ„ํ•œ ๋” ๋Œ€์—ญํญ ํšจ์œจ์ ์ธ ๋‹ค์šด๋กœ๋“œ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด๋‹ค. SquashFS ์ด๋ฏธ์ง€์˜ ํฅ๋ฏธ๋กœ์šด ๋Œ€์•ˆ์œผ๋กœ ๋ณด์ด๋Š” EROFS๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

๋ชจ๋“  ๋ฐœํ‘œ๊ฐ€ ๋๋‚œ ๋’ค ์šฐ๋ฆฌ๋Š” ๋ฐ–์œผ๋กœ ๋ชจ์—ฌ ๋‹จ์ฒด ์‚ฌ์ง„์„ ์ฐ๊ณ  ์ด์–ด์„œ ํ˜ธ์ˆซ๊ฐ€์—์„œ ๋ฐ”๋น„ํ๋ฅผ ์ฆ๊ฒผ๋‹ค:

NixCon 2025 ๋‹จ์ฒด ์‚ฌ์ง„

NixCon 2025, ์‚ฌ์ง„: Arik Grahl. CC BY-SA 4.0 ๋ผ์ด์„ ์Šค.

์ผ์š”์ผ

์ปจํผ๋Ÿฐ์Šค ์ „์—๋Š” ์ผ์š”์ผ(ํ•ต ๋ฐ์ด)์— ๊ตณ์ด ์ฐธ์„ํ•ด์•ผ ํ• ๊นŒ ๊ณ ๋ฏผํ–ˆ์ง€๋งŒ, ๋ง‰์ƒ ์ผ์š”์ผ์ด ๋˜๋‹ˆ โ€œ๋‹น์—ฐํžˆ ๊ฐ€์•ผ์ง€!โ€๋ผ๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ๊ณ , ์ •๋ง ์ž˜ํ•œ ๊ฒฐ์ •์ด์—ˆ๋‹ค!

๋งŽ์€ ์‚ฌ๋žŒ์ด ๋‚จ์•„ ๊ฐ์ž์˜ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ์—ˆ๋‹ค. ์–ด๋–ค Nix ์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต์ด๋“  ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€ ํ•˜๋‚˜๋งŒ ๋ณด๋‚ด๋ฉด ์–ป์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์•˜๋‹ค โ€” ํ”„๋กœ์ ํŠธ์˜ ๋‹ค์–‘ํ•œ ๋ถ„์•ผ์—์„œ ์ „๋ฌธ์„ฑ๊ณผ ๋„์›€์„ ์ฃผ๋Š” ์†๊ธธ์ด ๊ฐ€๋“ํ–ˆ๋‹ค.

์ด์ „์—๋Š” ์˜จ๋ผ์ธ์œผ๋กœ๋งŒ ์•Œ๊ณ  ์ง€๋‚ด๋˜ ๋ช‡ ๋ถ„์„ ์ง์ ‘ ๋งŒ๋‚˜๊ฒŒ ๋˜์—ˆ๊ณ , ๋ฐ‹์—…์— ๋Œ€ํ•ด์„œ๋„ ๋งŽ์€ ์ด์•ผ๊ธฐ๋ฅผ ๋‚˜๋ˆด๋‹ค. ์ด์ œ๋Š” ์—ฌ๋Ÿฌ ๋ฐ‹์—…์—์„œ ๋ฐœํ‘œํ•ด ๋‹ฌ๋ผ๋Š” ์ดˆ์ฒญ๊นŒ์ง€ ๋ฐ›์•˜๋‹ค :D

๊ฒฐ๋ก 

์ •๋ง ๋ฉ‹์ง„ ์ปจํผ๋Ÿฐ์Šค์˜€๋‹ค! ์šด์˜ํŒ€๊ณผ ๋ชจ๋“  ๊ธฐ์—ฌ์ž๋“ค์ด ํ›Œ๋ฅญํ•œ ์ผ์„ ํ•ด๋ƒˆ๋‹ค!

์–ธ์ œ๋‚˜์ฒ˜๋Ÿผ ๋ผํผ์Šค๋นŒ์˜ OST๋Š” ์˜คํ”ˆ์†Œ์Šค ํ–‰์‚ฌ๋ฅผ ์œ„ํ•œ ํ›Œ๋ฅญํ•œ ์žฅ์†Œ์˜€๋‹ค.

ํ‹ฐ์ผ“ ํŒ๋งค์™€ ๋ฐœํ‘œ ๋ชจ์ง‘/์ผ์ • ๊ด€๋ฆฌ๋Š” ์˜คํ”ˆ์†Œ์Šค ์‹œ์Šคํ…œ์ธ Pretix์™€ Pretalx๋กœ ์ง„ํ–‰๋˜์—ˆ๋Š”๋ฐ, Pretix์— ๊ธฐ์—ฌํ•œ ์‚ฌ๋žŒ์œผ๋กœ์„œ ๋ฟŒ๋“ฏํ–ˆ๋‹ค.

๋ฐœํ‘œ ์„ ์ •๋„ ํ›Œ๋ฅญํ–ˆ๋‹ค. ๊นŠ์ด ์žˆ๋Š” ๊ธฐ์ˆ ์  ๋‚ด์šฉ๋ถ€ํ„ฐ ์ธ๊ฐ„์ ์ธ ์ธก๋ฉด์—๋งŒ ์ดˆ์ ์„ ๋งž์ถ˜ ๊ฒƒ๊นŒ์ง€, ๊ทธ๋ฆฌ๊ณ  ๊ทธ ์ค‘๊ฐ„ ์–ด๋”˜๊ฐ€์— ์žˆ๋Š” ๊ฒƒ๋“ค๋„ ๋งŽ์•˜๋‹ค. ๋‚ด๊ฐ€ ๋ณธ ๋ชจ๋“  ๋ฐœํ‘œ์ž๋“ค์ด ์ž์‹ ์˜ ์ฃผ์ œ์— ์ง„์‹ฌ์œผ๋กœ ์• ์ •์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๋Š” ์ธ์ƒ์„ ๋ฐ›์•˜๊ณ , ๊ทธ๋ž˜์„œ ์ „์ฒด์ ์ธ ๋ถ„์œ„๊ธฐ๋„ ๋งค์šฐ ์ข‹์•˜๋‹ค!

(๋ฐœํ‘œ ๋…นํ™” ์˜์ƒ์€ media.ccc.de: NixCon 2025์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.)

๋ฐœํ‘œ์žฅ ๋ฐ–์—์„œ๋„ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค๊ณผ ์นœ๊ทผํ•˜๊ฒŒ ๊ต๋ฅ˜ํ•˜๋ฉฐ ํฅ๋ฏธ๋กœ์šด ๋Œ€ํ™”๋ฅผ ๋‚˜๋ˆด๋‹ค. Nix์— ๋Œ€ํ•œ ๊ด€์‹ฌ๊ณผ ๋„์ž…์ด ๋งŽ๋‹ค๋Š” ๊ฒƒ์„ ์ฒด๊ฐํ•  ์ˆ˜ ์žˆ์–ด ๋ณด๊ธฐ ์ข‹์•˜๋‹ค!

์ž์›๋ด‰์‚ฌ ์ค‘์‹ฌ์œผ๋กœ ์šด์˜๋˜๋Š” ํ–‰์‚ฌ๋กœ์„œ๋Š” ์ปจํผ๋Ÿฐ์Šค์˜ ์™„์„ฑ๋„๊ฐ€ ๋งค์šฐ ๋†’์•˜๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ฐœํ‘œ ์‚ฌ์ด์— ํ˜๋Ÿฌ๋‚˜์˜จ ๋ฉ‹์ง„ ๋ธŒ๋ ˆ์ดํฌ ์Œ์•…์€ NixCon์„ ์œ„ํ•ด ํŠน๋ณ„ํžˆ ์ œ์ž‘๋œ โ€œLavaโ€ by tonstr.studio์˜€๋‹ค. ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์›ฐ์ปด๋ฐฑ์—๋Š” NixCon์„ ์œ„ํ•ด ํŠน๋ณ„ํžˆ ์ œ์ž‘๋œ ๋‹คํฌ ์Šค์œ„์Šค ์ดˆ์ฝœ๋ฆฟ์ด ๋“ค์–ด ์žˆ์—ˆ๋‹ค(์•„๋ž˜ ์‚ฌ์ง„ ์ฐธ๊ณ ). ๋‚˜๋Š” ํ‰์†Œ ๋‹คํฌ ์ดˆ์ฝœ๋ฆฟ์„ ์ข‹์•„ํ•˜์ง€๋„ ์•Š๋Š”๋ฐ, ์ด๊ฑด ์ •๋ง ๋ง›์žˆ์—ˆ๋‹ค!

๋ชจ๋“  ๋„์šฐ๋ฏธ๋ถ„๋“ค๊ป˜ ๋‹ค์‹œ ํ•œ๋ฒˆ ๊ฐ์‚ฌ๋“œ๋ฆฌ๋ฉฐ, ๊ณง ๋‹ค์‹œ ๋ฐฉ๋ฌธํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๊ธฐ๋Œ€ํ•œ๋‹ค!

NixCon 2025 ์Šค์œ„์Šค ์ดˆ์ฝœ๋ฆฟ

์ด ๊ธ€์€ muse-spark-1.2-contributor ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•ด ๋ฒˆ์—ญํ–ˆ์Šต๋‹ˆ๋‹ค.

๋Œ“๊ธ€