Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/archinstall/lib/installer.py
diff options
context:
space:
mode:
authorAnton Hvornum <anton@hvornum.se>2022-04-26 13:17:40 +0200
committerGitHub <noreply@github.com>2022-04-26 13:17:40 +0200
commit12b5e2e4e9537fbae0ec21ced9d21482b29610d3 (patch)
treebeca57117b44080c161ca0142f07a90bdfee5ae1 /archinstall/lib/installer.py
parent1bce561a0ca22d6735f9a46ee39e5e22e0c17cb8 (diff)
Adding compression as an option (#1084)
* Adding compression as an option * Ignore 'misaligned' ending parenthathese * Moved the 'mark compressed' logic into the sub block within manual disk operations. * Fixed flake8 complaints * Muting a complextion warning on manage_new_and_existing_partitions(). It is too complex, but not something that we'll bother with for v2.4.0. As this whole function could be replaced with a new and improved menu system split into tasks rather than one huge if/else.
Diffstat (limited to 'archinstall/lib/installer.py')
-rw-r--r--archinstall/lib/installer.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/archinstall/lib/installer.py b/archinstall/lib/installer.py
index 14a2a703..5a83a0cb 100644
--- a/archinstall/lib/installer.py
+++ b/archinstall/lib/installer.py
@@ -235,7 +235,7 @@ class Installer:
list_part.extend(layouts[blockdevice]['partitions'])
# we manage the encrypted partititons
- for partition in [entry for entry in list_part if entry.get('encrypted',False)]:
+ for partition in [entry for entry in list_part if entry.get('encrypted', False)]:
# open the luks device and all associate stuff
if not (password := partition.get('!password', None)):
raise RequirementError(f"Missing partition {partition['device_instance'].path} encryption password in layout: {partition}")
@@ -252,7 +252,11 @@ class Installer:
# we manage the btrfs partitions
for partition in [entry for entry in list_part if entry.get('btrfs', {}).get('subvolumes', {})]:
- self.mount(partition['device_instance'],"/")
+ if partition.get('filesystem',{}).get('mount_options',[]):
+ mount_options = ','.join(partition['filesystem']['mount_options'])
+ self.mount(partition['device_instance'], "/", options=mount_options)
+ else:
+ self.mount(partition['device_instance'], "/")
try:
new_mountpoints = manage_btrfs_subvolumes(self,partition)
except Exception as e:
@@ -270,7 +274,7 @@ class Installer:
if partition.get('filesystem',{}).get('mount_options',[]):
mount_options = ','.join(partition['filesystem']['mount_options'])
- partition['device_instance'].mount(f"{self.target}{mountpoint}",options=mount_options)
+ partition['device_instance'].mount(f"{self.target}{mountpoint}", options=mount_options)
else:
partition['device_instance'].mount(f"{self.target}{mountpoint}")
@@ -287,11 +291,11 @@ class Installer:
log(f"creating key-file for {ppath}",level=logging.INFO)
self._create_keyfile(handle[0],handle[1],handle[2])
- def mount(self, partition :Partition, mountpoint :str, create_mountpoint :bool = True) -> None:
+ def mount(self, partition :Partition, mountpoint :str, create_mountpoint :bool = True, options='') -> None:
if create_mountpoint and not os.path.isdir(f'{self.target}{mountpoint}'):
os.makedirs(f'{self.target}{mountpoint}')
- partition.mount(f'{self.target}{mountpoint}')
+ partition.mount(f'{self.target}{mountpoint}', options=options)
def post_install_check(self, *args :str, **kwargs :str) -> List[str]:
return [step for step, flag in self.helper_flags.items() if flag is False]