From 4b4473632df0fbc92e85f6e32f6e940ad4fb6fa7 Mon Sep 17 00:00:00 2001 From: Werner Llácer Date: Mon, 28 Mar 2022 13:55:15 +0200 Subject: Subvolume User Interface (#1032) * Deflate the user interactions file * Fix flake8 * GlobalMenu split from selection_menu.py * Upgrades to ListManager: Can now show an empty list if there is no null action. More information to the user at the header * Put only_hd.py and swiss.py to use new config printing mechanism Solved a couple of bugs at ListManager adding a str and a DeferredTranslation ManageUser was missing an self argument in _check ... * Create list and menus to manage subvolumes in btrfs partitions Needed to modify manage_new_and_existing_partitions Added a new parameter filter to select_partition, to allow filtering there * Update internationalization strings Co-authored-by: Daniel Girtler Co-authored-by: Anton Hvornum --- examples/only_hd.py | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'examples/only_hd.py') diff --git a/examples/only_hd.py b/examples/only_hd.py index 76a616db..b3379601 100644 --- a/examples/only_hd.py +++ b/examples/only_hd.py @@ -14,7 +14,7 @@ class OnlyHDMenu(archinstall.GlobalMenu): mandatory_list = [] options_list = ['harddrives', 'disk_layouts', '!encryption-password','swap'] mandatory_list = ['harddrives'] - options_list.extend(['install','abort']) + options_list.extend(['save_config','install','abort']) for entry in self._menu_options: if entry in options_list: @@ -27,15 +27,27 @@ class OnlyHDMenu(archinstall.GlobalMenu): self.option(entry).set_enabled(False) self._update_install_text() + def mandatory_lacking(self) -> [int, list]: + mandatory_fields = [] + mandatory_waiting = 0 + for field in self._menu_options: + option = self._menu_options[field] + if option.is_mandatory(): + if not option.has_selection(): + mandatory_waiting += 1 + mandatory_fields += [field,] + return mandatory_fields, mandatory_waiting + def _missing_configs(self): """ overloaded method """ def check(s): return self.option(s).has_selection() - _, missing = self.mandatory_overview() + missing, missing_cnt = self.mandatory_lacking() if check('harddrives'): if not self.option('harddrives').is_empty() and not check('disk_layouts'): - missing += 1 + missing_cnt += 1 + missing += ['disk_layout'] return missing def ask_user_questions(): -- cgit v1.2.3-70-g09d2