index : archinstall32 | |
Archlinux32 installer | gitolite user |
summaryrefslogtreecommitdiff |
author | Anton Hvornum <anton@hvornum.se> | 2021-03-20 17:26:48 +0100 |
---|---|---|
committer | Anton Hvornum <anton@hvornum.se> | 2021-03-20 17:26:48 +0100 |
commit | b67257233f43fa8d34dacd6ecc3dc7cbbf60d221 (patch) | |
tree | 99671297c0f9a3d74167f2e78d7806a07bdfc089 | |
parent | 64653565a49a12a712170d7c9b86055373c25ff8 (diff) |
-rw-r--r-- | archinstall/lib/installer.py | 5 | ||||
-rw-r--r-- | archinstall/lib/user_interaction.py | 7 | ||||
-rw-r--r-- | examples/guided.py | 6 |
diff --git a/archinstall/lib/installer.py b/archinstall/lib/installer.py index 39e3447d..2604e77d 100644 --- a/archinstall/lib/installer.py +++ b/archinstall/lib/installer.py @@ -1,4 +1,4 @@ -import os, stat, time, shutil +import os, stat, time, shutil, pathlib from .exceptions import * from .disk import * @@ -171,7 +171,8 @@ class Installer(): def set_timezone(self, zone, *args, **kwargs): if not len(zone): return True - o = b''.join(sys_command(f'/usr/bin/arch-chroot {self.mountpoint} ln -s /usr/share/zoneinfo/{zone} /etc/localtime')) + (pathlib.Path(self.mountpoint)/"etc"/"localtime").unlink(missing_ok=True) + sys_command(f'/usr/bin/arch-chroot {self.mountpoint} ln -s /usr/share/zoneinfo/{zone} /etc/localtime') return True def activate_ntp(self): diff --git a/archinstall/lib/user_interaction.py b/archinstall/lib/user_interaction.py index ab2b19bc..6b3e5faa 100644 --- a/archinstall/lib/user_interaction.py +++ b/archinstall/lib/user_interaction.py @@ -1,4 +1,4 @@ -import getpass +import getpass, pathlib from .exceptions import * from .profiles import Profile from .locale_helpers import search_keyboard_layout @@ -50,6 +50,11 @@ def ask_for_additional_users(prompt='Any additional users to install (leave blan return users, super_users +def ask_for_a_timezone(): + timezone = input('Enter a valid timezone (Example: Europe/Stockholm): ').strip() + if pathlib.Path(timezone).exists(): + return timezone + def ask_to_configure_network(): # Optionally configure one network interface. #while 1: diff --git a/examples/guided.py b/examples/guided.py index 655fc29f..e9edac09 100644 --- a/examples/guided.py +++ b/examples/guided.py @@ -190,6 +190,9 @@ def ask_user_questions(): if not archinstall.arguments['nic']: archinstall.log(f"No network configuration was selected. Network is going to be unavailable until configured manually!", fg="yellow") + if not archinstall.arguments.get('timezone', None): + archinstall.arguments['timezone'] = archinstall.ask_for_a_timezone() + def perform_installation_steps(): global SIG_TRIGGER @@ -323,6 +326,9 @@ def perform_installation(device, boot_partition, language, mirrors): for superuser, user_info in archinstall.arguments.get('superusers', {}).items(): installation.user_create(superuser, user_info["!password"], sudo=True) + if (timezone := archinstall.arguments.get('timezone', None)): + installation.set_timezone(timezone) + if (root_pw := archinstall.arguments.get('!root-password', None)) and len(root_pw): installation.user_set_pw('root', root_pw) |