* Edit text menu
* Fix alignment
* Scroll functionality
* Fix flake8
* Migrate locales menu
* Fix language translation
* Fix interrupt
* Fix flake8
* Edit mode preset
* Convert print to tui prints
* Fix mypy
* Fix cycling through long menu
* Fix profile view
* Fix scrolling
* Fix scrolling
* Fix mypy
* Fix swiss script
* Display asterisk for passwords
* Corrected a variable usage in the local mirror parsing
* Made sure that curses menu selection on mirrors use url object from mirror.url instead of the class instance
* Fixed mypy type on mirror list
---------
Co-authored-by: Torxed <torxed@archlinux.org>
* Add `get_unique_path_for_device` to `DeviceHandler`
* Fix Limine bootloader deployment
* Fail if UKI is enabled with Limine
* Support more configuration options with Limine
* Fix linter errors
* Fix boot partition fs_type check for Limine
* global_menu: wrap invalid config error message with the translation shim
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* validate_bootloader: add a caller note
XXX: The caller is responsible for wrapping the string with the translation
shim if necessary.
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
---------
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* installer: add Limine bootloader
Limine is a modern, advanced, portable, multiprotocol bootloader.
[Limine GitHub](https://github.com/limine-bootloader/limine)
[Limine Arch Wiki](https://wiki.archlinux.org/title/Limine)
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* limine: add UEFI support
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* global_menu: check filesystem and bootloader compatibility
Before on install, only missing configurations were checked. This commit
introduces bootloader validatity checks on install which verify if the
selected filesystem is compatiable with the selected bootloader (for
example, it is not possible to boot limine from BTRFS).
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* misc: fix the return value of `_validate_bootloader`
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* global_menu: make `mypy` happy
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* misc: make `flake8` happy
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* limine: upgrade to v5
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* limine: install packman hooks
Create the BIOS and UEFI pacman hooks so limine gets auto deployed on
update.
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* installer::limine: fix broken root UUID
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* docs: add a note saying its in beta
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* install_limine: use `safe_fs_type`
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
---------
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>