nixos-hyprland-lua — Hyprland Lua Konfigürasyonu
Hyprland 0.55 ile gelen native Lua API’yi tam olarak kullanan NixOS flake modülü. Kararsız C++ eklentileri tamamen terk edilerek, “Sovereign” ve “Zero Bloat” felsefesiyle tüm sistem native bir altyapıya taşınmıştır.
Mimari: Zero Bloat
Split-repo tasarımı devam etmektedir. nixos-hyprland-lua Lua konfigürasyon katmanını ve servisleri yönetirken, nixos-config sadece bu modülü import eder.
Bu repo:
lua/—binds.lua,autostart.lua, pencere kuralları ve native Mission Control (Overview) mantığı.configs/— hyprlock, hypridle yapılandırmaları.quickshell/— Sovereign Dashboard UI; sistem durumunu, medya oynatıcıları (MPRIS) ve donanım bileşenlerini yöneten merkezi QML tabanlı kontrol paneli.
Önemli Değişiklik: Hyprspace gibi C++ eklentilerinde yaşanan sürekli kırılmalar nedeniyle, tüm çalışma alanı ve görev yönetimi eklentisiz, saf Lua scriptleri ve IPC üzerinden yeniden kurgulanmıştır.
Native Lua API Notu
Hyprland 0.55 sonrası exec_cmd + hyprctl dispatch çifti yerine doğrudan hyprland.hs.keybind ve hyprland.hs.dispatch API’leri kullanılmaktadır. Bu sayede IPC gecikmeleri sıfırlanmış ve animasyon/pencere yönetim tepkiselliği maksimuma çıkarılmıştır.
Sovereign Dashboard (Quickshell)
Dağınık Waybar, SwayNC, Wofi vb. bileşenler yerine, tamamı Quickshell (QML) ile yazılmış tek, merkezi bir kontrol paneli. State yönetimi DBus ve Hyprland IPC üzerinden asenkron olarak sağlanmakta olup, MPRIS gibi stabilite sorunları yaratan servisler için rate-limiting ve akıllı property takibi entegre edilmiştir.
Güncelleme Akışı
# nixos-hyprland-lua reposunda değişiklik yapıldıktan sonra:
just lua-deploy "commit mesajı"
# → Codeberg'e push + nixos-config flake.lock güncelleme + otomatik rebuild