From 908c7b8cc0a804e9522d93fcf0dc71034c53ccdb Mon Sep 17 00:00:00 2001 From: Daniel Date: Fri, 3 Dec 2021 07:17:51 +1100 Subject: Add simple menu for better UX (#660) * Add simple menu for better UX * Add remove external dependency * Fix harddisk return value on skip * Table output for partitioning process * Switch partitioning to simple menu * fixup! Switch partitioning to simple menu * Ignoring complexity and binary operator issues Only in simple_menu.py * Added license text to the MIT licensed file * Added in versioning information * Fixed some imports and removed the last generic_select() from user_interaction. Also fixed a revert/merged fork of ask_for_main_filesystem_format() * Update color scheme to match Arch style better * Use cyan as default cursor color * Leave simple menu the same Co-authored-by: Daniel Girtler Co-authored-by: Anton Hvornum Co-authored-by: Dylan M. Taylor --- profiles/desktop.py | 4 +--- profiles/i3.py | 3 ++- profiles/server.py | 8 ++++++-- 3 files changed, 9 insertions(+), 6 deletions(-) (limited to 'profiles') diff --git a/profiles/desktop.py b/profiles/desktop.py index b9174ac5..389544df 100644 --- a/profiles/desktop.py +++ b/profiles/desktop.py @@ -1,5 +1,4 @@ # A desktop environment selector. - import archinstall is_top_level_profile = True @@ -44,8 +43,7 @@ def _prep_function(*args, **kwargs): other code in this stage. So it's a safe way to ask the user for more input before any other installer steps start. """ - - desktop = archinstall.generic_select(__supported__, 'Select your desired desktop environment: ', allow_empty_input=False, sort=True) + desktop = archinstall.Menu('Select your desired desktop environment', __supported__, skip=False).run() # Temporarily store the selected desktop profile # in a session-safe location, since this module will get reloaded diff --git a/profiles/i3.py b/profiles/i3.py index 39977b28..24956209 100644 --- a/profiles/i3.py +++ b/profiles/i3.py @@ -26,7 +26,8 @@ def _prep_function(*args, **kwargs): """ supported_configurations = ['i3-wm', 'i3-gaps'] - desktop = archinstall.generic_select(supported_configurations, 'Select your desired configuration: ', allow_empty_input=False, sort=True) + + desktop = archinstall.Menu('Select your desired configuration', supported_configurations, skip=False).run() # Temporarily store the selected desktop profile # in a session-safe location, since this module will get reloaded diff --git a/profiles/server.py b/profiles/server.py index 731d2005..c4f35f7b 100644 --- a/profiles/server.py +++ b/profiles/server.py @@ -27,8 +27,12 @@ def _prep_function(*args, **kwargs): before continuing any further. """ if not archinstall.storage.get('_selected_servers', None): - selected_servers = archinstall.generic_multi_select(available_servers, "Choose which servers to install and enable (leave blank for a minimal installation): ") - archinstall.storage['_selected_servers'] = selected_servers + servers = archinstall.Menu( + 'Choose which servers to install, if none then a minimal installation wil be done', available_servers, + multi=True + ).run() + + archinstall.storage['_selected_servers'] = servers return True -- cgit v1.2.3-70-g09d2