From 1bff423195c0890e9fa3d8d2cf40796873f7adc7 Mon Sep 17 00:00:00 2001 From: Anton Hvornum Date: Wed, 30 Sep 2020 09:36:45 +0000 Subject: Fixing a import logic issue. We don't want to trigger if __name__ ... during _prep_function() calls. So we'll import the module with a specific namespace containing the .py which shouldn't be able to happen when normal programmers do normal imports as .py gets removed normally. --- archinstall/lib/user_interaction.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'archinstall') diff --git a/archinstall/lib/user_interaction.py b/archinstall/lib/user_interaction.py index 48364b42..8dadbc29 100644 --- a/archinstall/lib/user_interaction.py +++ b/archinstall/lib/user_interaction.py @@ -52,8 +52,12 @@ def select_profile(options): # Some crude safety checks, make sure the imported profile has # a __name__ check and if so, check if it's got a _prep_function() # we can call to ask for more user input. + # + # If the requirements are met, import with .py in the namespace to not + # trigger a traditional: + # if __name__ == 'moduleName' if '__name__' in source_data and '_prep_function' in source_data: - with profile.load_instructions() as imported: + with profile.load_instructions(namespace=f"{selected_profile}.py") as imported: if hasattr(imported, '_prep_function'): return profile, imported -- cgit v1.2.3-54-g00ecf