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