Go to file
Brandon Maier eafb370e52 utils/check-package: add inline script requirements
The check-package tool requires some PyPi package to be installed before
it can run. This is typically done by manually installing them into the
user's global Python environment or setting up a virtual environment,
then manually installing each dependency.

Python recently defined a format for managing script dependencies as
inline metadata[1]. This can be used with the `uv` tool to run a Python
script and automatically install the minimum required version of Python
and PyPi dependencies.

With this change, it's now possible to run check-package with

  uv run -s ./utils/check-package

Note that, because check-package does not have the '.py' file extension
we must specify the `-s` or `--script` argument. That argument was added
very recently in release 0.4.19[2].

I set the minimum python to 3.9 as that is the oldest version still
supported[3]. I verified 3.9 works by running

  uv run -p 3.9 -s ./utils/check-package `git ls-tree -r --name-only HEAD` --ignore-list=.checkpackageignore

[1] https://packaging.python.org/en/latest/specifications/inline-script-metadata/#script-type
[2] https://github.com/astral-sh/uv/releases/tag/0.4.19
[3] https://devguide.python.org/versions/

Signed-off-by: Brandon Maier <brandon.maier@collins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6ffcdb52e80b63e68c890aed52ff7f4d00e079b8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-11-11 11:14:54 +01:00
.github .github: add a pull request warning that explains the mailing list workflow 2024-05-07 18:09:38 +02:00
.gitlab/issue_templates gitlab: fix issue template 2024-09-19 11:11:28 +02:00
arch arch/Config.in.arc: fix indentation 2024-09-19 09:10:58 +02:00
board board/udoo/neo/readme.txt: provide more details 2024-09-02 14:02:34 +02:00
boot boot/uboot: update link to the U-Boot docs 2024-11-06 21:49:30 +01:00
configs configs/stm32mp157a_dk1: add hashes 2024-07-31 18:48:06 +02:00
docs docs/manual/adding-packages-tips: mention check-package requirements 2024-11-11 11:13:58 +01:00
fs fs/tar: use appropriate TAR 2024-06-15 20:28:56 +02:00
linux {linux, linux-headers}: bump 5.{10, 15}.x / 6.{1, 6, 11}.x series 2024-11-11 11:03:03 +01:00
package package/jailhouse: fix python helper scripts installation 2024-11-11 11:09:39 +01:00
support support/testing: add iputils runtime test 2024-11-09 17:32:35 +01:00
system system: expose BR2_ROOTFS_POST_SCRIPT_ARGS for PRE_BUILD scripts 2024-04-28 14:07:55 +02:00
toolchain toolchain/toolchain-wrapper.c: fix 'potentially' typo 2024-10-12 15:57:13 +02:00
utils utils/check-package: add inline script requirements 2024-11-11 11:14:54 +01:00
.b4-config .b4-config: configure b4 for Buildroot 2024-08-20 19:11:53 +02:00
.checkpackageignore package/bind: security bump to 9.18.28 2024-09-19 13:13:11 +02:00
.clang-format
.defconfig
.editorconfig editorconfig: leave patch files alone wrt trainling spaces 2024-06-16 12:24:58 +02:00
.flake8
.gitignore
.gitlab-ci.yml
.shellcheckrc
CHANGES Update for 2024.02.7 2024-10-21 09:09:10 +02:00
Config.in Config.in: drop --passive-ftp from default wget options 2024-06-08 20:12:16 +02:00
Config.in.legacy toolchain: drop codescape mips toolchains 2024-03-22 20:51:35 +01:00
COPYING
DEVELOPERS DEVELOPERS: drop my packages 2024-11-09 18:03:55 +01:00
Makefile Update for 2024.02.7 2024-10-21 09:09:10 +02:00
Makefile.legacy
README

Buildroot is a simple, efficient and easy-to-use tool to generate embedded
Linux systems through cross-compilation.

The documentation can be found in docs/manual. You can generate a text
document with 'make manual-text' and read output/docs/manual/manual.text.
Online documentation can be found at http://buildroot.org/docs.html

To build and use the buildroot stuff, do the following:

1) run 'make menuconfig'
2) select the target architecture and the packages you wish to compile
3) run 'make'
4) wait while it compiles
5) find the kernel, bootloader, root filesystem, etc. in output/images

You do not need to be root to build or run buildroot.  Have fun!

Buildroot comes with a basic configuration for a number of boards. Run
'make list-defconfigs' to view the list of provided configurations.

Please feed suggestions, bug reports, insults, and bribes back to the
buildroot mailing list: buildroot@buildroot.org
You can also find us on #buildroot on OFTC IRC.

If you would like to contribute patches, please read
https://buildroot.org/manual.html#submitting-patches