NixOS dağıtım incelemesi

Neredeyse 1 yıla yakındır kullandığım dağıtım hakkında bilgilendirici bir bloğu sonunda yazmaya cesaret edebildim, çünkü global kesimi de göz önüne alınca kullanıcı sayısı bayağı az. Neyse bilgilendirmeye başlayayım.

Bir dağıtımın çatalı mı?


Hayır. NixOS, adını aldığı Nix paket yöneticisinin üzerine kurulmuş bağımsız bir dağıtımdır.

Hangi paket yöneticilerini kullanıyor?

Varsayılan olarak Nix paket yöneticisi ile gelmekte, isteyen daha sonra başka bir paket yöneticisi (Flatpak, Snap, NUR) veya yardımcı (lix-pm) kurabilir.

Desteğe rahat erişim durumu nasıldır?


NixOS desteğe rahatça erişilebilecek bir dağıtım değildir maalesef. Topluluğu diğer dağıtımlara göre çok daha küçük olduğundan ve dağıtımı kullanabilmek için kendisine ait olan nix dilini azda olsa bilmek gerektiğinden kullanıcı çoğu durumda sorunu tek başına çözmek durumunda kalabilmekte. Yapay zekalar bu dilde yeterince eğitilmediğinden hata yapabilmekteler.


Kullanıcı dostu olabilecek yönleri


  • Öğrenme eğrisi oldukça dik bir dağıtım, bu yüzden alışılmadığı sürece kullanıcı dostu olabilecek yanı yok denilecek kadar azdır.
  • Eğer kullanıcı bu dağıtıma alışabilirse kendi kurduğu düzeni kaybetmeyeceğini bilir.
  • Geniş paket depoya sahip olduğundan bulamayacağı paketler çok azdır, bu yüzden kullanıcı aradığını rahatça bulabilir.
  • Eğer kullanıcı geliştirici ise kendisinin aldığı sonucun aynısını proje arkadaşının da almasını sağlayabilir.

Kullandığı Grafik Arayüzleri


Neredeyse bütün WM ve DE'ler paket yöneticisinde bulunmakta. Bazı deneysel sayılan DE/WM'ler paket yöneticisine alınmayabiliyor. pre-stable, stable olarak sunulan paketler Hydra üzerinde derlenip uygun görülürse repoya alınmakta.

Grafik kurucusunda bulunan DE'ler:
  • KDE Plasma
  • Gnome
  • Xfce
  • Mate
  • Budgie
  • Deepin DE
  • Pantheon
  • Cinnamon
  • LXQT
  • Enlightenment

Performans durumu


Öncelikle içinde gelen kernelin daha hafif olduğunu bilmenizi, duruma göre eksik bağımlılık var ise modül olarak konfigürasyona eklemeniz gerekebileceğinizi bilmeniz gerekir. Kernel diğerlerine göre daha hafif desem de normal kullanıcılar tarafından kullanılmayan modüller kaldırılmış durumda, kullanımı doğrudan etkilemezler.

Derlenen DE'lerin bir çoğu minimal bir düzene göre derlenir, yani bloat derdi çoğunlukta olmaz ancak duruma göre kaldırmak istediğiniz uygulamalar olabilir. Sizin kullanımınıza bağlıdır bu.

Hangi önyükleyiciyi kullanıyor?


Bu sizin bilgisayarınızın kullandığı BIOS moduna göre değişebilmekte. UEFI kullanan donanımlara çoğunlukla systemd-boot kurarken Legacy kullanan donanımlara grub2 kurmakta. Bu ikisi dışında kurduğu bir önyükleyici yoktur.

Zorluk derecesi: 8/10


NixOS zorluk bakımından çokça Gentoo ve Arch ile karşılaştırılıyor. Arch Linux, NixOS ile kıyaslandığında oldukça kolay kalıyor, çünkü Arch geleneksel dosyaları kullanıyor. NixOS ise kendisine özgü değiştirilemez bir dosya ağacını, uyumluluğun bozulmaması adına çokça symlink oluşturup geleneksel yollarmış gibi göstermekte. Siz nano/vim ile alıştığınız yerdeki dosyayı açmaya çalışsanız bile sizi raw dosyalar karşılayacaktır. Bunları düzenlemeniz için konfigürasyon yazmanız gerekir.

Dağıtım hakkında yanlış bilinen noktalar


  • Zamanında söylenmeye başlayan "tek dosya ile yönetiliyor" sözü flake sistemi çıktığından beri geçerliliğini kaybetmişti, kaldı ki tek dosya kullanmak okunulabilirliği azalttığından önerilmez. Bu yüzden tek dosyada konfigürasyonumu yöneteyim triplerine girmek hevesinizi kaçıracaktır.
  • Dağıtımda her paket bir derlemeyi tetiklemez. Nix paket yöneticisi pull request atılmış paketleri önce Hydra denen sistemi üzerinde derleyip geçerliliğini test eder, eğer geçerli ise oluşan cache ile ilgili paketi repoya katar. Siz kuracağınız paketi düzenlemezseniz Hydra'nın oluşturduğu paketi derlemeden kurarsınız.

Yeni kullanıcıya ne önerilir?


Her dağıtımı ilk seferinde kurduğumuzda kullandığımız uygulamaları kurmakla başlarız. Daha sonra yapay zekanın desteği ile ~/.config/* konumundaki konfigürasyonları nix dili üzerinden ufak ufak düzenlemeyi öğrenebilirsiniz, bu paylaşılabilirliği azda olsa anlayabilmeniz için faydalı olacaktır. Daha sonra ise Home-manager kullanmayı, ardından da temel flake kavramına başlayabilirsiniz.

Konfigürasyonları tek dosya ile yönetmek için savaş vermenize gerek yok, çünkü bu size faydadan çok zarar verir. Elinizdeki betiklerin neye hizmet ettiğini tek bir dosyada göreceğinizden zor gelecektir başta. Yazılım ile uğraşan biri iseniz tek bir dosyadan ilerlemenin gereksiz olacağını benden daha iyi biliyorsunuzdur.

NixOS Kullanılmaya değer mi?


Bu soru göreceli bir cevaba sahip, çünkü bu dağıtıma kalıcı olarak geçen kullanıcılar öncesinde sürekli uğraştıran hatalarla uğraşanlar oluyor. Tek seferde kurup kullanayım mantığı sürekli hata çözeceği dağıtıma kıyasla daha cazip gelebiliyor.

Diğer dağıtımlarda yaşanan hatalar dağıtım değiştirmeyi zorunlu kılmıyor aslında, yaşanan sorunların temelinde çoğunlukla paket uyuşmazlığı veya eksik derleme yatar. Bu durumda kullanıcı kullandığı dağıtıma Nix paket yöneticisini kurup önüne bakabilir. NixOS'un varsayılan olarak sunduğu şeyleri elle kurmak durumunda kalsa bile paylaşılabilir olan bu dağıtımı kendi rahat ortamınızda da deneyebileceğinizi unutmamanızda fayda var.

Kişisel yorumlar köşesi


Bu dağıtımı bir yıldan uzun bir süredir kullanıyorum, Linux dağıtımlarını ciddi bir şekilde incelemeye 2024'ün Eylül ayında başladım. Saf Arch kurup işi öğrenmeye başladım ama beni kesmeyince arkadaşıma 3 tane dağıtım adı yazdım ve kendisinin seçimi üzerine NixOS kurdum. İlk başta çok eğlenerek başlamıştım, yeni bir şeye başladığımdan ve bu işte tek başıma olduğumdan bir heyecan vardı üzerimde. Bu yüzden 3 bölüm yazdığım bir bloğum bulunmakta, normalde daha fazla girdi olması gereken bloğa ara vermemin sebebi dağıtıma daha fazla ağırlık verip daha iyi öğrenmek olması, ki bunu forumda açtığım rehberlerden azda olsa görebilirsiniz.

Bu dağıtıma yeni başlayacak olsaydım önceden de yaptığım gibi Gnome temalamaya çalışırdım. Gnome eklentilerini kurmak, Gnome'u debloat etmek çok şey katabilmekte.

Bunu yazdığım güne konuşmam gerekirse kendim baştan Niri, tuigreet ve quickshell modüllerini NixOS'ta kullanmak amacı ile geliştiriyorum. Dağıtımı bozmak gibi bir derdim olmadı şu ana kadar. Tabii hiç mi sorun yaşamadın derseniz yaşadım. Bilmeme rağmen unuttuğum bir şey vardı, EFI bölümü unmount edilmediği için bootloader kurulmuyordu, hazır dotfile kullanacaksanız live usb oluşturup chroot ile dağıtıma girin ve öyle kurun. Dotfileler flake üzerine kurulur ve içinde farklı bir bootloader sürümünün kilitli olduğundan normal bir şekilde kurmaya çalıştığınızda bootloader kurulumu başarısız olur ve dotfilesi kullanamazsınız.

İşletim sistemini yazılım dili ile yönettiğimizden ufak şeyleri gözden kaçırabiliyoruz, bunun için ufakta olsa önlemler alınabilir. Ben nano kullandığımdan nanonun highlighting özelliği eksik simgeleri koymam için renkle bile olsa gösteriyor. Nano yerine bir şey arıyorsanız şu anlık denememiş olsam bile çeşitli önemleri içerdiğini düşündüğüm NixVIM'ide deneyebilirsiniz. Vim kullanıcı iseniz denemenizden zarar gelmeyecektir. NixVIM'in kullanıcıya nasıl yardım ettiğini kullanınca öğreniriz artık.

Bitiriş​


Mikrofonu başka bir dağıtıma kadar bırakıyorum, bu dağıtımı sizlere umarım güzelce tanıtabilmişimdir. Aklınıza takılanları tartışabiliriz. İyi forumlar dilerim.
  • Beğen
İfadeler: Bayram Tempest

Yorumlar

Gösterilecek yorum bulunamadı.

Blog girdisi detayları

Ekleyen
521431
Okuma süresi
4 dakika okuma
Görüntüleme
40
Son güncelleme

Yazılım kategorisindeki diğer girdiler

521431 adlı kullanıcının diğer girdileri

Bu girdiyi paylaş

Geri
Yukarı