From fa2270a11b833928186727812a3a3f82d18ef5ce Mon Sep 17 00:00:00 2001 From: Anton Hvornum Date: Sun, 7 Feb 2021 12:52:12 +0100 Subject: [PATCH] Created has_partitions() on BlockDevice's --- archinstall/lib/disk.py | 3 +++ examples/guided.py | 19 ++++++++++--------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/archinstall/lib/disk.py b/archinstall/lib/disk.py index caf5c4e1..1d78d127 100644 --- a/archinstall/lib/disk.py +++ b/archinstall/lib/disk.py @@ -100,6 +100,9 @@ class BlockDevice(): all_partitions = self.partitions return [all_partitions[k] for k in all_partitions] + def has_partitions(self): + return len(self.partitions) + class Partition(): def __init__(self, path, part_id=None, size=-1, filesystem=None, mountpoint=None, encrypted=False): diff --git a/examples/guided.py b/examples/guided.py index f55047d9..1e879316 100644 --- a/examples/guided.py +++ b/examples/guided.py @@ -96,6 +96,16 @@ archinstall.storage['_guided']['mirrors'] = mirror_regions # Ask which harddrive/block-device we will install to harddrive = archinstall.select_disk(archinstall.all_disks()) +archinstall.storage['_guided']['harddrive'] = harddrive + +if harddrive.has_partitions(harddrive): + archinstall.log(f" ! {harddrive} contains existing partitions", fg='red') + if (option := input('Do you wish to keep existing partition setup or format the entire disk? (k/f): ')).lower() in ('k', 'keep'): + print("We're keeping it!") + else: + print('Formatting woop woop!') +exit(1) + while (disk_password := getpass.getpass(prompt='Enter disk encryption password (leave blank for no encryption): ')): disk_password_verification = getpass.getpass(prompt='And one more time for verification: ') if disk_password != disk_password_verification: @@ -103,15 +113,6 @@ while (disk_password := getpass.getpass(prompt='Enter disk encryption password ( continue archinstall.storage['_guided']['disk_encryption'] = True break -archinstall.storage['_guided']['harddrive'] = harddrive -print(harddrive) -if archinstall.has_partitions(harddrive): - archinstall.log(f" ! {harddrive} contains existing partitions", fg='red') - if (option := input('Do you wish to keep existing partition setup or format the entire disk? (k/f): ')).lower() in ('k', 'keep'): - print("We're keeping it!") - else: - print('Formatting woop woop!') -exit(1) # Ask for a hostname