NixOS, klasik Linux dağıtımlarından tamamen farklı bir yaklaşım sunuyor. Geleneksel sistemlerde yaptığın her kurulum, her ayar değişikliği zamanla karmaşık bir geçmişe dönüşürken, NixOS bu karmaşayı ortadan kaldırmayı hedefliyor. Sistemini “yapılan işlemlerle” değil, “tanımladığın haliyle” yönetiyorsun .
Klasik Linux neden karmaşık hale geliyor
Standart Linux dağıtımlarında süreç oldukça tanıdık:
- Paket yükle (apt, dnf vs.)
- Konfigürasyon dosyalarını değiştir
- Servisleri aç/kapat
- Zamanla ne yaptığını unut
Bu yöntem ilk başta esnek görünse de uzun vadede ciddi bir sorun yaratıyor. Çünkü:
- Aynı sistemi tekrar kurmak zor
- Eski ayarları takip etmek imkansız
- Sistem zamanla “kirleniyor”
Yani aslında her Linux kurulumu, kullanıcının yaptığı tüm değişikliklerin birikmiş hali oluyor.
NixOS bu problemi nasıl çözüyor
NixOS’un en büyük farkı “bildirimsel yapılandırma” yaklaşımı.
Yani sisteme şunu demiyorsun:
“Şu paketi kur, bunu aç, bunu değiştir”
Bunun yerine şunu diyorsun:
“Benim sistemim böyle olacak”
Ve bunu tek bir dosyada tanımlıyorsun:
- Paketler
- Kullanıcılar
- Servisler
- Ağ ayarları
- Güvenlik duvarı
Hepsi tek bir yapılandırma dosyasında yer alıyor.
Tek komutla sistem kurma
Örnek basit ama güçlü:
Docker kurmak istiyorsun → tek satır ekliyorsun
Sonra şu komutu çalıştırıyorsun:
- nixos-rebuild switch
Gerisini sistem hallediyor:
- Bağımlılıkları indirir
- Servisleri kurar
- Yapılandırmayı uygular
Yani sen “nasıl yapılacağını” değil, sadece “ne istediğini” söylüyorsun.
Sistemin tamamı kod haline geliyor
NixOS’un en güçlü taraflarından biri de burada:
Sistemini bir kod deposu gibi yönetebiliyorsun.
- Git ile versiyonlayabilirsin
- GitHub’a yükleyebilirsin
- Başka makinede aynısını kurabilirsin
Aynı dosyayı kullanırsan → aynı sistem oluşur
Bu, DevOps dünyasında kullanılan “infrastructure as code” yaklaşımının bireysel bilgisayara uygulanmış hali.
Geri alma sistemi inanılmaz güçlü
NixOS’un en çok sevilen özelliklerinden biri:
Her değişiklik bir “nesil” olarak kaydedilir.
Yani:
- Bir güncelleme yaptın ve sistem bozuldu
- Restart attın
- Eski sürümü seçtin
Ve sistem anında eski haline döndü.
Saatlerce sorun çözmeye gerek yok.
Home Manager ile tam kontrol
NixOS sadece sistemle sınırlı değil.
Home Manager ile:
- Terminal ayarların
- Editör yapılandırmaların
- Dotfile’ların
bile aynı şekilde tanımlanabiliyor.
Yani sadece sistem değil, kullanıcı deneyimin bile taşınabilir hale geliyor.
Dezavantajları yok mu
Var, hem de ciddi:
- Öğrenme eğrisi çok yüksek
- Nix dili alışması zor
- Klasik Linux alışkanlıkları işe yaramıyor
- Dokümantasyon bazen yetersiz
Özellikle yeni başlayanlar için zorlayıcı olabilir.
Kimler için mantıklı
NixOS herkese göre değil ama şu kişiler için mükemmel:
- Geliştiriciler
- Sistemle sürekli oynayanlar
- Aynı kurulumu birden fazla cihazda isteyenler
- “Temiz ve kontrol edilebilir sistem” isteyenler
Bakış açısını değiştiriyor
NixOS’un en büyük etkisi teknik değil, zihinsel:
Bilgisayarını artık “yönetilen” bir şey olarak değil,
“tanımlanan” bir şey olarak görmeye başlıyorsun.
Bu fark küçük görünür ama Linux deneyimini tamamen değiştirir.
Bir süre kullandıktan sonra klasik Linux’a dönmek, gerçekten eksik hissettirebilir.