added option to choose kernel

This commit is contained in:
Aggam Rahamim 2021-04-16 12:01:20 +03:00
parent 2433a9ee76
commit 459f161cf0
3 changed files with 13 additions and 3 deletions

2
.gitignore vendored
View File

@ -20,4 +20,4 @@ SAFETY_LOCK
**/**.network **/**.network
**/**.target **/**.target
**/**.qcow2 **/**.qcow2
**/test.py **/test.py

View File

@ -34,7 +34,8 @@ class Installer():
:type hostname: str, optional :type hostname: str, optional
""" """
def __init__(self, target, *, base_packages='base base-devel linux linux-firmware efibootmgr'): def __init__(self, target, *, base_packages='base base-devel linux-firmware efibootmgr', kernel='linux'):
base_packages += ' '+kernel
self.target = target self.target = target
self.init_time = time.strftime('%Y-%m-%d_%H-%M-%S') self.init_time = time.strftime('%Y-%m-%d_%H-%M-%S')
self.milliseconds = int(str(time.time()).split('.')[1]) self.milliseconds = int(str(time.time()).split('.')[1])

View File

@ -176,6 +176,15 @@ def ask_user_questions():
# packages installed by a profile may depend on audio and something may get installed anyways, not much we can do about that. # packages installed by a profile may depend on audio and something may get installed anyways, not much we can do about that.
# we will not try to remove packages post-installation to not have audio, as that may cause multiple issues # we will not try to remove packages post-installation to not have audio, as that may cause multiple issues
archinstall.arguments['audio'] = None archinstall.arguments['audio'] = None
# Ask what kernel user wants:
kernel = input("choose a kernel:\n1. linux\n2. linux-lts\n3. linux-zen")
try:
archinstall.arguments['kernel'] = ['linux', 'linux-lts', 'linux-zen'][int(kernel) - 1]
except:
archinstall.log('invalid kernel selected. defaulting to \'linux\'.')
archinstall.arguments['kernel'] = 'linux'
# Additional packages (with some light weight error handling for invalid package names) # Additional packages (with some light weight error handling for invalid package names)
if not archinstall.arguments.get('packages', None): if not archinstall.arguments.get('packages', None):
@ -272,7 +281,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) as installation: with archinstall.Installer(mountpoint, kernel=archinstall.arguments['kernel']) as installation:
## if len(mirrors): ## if len(mirrors):
# Certain services might be running that affects the system during installation. # Certain services might be running that affects the system during installation.
# Currently, only one such service is "reflector.service" which updates /etc/pacman.d/mirrorlist # Currently, only one such service is "reflector.service" which updates /etc/pacman.d/mirrorlist