From: Flaviu Nistor <flaviu.nistor@gmail.com>
To: buildroot@buildroot.org
Cc: Flaviu Nistor <flaviu.nistor@gmail.com>
Subject: [Buildroot] [PATCH 1/1] utils/scanpypi: workaround for pypi project names
Date: Fri, 27 Mar 2026 08:43:54 +0200 [thread overview]
Message-ID: <20260327064354.5892-2-flaviu.nistor@gmail.com> (raw)
In-Reply-To: <20260327064354.5892-1-flaviu.nistor@gmail.com>
Add a dictionary for buildroot packages that have a different
name compared to the pypi project name (e.g. smmap2 -> smmap).
Since it is not intended to change the buildroot package name,
this is a workaround in order to use the scanpypi utility for
this packages and still get correct generated files. Current
packages added in the dictionary by this commit are smmap2 and
gitdb2.
Signed-off-by: Flaviu Nistor <flaviu.nistor@gmail.com>
---
utils/scanpypi | 18 +++++++++++++++---
1 file changed, 15 insertions(+), 3 deletions(-)
diff --git a/utils/scanpypi b/utils/scanpypi
index 61879e39d4..09899bfe0e 100755
--- a/utils/scanpypi
+++ b/utils/scanpypi
@@ -189,6 +189,14 @@ class BuildrootPackage():
create_config_in
"""
+
+ # Dictionary of python package names to their actual PyPI project names
+ # Used when a package's buildroot name differs from its PyPI name
+ PYPI_NAME_MAPPINGS = {
+ 'smmap2': 'smmap',
+ 'gitdb2': 'gitdb',
+ }
+
setup_args = {}
def __init__(self, real_name, pkg_folder):
@@ -216,8 +224,12 @@ class BuildrootPackage():
"""
Fetch a package's metadata from the python package index
"""
+
+ # Check if there's a PyPI name in the dictionary for this package
+ pypi_name = self.PYPI_NAME_MAPPINGS.get(self.real_name, self.real_name)
+
self.metadata_url = 'https://pypi.org/pypi/{pkg}/json'.format(
- pkg=self.real_name)
+ pkg=pypi_name)
try:
pkg_json = urllib.request.urlopen(self.metadata_url).read().decode()
except urllib.error.HTTPError as error:
@@ -225,13 +237,13 @@ class BuildrootPackage():
print('ERROR: Could not find package {pkg}.\n'
'Check syntax inside the python package index:\n'
'https://pypi.python.org/pypi/ '
- .format(pkg=self.real_name))
+ .format(pkg=pypi_name))
raise
except urllib.error.URLError:
print('ERROR: Could not find package {pkg}.\n'
'Check syntax inside the python package index:\n'
'https://pypi.python.org/pypi/ '
- .format(pkg=self.real_name))
+ .format(pkg=pypi_name))
raise
self.metadata = json.loads(pkg_json)
self.version = self.metadata['info']['version']
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2026-03-27 6:44 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-27 6:43 [Buildroot] [PATCH 0/1] utils/scanpypi: workaround for pypi project names Flaviu Nistor
2026-03-27 6:43 ` Flaviu Nistor [this message]
2026-04-07 18:59 ` [Buildroot] [PATCH 1/1] " Arnout Vandecappelle via buildroot
2026-04-09 15:21 ` Flaviu Nistor
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260327064354.5892-2-flaviu.nistor@gmail.com \
--to=flaviu.nistor@gmail.com \
--cc=buildroot@buildroot.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox