From fa25a18ba8e24a30211ae4c9cbcc9fc112af2de2 Mon Sep 17 00:00:00 2001 From: Valentin Niess Date: Wed, 2 Jul 2025 11:17:30 +0200 Subject: [PATCH] Smarter cacert.pem detection --- python_appimage/manylinux/extract.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/python_appimage/manylinux/extract.py b/python_appimage/manylinux/extract.py index bc68c76..71e49fe 100644 --- a/python_appimage/manylinux/extract.py +++ b/python_appimage/manylinux/extract.py @@ -244,14 +244,20 @@ class PythonExtractor: assert(site_packages.name == 'site-packages') log('INSTALL', certifi.name) - for src in glob.glob(str(site_packages / 'certifi*')): - src = Path(src) + matches = [ + Path(src) for src in glob.glob(str(site_packages / 'certifi*')) + ] + matches = sorted(matches, key=lambda src: src.name) + cert_src = None + for src in matches: dst = python_dest / f'{packages}/site-packages/{src.name}' if not dst.exists(): shutil.copytree(src, dst, symlinks=True) - - cert_src = dst / 'cacert.pem' - assert(cert_src.exists()) + if cert_src is None: + cacert_pem = dst / 'cacert.pem' + if cacert_pem.exists(): + cert_src = cacert_pem + assert(cert_src is not None) else: raise NotImplementedError()