Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcodefiles <11915375+codefiles@users.noreply.github.com>2022-10-03 10:42:10 -0400
committerGitHub <noreply@github.com>2022-10-03 16:42:10 +0200
commit977976f88e761ced7d5bc9f39b32e2296ee91806 (patch)
treeee4b47ed02a3d4a1ff1fddd584a16d5bb9241f45
parent40e4046633d857929b8fd1bfa121b38937add81c (diff)
Add hostname and locales as parameters to `minimal_installation()` (#1458)
-rw-r--r--README.md3
-rw-r--r--archinstall/lib/installer.py8
-rw-r--r--examples/guided.py6
-rw-r--r--examples/swiss.py6
4 files changed, 12 insertions, 11 deletions
diff --git a/README.md b/README.md
index 72197ada..6bddfa24 100644
--- a/README.md
+++ b/README.md
@@ -122,8 +122,7 @@ with archinstall.luks2(root, 'luksloop', disk_password) as unlocked_root:
boot.mount('/mnt/boot')
with archinstall.Installer('/mnt') as installation:
- if installation.minimal_installation():
- installation.set_hostname('minimal-arch')
+ if installation.minimal_installation(hostname='minimal-arch'):
installation.add_bootloader()
installation.add_additional_packages(['nano', 'wget', 'git'])
diff --git a/archinstall/lib/installer.py b/archinstall/lib/installer.py
index 1270959e..49ce4d7f 100644
--- a/archinstall/lib/installer.py
+++ b/archinstall/lib/installer.py
@@ -662,7 +662,9 @@ class Installer:
return SysCommand(f'/usr/bin/arch-chroot {self.target} mkinitcpio {" ".join(flags)}').exit_code == 0
- def minimal_installation(self, testing=False, multilib=False) -> bool:
+ def minimal_installation(
+ self, testing: bool = False, multilib: bool = False,
+ hostname: str = 'archinstall', locales: List[str] = ['en_US.UTF-8 UTF-8']) -> bool:
# Add necessary packages if encrypting the drive
# (encrypted partitions default to btrfs for now, so we need btrfs-progs)
# TODO: Perhaps this should be living in the function which dictates
@@ -750,8 +752,8 @@ class Installer:
# os.remove(f'{self.target}/etc/localtime')
# sys_command(f'/usr/bin/arch-chroot {self.target} ln -s /usr/share/zoneinfo/{localtime} /etc/localtime')
# sys_command('/usr/bin/arch-chroot /mnt hwclock --hctosys --localtime')
- self.set_hostname('archinstall')
- self.set_locale('en_US')
+ self.set_hostname(hostname)
+ self.set_locale(*locales[0].split())
# TODO: Use python functions for this
SysCommand(f'/usr/bin/arch-chroot {self.target} chmod 700 /root')
diff --git a/examples/guided.py b/examples/guided.py
index 6f289caa..ad178207 100644
--- a/examples/guided.py
+++ b/examples/guided.py
@@ -192,9 +192,9 @@ def perform_installation(mountpoint):
enable_testing = False
enable_multilib = False
- if installation.minimal_installation(testing=enable_testing, multilib=enable_multilib):
- installation.set_locale(archinstall.arguments['sys-language'], archinstall.arguments['sys-encoding'].upper())
- installation.set_hostname(archinstall.arguments['hostname'])
+ if installation.minimal_installation(
+ testing=enable_testing, multilib=enable_multilib, hostname=archinstall.arguments['hostname'],
+ locales=[f"{archinstall.arguments['sys-language']} {archinstall.arguments['sys-encoding'].upper()}"]):
if archinstall.arguments.get('mirror-region') is not None:
if archinstall.arguments.get("mirrors", None) is not None:
installation.set_mirrors(archinstall.arguments['mirror-region']) # Set the mirrors in the installation medium
diff --git a/examples/swiss.py b/examples/swiss.py
index da45cd18..419bd859 100644
--- a/examples/swiss.py
+++ b/examples/swiss.py
@@ -402,9 +402,9 @@ def os_setup(installation):
# Set mirrors used by pacstrap (outside of installation)
if archinstall.arguments.get('mirror-region', None):
archinstall.use_mirrors(archinstall.arguments['mirror-region']) # Set the mirrors for the live medium
- if installation.minimal_installation():
- installation.set_locale(archinstall.arguments['sys-language'], archinstall.arguments['sys-encoding'].upper())
- installation.set_hostname(archinstall.arguments['hostname'])
+ if installation.minimal_installation(
+ hostname=archinstall.arguments['hostname'],
+ locales=[f"{archinstall.arguments['sys-language']} {archinstall.arguments['sys-encoding'].upper()}"]):
if archinstall.arguments['mirror-region'].get("mirrors", None) is not None:
installation.set_mirrors(
archinstall.arguments['mirror-region']) # Set the mirrors in the installation medium