Files
Erkan IŞIK 1e920e0717 docs: update README, CHANGELOG for slides/ restructure and binary refactor
- README.md: add slides/ directory, src/bin/slides_test.rs, src/lib.rs
  to project tree; add slides_test usage example
- README_en.md: same changes in English
- CHANGELOG.md: add v4.0.5 entry (slide migration, slides_test, rsync
  progress refactor, auto-install CLI output, edit dialog fixes)
- CHANGELOG_en.md: same in English
2026-07-10 02:05:35 +03:00

200 lines
9.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Changelog — [English](CHANGELOG_en.md)
## [4.0.5] — 2026-07-10
### Added
- `slides/slides_tr.toml`, `slides/slides_en.toml` — dil bazlı slayt içerik dosyaları (`[icons]` eşlemesi yerine doğrudan dosya yolu)
- `src/bin/slides_test.rs` — bağımsız slayt gösterisi test ikilisi (arg: `[desktop] [lang]`)
- `default-run = "yali-rs"` (`Cargo.toml`) — `cargo run` belirsizliği giderildi
### Changed
- Slayt görselleri `assets/*.png``slides/img/` altına taşındı
- `branding.toml` / `branding_tr.toml` / `branding_en.toml` içindeki `[slides]` bölümü kaldırıldı; içerik `slides/` dizinindeki dil dosyalarına taşındı
- `branding.rs::load_for_lang()` — slaytları `slides/slides_{lang}.toml`'den yükler (fallback: `slides/slides.toml`)
- `slideshow.rs``slide.icon` doğrudan dosya yolu içeriyorsa `file://` URI'sine çevirir (artık `[icons]` eşlemesi gerekmez)
- `CopyFilesJob` — rsync çıktı formatı `--info=progress2``--out-format=%n`, ilerleme `find` ile toplam dosya sayısı üzerinden hesaplanır
- Otomatik kurulum CLI çıktısına alt ilerleme ve dosya adı bilgisi eklendi
### Fixed
- Edit diyalog penceresinin her frame'de büyümesi (`default_size` + min/max genişlik)
- TextEdit alanı `available_width * 0.90` yerine `desired_width()` ile düzgün genişlik
- `cargo run -- --demo` belirsizliği (çift ikili)
- `locales/tr.toml` "Hoş Geldiniz12" yazım hatası
---
## [4.0.4] — 2026-06-25
### Added
- Kullanıcı adı doğrulama fonksiyonu `validate_username` (detaylı hata mesajları döndürür)
- Yasaklı sistem kullanıcı adları listesi (root, daemon, bin, sys, vb.)
- Türkçe karakter dönüşümleri büyük harfleri de kapsayacak şekilde genişletildi (Ş, Ğ, İ, Ö, Ü, Ç)
- Locale dosyalarına yeni kullanıcı adı doğrulama anahtarları (username_too_long, username_forbidden, username_invalid_start, username_invalid_chars)
- UsersStep struct'ına `autologin` alanı eklendi
### Changed
- Kullanıcı adı, şifre doğrulama ve hostname input'ları için check/fail iconları input'un yanına alındı
- Hata mesajları inputların altında gösteriliyor (username doğrulama, şifre eşleşme)
- Önyükleyici (bootloader) sayfası form düzeni users sayfasındaki gibi güncellendi (Frame, form_label, form_input_text/password)
- Display manager adımı adım listesinden kaldırıldı (ISO'lar tek masaüstü ile geliyor)
- Autologin özelliği display manager adımından users adımına taşındı
- Display manager yapılandırması otomatik hale getirildi (desktop_environment otomatik tespit ediliyor)
- SDDM/GDM yapılandırmasında masaüstü ortamı seçimi kullanılıyor (xfce.desktop, gnome.desktop vb.)
- Autologin varsayılan değeri false olarak değiştirildi
### Fixed
- Dark modda sidebar metin renginin kaybolması sorunu (SIDEBAR_TEXT beyaz olarak ayarlandı)
- derive_username fonksiyonunda yanlış karakter (ā → ğ) düzeltildi
- unused_mut warning (name değişkeni)
- unused variable warning (err değişkeni)
- unused import warning (DisplayManagerStep)
---
## [4.0.3] — 2026-06-23
### Added
- Aramalı klavye düzeni/varyant seçici: egui `TextEdit` + `Area` popup ile özel implementasyon
- `color_from_hex(hex: u32)` yardımcısı (`combobox_stil.rs`)
- `layout_buf`, `variant_buf` alanları (`KeyboardStep`)
### Changed
- `egui-dropdown` bağımlılığı kaldırıldı (artık kullanılmıyor)
- Düzen/Varyant seçiciler yan yana → alt alta, etiket genişliği en uzun etikete göre eşitlendi
- Popup öğe yüksekliği 28px → 32px, gradient arkaplan (`draw_gradient_bg`) ile `combobox.rs` stilinde
- `DROPDOWN_TEXT_COLOR` kırık beyaz → tam beyaz (`color_from_hex(0xFFFFFF)`)
- Tüm renk sabitleri hex formatına çevrildi (`color_from_hex`)
### Fixed
- Popup ilk açılışta eski seçim filtresiyle tüm öğelerin görünmemesi — odaklanınca tampon temizleniyor
- `t!()` dönüş tipi `Cow<str>``String` uyumsuzluğu (`keyboard.rs`)
### Changed
- Sürgü maksimum değeri artık diskteki kullanılabilir alan kadar (diğer bölümler hariç)
- Düzenleme modunda seçili bölümün kapasitesi sürgü aralığına dahil edildi
- `form_input_text` boyut alanı doğrudan `add_size_str`'e bağlandı, yanında formatlı MB gösterimi eklendi
- Boyut etiketi artık `"123 MB"` yerine `"123.456 MB"` formatında (parse edilebilen değerlerde)
### Fixed
- Boyut input alanına yazılan değer `add_size_str`'e geri yazılmıyordu — text edit salt okunur kalıyordu
---
## [4.0.1] — 2026-06-19
### Added
- `c_root_bg()` tema fonksiyonu
- `show_root_password`, `show_root_password_confirm` alanları (`UsersStep`)
- `form_input_text` / `form_input_password`'a `Frame` sarmalı ve `.frame(false)`
### Changed
- `form_input_text`: Frame içine alındı, stroke/fill/rounding eklendi, yükseklik 32→10
- `form_input_password`: SVG göz ikonları (emoji yerine), Frame sarmalı, `override_text_color`
- Disk grid seçim renkleri `theme::c_*()` → sabit `(237,237,224,1)`
- Disk listesi header ve sütun başlıkları: `Align::Center``Align::LEFT`, `vertical_centered` kaldırıldı
- Root şifre alanları raw `TextEdit``form_input_password` (göz ikonu + frame ile)
- Kullanıcı formu Frame rengi `theme::c_bg_widget()``(240,243,198)`
- Manuel disk listesinde marka/model etiketi sıralaması değiştirildi
### Fixed
- `users.rs:154``Color32` import hatası (missing `egui::` prefix)
---
## [4.0.0] — 2026-06-18
### Added
- `CHANGELOG.md`
- `src/ui/combobox.rs` — ComboBox yardımcıları (`show_combo_box`, `selectable_value`, `selectable_value_custom`, `draw_gradient_bg`)
- `src/ui/combobox_stil.rs` — ComboBox görsel sabitleri ve `apply_visuals()`
- `src/steps/location.rs` — Bölge/zaman dilimi seçimi adımı
- `src/steps/network.rs` — Ağ yapılandırma adımı
- `src/steps/rescue.rs` — Kurtarma modu
- `xkbcommon` bağımlılığı
- Klavye görseli: XKB keymap → egui çizim (`compile_layout`, `draw_layout`, `keysym_to_label`)
- ISO105 tuş pozisyon eşlemesi (function tuşları, numpad, navigasyon dahil)
- Her tuşta tek karakter gösterimi (büyük harf tercihli)
### Changed
- Klavye görseli: KLE JSON indirme/parse → xkbcommon ile doğrudan keymap derleme
- `Cargo.toml`: `ureq`, `serde_json` kaldırıldı; `xkbcommon` eklendi
- ComboBox stilleri `theme.rs``combobox_stil.rs` taşındı
- `secondary_button` gradient renklerine açıklama satırları eklendi
- `draw_gradient_bg``combobox_stil.rs` taşındı
- Tüm ComboBox kullanımları `theme::show_combo_box` / `theme::selectable_value` ile güncellendi
- Klavye adımı (`keyboard.rs`): `ScrollArea`+`selectable_label` → ComboBox
- `TextEdit::multiline` arka planı per-widget `Frame::group` ile yapıldı
- `locale/` dosyaları güncellendi
- Font boyutları büyütüldü (label 9→12, secondary 7→9)
### Removed
- `ureq`, `serde_json` bağımlılıkları
- `assets/keyboards/KLE_*.json` önbellek dosyaları
- `assets/keyboards/KB_*.svg` dosyaları
- Eski klavye SVG yükleme kodu
- KLE JSON download/cache mantığı
- Demo sayfasındaki eski buton örnekleri
### Fixed
- `set_style`/`set_visuals` sırası: `set_style` önce çağrılıyor
- Bölge/zaman dilimi etiketleri dikey hizalandı
- Klavye adımında `on_enter` ilk render'da çağrılmama sorunu — layout `show()` içinde de initialize edilir
- `xkbcommon::Keycode` iterasyonu (`raw()` ile dönüşüm)
- `None::<&str>``None::<String>` tip uyuşmazlığı
---
## [4.0.0] — 2026-06-06
### Added
- Kurtarma modu (rescue step)
- Ağ yapılandırma adımı (NetworkManager/Wicd)
- Netinstall adımı
- LVM ve LUKS şifreleme desteği
- Demo modu (`--demo`)
- Otomatik kurulum (`--auto-install answer.toml`)
- `rust-i18n` ile çoklu dil desteği (Türkçe, İngilizce)
- Gradient butonlar (`gradient_button`, `secondary_button`)
- Dil seçici (bayrak + etiket)
- SVG yükleme desteği (`egui_extras` + `image`)
- Slayt gösterisi (branding.toml ile yapılandırılabilir)
- Adım listesi sidebar'da (işlenen adımlar yeşil ✔️)
- Anlık kurulum dosyası takibi
- Gelişmiş bölümleme UI'ı (kullanım çubuğu, LUKS göstergesi, mount-point seçici)
### Changed
- `pspec.xml`/`actions.py` → Cargo tabanlı derleme
- `comar`/`mudur` çağrıları`zbus` D-Bus ve doğrudan komut çalıştırma
- Shell tabanlı şifre yönetimi → güvenli stdin piping (LUKS/GRUB)
- Kullanıcı adı otomatik türetme (gerçek isim → sistem kullanıcı adı)
- Hostname doğrulama/sanitizasyon
- Temizlik işlemleri: kullanıcı silme, havuz yönetimi, önyükleme dizini temizliği
- Rsync komutu dinamik hariç tutma ile
- Versiyon 4.0.1 → 4.0.0 (Cargo.toml uyumu)
### Fixed
- GRUB şifre yazma güvenliği
- Dracut/Mkinitcpio LVM modülü ekleme
- EFI bölümü algılama ve mount etme
- Şifre gücü göstergesi renkleri
- Otomatik bölümleme (LVM/LUKS sıralaması)
---
## [0.1.0] — 2026-05-20
### Added
- İlk kararlı sürüm
- Proje iskeleti (egui + wgpu)
- Adım tabanlı kurulum sihirbazı
- Otomatik disk bölümleme (GPT/MBR)
- Kullanıcı oluşturma (şifre gücü kontrolü dahil)
- Bootloader yapılandırması (GRUB)
- Görüntü yöneticisi seçimi
- Özet ekranı
- Temel renk teması (açık/koyu)
- Özelleştirilebilir branding (branding.toml)
- Kurtarma amaçlı hata ekranı
- İşlem kuyruğu (JobQueue / async task yönetimi)
- YALI serileştirme (installer state save/load)