index : archinstall32 | |
Archlinux32 installer | gitolite user |
summaryrefslogtreecommitdiff |
-rw-r--r-- | archinstall/lib/profile/profiles_handler.py | 33 |
diff --git a/archinstall/lib/profile/profiles_handler.py b/archinstall/lib/profile/profiles_handler.py index 74c21824..7e6af3d1 100644 --- a/archinstall/lib/profile/profiles_handler.py +++ b/archinstall/lib/profile/profiles_handler.py @@ -52,9 +52,9 @@ class ProfileHandler: def parse_profile_config(self, profile_config: Dict[str, Any]) -> Optional[Profile]: """ - Deserialize JSON configuration + Deserialize JSON configuration for profile """ - profile = None + profile: Optional[Profile] = None # the order of these is important, we want to # load all the default_profiles from url and custom @@ -97,29 +97,26 @@ class ProfileHandler: if main := profile_config.get('main', None): profile = self.get_profile_by_name(main) if main else None - valid: List[Profile] = [] + if not profile: + return None + + valid_sub_profiles: List[Profile] = [] + invalid_sub_profiles: List[str] = [] details: List[str] = profile_config.get('details', []) - if details: - valid = [] - invalid = [] + if details: for detail in filter(None, details): - if profile := self.get_profile_by_name(detail): - valid.append(profile) + if sub_profile := self.get_profile_by_name(detail): + valid_sub_profiles.append(sub_profile) else: - invalid.append(detail) + invalid_sub_profiles.append(detail) - if invalid: - info('No profile definition found: {}'.format(', '.join(invalid))) + if invalid_sub_profiles: + info('No profile definition found: {}'.format(', '.join(invalid_sub_profiles))) custom_settings = profile_config.get('custom_settings', {}) - for profile in valid: - profile.set_custom_settings( - custom_settings.get(profile.name, {}) - ) - - if profile is not None: - profile.set_current_selection(valid) + profile.set_custom_settings(custom_settings) + profile.set_current_selection(valid_sub_profiles) return profile |