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] base_packages = __packages__[:3]
if kernels is None: if kernels is None:
self.kernels = ['linux'] self.kernels = ['linux']
elif isinstance(kernels,str):
self.kernels = [kernels]
else: else:
self.kernels = kernels self.kernels = kernels
self.target = target self.target = target

View File

@ -238,6 +238,10 @@ class GlobalMenu:
break break
else: else:
self._process_selection(selection) 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): def _process_selection(self, selection):
# find the selected option in our option list # 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 Only requirement is that the block devices are
formatted and setup prior to entering this function. 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 # Mount all the drives to the desired mountpoint
# This *can* be done outside of the installation, but the installer can deal with it. # This *can* be done outside of the installation, but the installer can deal with it.
if archinstall.arguments.get('disk_layouts'): if archinstall.arguments.get('disk_layouts'):

View File

@ -174,7 +174,7 @@ def perform_installation(mountpoint):
Only requirement is that the block devices are Only requirement is that the block devices are
formatted and setup prior to entering this function. 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 # Mount all the drives to the desired mountpoint
# This *can* be done outside of the installation, but the installer can deal with it. # This *can* be done outside of the installation, but the installer can deal with it.
if archinstall.storage.get('disk_layouts'): if archinstall.storage.get('disk_layouts'):