refactor: split into core/backend/app crates, GNOME-style pages - #3
Merged
Conversation
leandromqrs
commented
Jul 26, 2026
Member
- split the monolithic sirius-installer into sirius-core (domain and wire types), sirius-backend (libreadymade, NetworkManager, UDisks2, pkexec runner), sirius-app (Relm4/GTK wizard) and a thin sirius-installer launcher; libreadymade pinned to the fork revision carrying the Keyboard postinstall module and bootc finalize fixes
- timezone page: local vector map rendered via glycin, GNOME Maps-style search suggestions (opaque popover, direct-child list, arrow-key cursor without focus stealing), auto-detected zone pinned to the city nearest the tzdb reference point, selection shown as the pin tooltip
- language page: GNOME Initial Setup-style chooser over every displayable system locale via gnome-desktop FFI, common languages pinned ahead of a More... row, runtime UI retranslation through gettext
- keyboard page: locale-pinned layouts ahead of a More... row, activation of the selected row confirms, live session source update
- gettext i18n with pt_BR catalog, RPM packaging/CI, Vagrant test VM
- bump version to 1.0.0
- split the monolithic sirius-installer into sirius-core (domain and wire types), sirius-backend (libreadymade, NetworkManager, UDisks2, pkexec runner), sirius-app (Relm4/GTK wizard) and a thin sirius-installer launcher; libreadymade pinned to the fork revision carrying the Keyboard postinstall module and bootc finalize fixes - timezone page: local vector map rendered via glycin, GNOME Maps-style search suggestions (opaque popover, direct-child list, arrow-key cursor without focus stealing), auto-detected zone pinned to the city nearest the tzdb reference point, selection shown as the pin tooltip - language page: GNOME Initial Setup-style chooser over every displayable system locale via gnome-desktop FFI, common languages pinned ahead of a More... row, runtime UI retranslation through gettext - keyboard page: locale-pinned layouts ahead of a More... row, activation of the selected row confirms, live session source update - gettext i18n with pt_BR catalog, RPM packaging/CI, Vagrant test VM - bump version to 1.2.0
The new sirius-app crate links libgnome-desktop-4 and libfontconfig directly (keyboard/language FFI) and binds gweather4 through gweather-sys (timezone page); build.rs also needs msgfmt from gettext. Verified with cargo check --workspace in a clean fedora:latest container.
…in tests gnome_get_all_locales enumerates the locales installed on the system (/usr/lib/locale, locale -a); the fedora CI image ships only the C locales via glibc-minimal-langpack, leaving the language chooser empty. Install glibc-all-langpacks in both jobs. The image also restricts installed translations to C/en_US, so native language and country names fall back to English; make the locale tests assert structure instead of exact translated strings, and skip the ja_JP search case when no CJK font is installed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.