index : archinstall32 | |
Archlinux32 installer | gitolite user |
summaryrefslogtreecommitdiff |
author | Daniel Girtler <blackrabbit256@gmail.com> | 2023-10-02 21:01:23 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-02 21:01:23 +1100 |
commit | 5c903df55fac449baae1e9cc23b04f6beeb55364 (patch) | |
tree | e9715ce5f82b57a34d9b0726973187730bca8cb0 /archinstall/lib/locale/locale.py | |
parent | a095e393d8517e99f8832c447fd2ef0902cb6ca6 (diff) |
-rw-r--r-- | archinstall/lib/locale/locale.py | 61 |
diff --git a/archinstall/lib/locale/locale.py b/archinstall/lib/locale/locale.py deleted file mode 100644 index 90f20cc6..00000000 --- a/archinstall/lib/locale/locale.py +++ /dev/null @@ -1,61 +0,0 @@ -from typing import Iterator, List - -from ..exceptions import ServiceException, SysCallError -from ..general import SysCommand -from ..output import error - - -def list_keyboard_languages() -> Iterator[str]: - for line in SysCommand("localectl --no-pager list-keymaps", environment_vars={'SYSTEMD_COLORS': '0'}): - yield line.decode('UTF-8').strip() - - -def list_locales() -> List[str]: - locales = [] - - with open('/usr/share/i18n/SUPPORTED') as file: - for line in file: - if line != 'C.UTF-8 UTF-8\n': - locales.append(line.rstrip()) - - return locales - - -def list_x11_keyboard_languages() -> Iterator[str]: - for line in SysCommand("localectl --no-pager list-x11-keymap-layouts", environment_vars={'SYSTEMD_COLORS': '0'}): - yield line.decode('UTF-8').strip() - - -def verify_keyboard_layout(layout :str) -> bool: - for language in list_keyboard_languages(): - if layout.lower() == language.lower(): - return True - return False - - -def verify_x11_keyboard_layout(layout :str) -> bool: - for language in list_x11_keyboard_languages(): - if layout.lower() == language.lower(): - return True - return False - - -def set_kb_layout(locale :str) -> bool: - if len(locale.strip()): - if not verify_keyboard_layout(locale): - error(f"Invalid keyboard locale specified: {locale}") - return False - - try: - SysCommand(f'localectl set-keymap {locale}') - except SysCallError as err: - raise ServiceException(f"Unable to set locale '{locale}' for console: {err}") - - return True - - return False - - -def list_timezones() -> Iterator[str]: - for line in SysCommand("timedatectl --no-pager list-timezones", environment_vars={'SYSTEMD_COLORS': '0'}): - yield line.decode('UTF-8').strip() |