Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/archinstall/lib/installer.py
diff options
context:
space:
mode:
authorAnton Hvornum <anton@hvornum.se>2021-03-21 15:25:24 +0100
committerAnton Hvornum <anton@hvornum.se>2021-03-21 15:25:24 +0100
commit93faf07b6948074e9071faf75f96ff220714d5f9 (patch)
tree3b781b9781ae79a01aa547709bb8db829a37cf82 /archinstall/lib/installer.py
parent60817334224a8ade4c7e600498fe9bd8f540bf29 (diff)
Moved the globalization of 'installation' variable. Since Profile() might be created before the installation instance, we need to move the global variable declaration after installation has begun and there's an installation instance.
Diffstat (limited to 'archinstall/lib/installer.py')
-rw-r--r--archinstall/lib/installer.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/archinstall/lib/installer.py b/archinstall/lib/installer.py
index 2604e77d..8d7d6967 100644
--- a/archinstall/lib/installer.py
+++ b/archinstall/lib/installer.py
@@ -381,6 +381,15 @@ class Installer():
return self.pacstrap(*packages)
def install_profile(self, profile):
+ # TODO: Replace this with a import archinstall.session instead in the profiles.
+ # The tricky thing with doing the import archinstall.session instead is that
+ # profiles might be run from a different chroot, and there's no way we can
+ # guarantee file-path safety when accessing the installer object that way.
+ # Doing the __builtins__ replacement, ensures that the global vriable "installation"
+ # is always kept up to date. It's considered a nasty hack - but it's a safe way
+ # of ensuring 100% accuracy of archinstall session variables.
+ __builtins__['installation'] = self.installer
+
if type(profile) == str:
profile = Profile(self, profile)