Missing arguments after GlobalMenu execution (issue #868) (#871)

* Install.__init__ parameter kernel as a list everywhere.
I've dropped the string check, as it shouldn't happen again, and it's good that it fails, when it happens

* Global Menu now loads in the arguments dict all options enabled with default value and no manually selected (issue #868)
This commit is contained in:
Werner Llácer 2022-01-15 21:44:13 +01:00 committed by GitHub
parent 31f55e8d6b
commit 3d30a4eb28
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 9 additions and 7 deletions

View File

@ -90,8 +90,6 @@ class Installer:
base_packages = __packages__[:3]
if kernels is None:
self.kernels = ['linux']
elif isinstance(kernels,str):
self.kernels = [kernels]
else:
self.kernels = kernels
self.target = target

View File

@ -238,6 +238,10 @@ class GlobalMenu:
break
else:
self._process_selection(selection)
for key in self._menu_options:
sel = self._menu_options[key]
if sel.enabled and sel.has_selection() and key not in archinstall.arguments:
archinstall.arguments[key] = sel._current_selection
def _process_selection(self, selection):
# find the selected option in our option list

View File

@ -192,7 +192,7 @@ def perform_installation(mountpoint):
Only requirement is that the block devices are
formatted and setup prior to entering this function.
"""
with archinstall.Installer(mountpoint, kernels=archinstall.arguments.get('kernels', 'linux')) as installation:
with archinstall.Installer(mountpoint, kernels=archinstall.arguments.get('kernels', ['linux'])) as installation:
# Mount all the drives to the desired mountpoint
# This *can* be done outside of the installation, but the installer can deal with it.
if archinstall.arguments.get('disk_layouts'):

View File

@ -174,7 +174,7 @@ def perform_installation(mountpoint):
Only requirement is that the block devices are
formatted and setup prior to entering this function.
"""
with archinstall.Installer(mountpoint, kernels=archinstall.arguments.get('kernels', 'linux')) as installation:
with archinstall.Installer(mountpoint, kernels=None) as installation:
# Mount all the drives to the desired mountpoint
# This *can* be done outside of the installation, but the installer can deal with it.
if archinstall.storage.get('disk_layouts'):