From 0ac62bef96c04699897af08833b8bc5a4bac63dc Mon Sep 17 00:00:00 2001 From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com> Date: Sat, 17 Oct 2026 05:51:30 +0200 Subject: [PATCH] fix: place core extras in packs as the builder does --- scripts/packverify.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/scripts/packverify.py b/scripts/packverify.py index 8a0d4d15..bcebd656 100644 --- a/scripts/packverify.py +++ b/scripts/packverify.py @@ -26,6 +26,7 @@ from common import load_emulator_profiles from common import load_platform_config import os from packextras import platform_region_groups +from packpaths import _flat from nativemode import reads_file_contents import region as region_mod from packresolve import resolve_file @@ -724,13 +725,15 @@ def verify_pack_against_platform( continue if region_drops and sanitize_pack_path(dest) in region_drops: continue - if extras_pfx and not (is_flat and extras_pfx == base_dest): - if not dest.startswith(f"{extras_pfx}/"): - full = f"{extras_pfx}/{dest}" - else: - full = dest + # The builder's own placement: the prefix, then the flattening + # of a pack written at the BIOS root. A destination that + # already starts with the prefix (aethersx2's bios/) + # lands at the root of a flat pack, not under bios/. + if extras_pfx and not dest.startswith(f"{extras_pfx}/"): + full = f"{extras_pfx}/{dest}" else: full = dest + full = _flat(full, base_dest, is_flat) # Skip path conflicts (same logic as pack builder) if _has_path_conflict(full, seen_conformance, seen_parents): continue