NixOS: environment.sessionVariables vs environment.variables

Fark

environment.variablesenvironment.sessionVariables
Ne zaman aktifSistem boot’unda (PAM)Kullanıcı oturumu başladığında
KapsamıTüm kullanıcılar, sistem geneliLogin session’ına göre
DeğişiklikRebuild + reboot gerektirebilirLogout/login yeterli
Nerede set edilir/etc/environment/etc/profile.d/ veya PAM

Pratikte

Wayland compositor için ortam değişkenlerini sessionVariables ile tanımlamak daha doğru:

environment.sessionVariables = {
  MOZ_ENABLE_WAYLAND = "1";
  LIBVA_DRIVER_NAME = "radeonsi";
};

Bunlar display manager (SDDM) üzerinden başlayan Hyprland session’ında hazır olur.

environment.variables ise PATH gibi gerçekten sistem genelinde ve erken aşamada gerekli değişkenler için. Wayland değişkenlerini buraya taşırsan bazı session tipleri görmez.

Home Manager’da

home.sessionVariables ayrı bir seçenek — sadece o kullanıcı için ve ~/.profile üzerinden set edilir. Sistem NixOS modülündeki environment.sessionVariables’dan farklı.

EOF.