diff --git a/scripts/wk/kit/ufd.py b/scripts/wk/kit/ufd.py index 11a8859b..8152c6dd 100644 --- a/scripts/wk/kit/ufd.py +++ b/scripts/wk/kit/ufd.py @@ -80,7 +80,7 @@ def argparse_helper() -> dict[str, None|bool|str]: '--update': args.update, '--use-mbr': args.use_mbr, '--winpe': args.winpe, - 'EXTRA_IMAGES': args.extra_images, + 'EXTRA_IMAGES': args.EXTRA_IMAGES, } return legacy_args @@ -175,6 +175,13 @@ def build_ufd() -> None: dev_path=ufd_dev, label=UFD_LABEL, ) + try_print.run( + message='Hiding extra partition(s)...', + function=hide_extra_partitions, + dev_path=ufd_dev, + num_parts=len(extra_images), + use_mbr=args['--use-mbr'], + ) ufd_dev_first_partition = find_first_partition(ufd_dev) # Mount UFD @@ -464,6 +471,17 @@ def hide_items(ufd_dev_first_partition, items) -> None: run_program(cmd, shell=True, check=False) +def hide_extra_partitions(dev_path, num_parts, use_mbr) -> None: + if use_mbr: + # Bail early + return + + for part_id in range(num_parts): + part_id += 2 # Extra partitions start at 2 + cmd = ['sfdisk', '--part-attrs', dev_path, str(part_id), 'RequiredPartition,62,63'] + run_program(cmd, check=False) + + def install_syslinux_to_dev(ufd_dev, use_mbr) -> None: """Install Syslinux to UFD (dev).""" cmd = [