NixOS: Siber-Kalkan, pnpm Göçü ve Sıfır Entropi Mimarisi

Modern web ekosistemi her geçen gün daha da şişiyor. WordPress’in hantallığından kaçıp, NixOS’un o mükemmel deklaratif dünyasına (Sıfır Entropi) sığındığımda, bazı şeyleri geride bırakmam gerektiğini biliyordum. Ancak asıl tehlike geride bıraktıklarım değil, kullanmaya mecbur bırakıldığım “standart” araçlardı.

Her şey, Mayıs 2026’da npm ekosistemini vuran devasa bir tedarik zinciri saldırısı haberiyle başladı: “Mini Shai-Hulud”.

Saldırganlar, @tanstack gibi milyonlarca kez indirilen paketleri ele geçirmiş ve postinstall scriptleri üzerinden sistemlere sızmaya başlamıştı. Hedeflerinde geliştiricilerin AWS, GitHub ve SSH token’ları vardı.

Bu kriz anı, benim için sadece bir “yama yapma” meselesi değil, tüm mimariyi “Sistem Zanaatkarı” felsefesiyle yeniden tasarlama fırsatıydı. İşte sistemi nasıl zırhlandırdığımın anatomisi:

1. Kanamayı Durdurmak: NixOS ile İşletim Sistemi Seviyesinde Ambargo

Zafiyet npm install sırasında izinsiz çalışan scriptlerden geliyordu. Zayıf ve silinmeye müsait .npmrc dosyalarına bel bağlamak yerine kalkanı doğrudan projemin kabuğuna, shell.nix dosyasına gömdüm:

export NPM_CONFIG_IGNORE_SCRIPTS=true
export PNPM_CONFIG_IGNORE_SCRIPTS=true

Bu hamle, işletim sistemi seviyesinde bir tahakkümdü. Ortama girdiğim an, paket yöneticisinin zararlı script çalıştırma yetkisi elinden alınıyordu.

2. Kanser Hücrelerini Söküp Atmak: npm’den pnpm’e Siber Göç

Kanamayı durdurmuştum ama npm’in node_modules klasörünü “düzleştiren” (flattening) yapısı, paketlerin birbirinin dosyalarına izinsiz erişmesine olanak tanıyan bir “Phantom Dependency” yuvasıydı.

Buna son verip, sistemi pnpm motoruna taşıdım:

  1. Katı İzolasyon (Strict Symlinking): Her paket sadece açıkça beyan ettiği koda erişebilir hale geldi. İzinsiz misafirlere kapılar kapandı.
  2. Sıfır Güven (Zero Trust): Script yetkilerini sadece projenin kalbi olan esbuild ve sharp derleyicilerine özel olarak (onlyBuiltDependencies) verdim. Diğer tüm paketler kalıcı olarak karantinaya alındı.
  3. Donanım Uyumu: Patriot Viper VP4300 Lite NVMe diskimin Gen4 hızını, pnpm’in tekil global store (hard-link) yapısıyla birleştirdiğimde gereksiz I/O operasyonları bitti ve derleme süreleri saniyelere indi.

3. Hedefi Büyütmek: İstemci Zırhı ve Kontrollü Deploy

Mimarîyi yerelde mükemmel hale getirdikten sonra gözümü dışarıya çevirdim:

Sonuç

Bir krizle başlayan bu süreç, beni tamamen kapalı ve askeri disiplinle çalışan bir “Sıfır Entropi” mimarisine ulaştırdı. Artık sistem bir dosya yığını değil; kilitli, şeffaf ve bilinçli olarak yönetilen bir “Dijital Karargah”.

Sistem mühürlendi. Sıradaki hedef nedir?

EOF.