From f3ce010e986a5b012492a0b8ba64cc03f742f7bd Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Sat, 18 Oct 2025 21:43:07 +0200 Subject: [PATCH] package/python-fs: new package This commit adds a host package for the Python 'fs' module, needed as a dependency of pyfatfs, itself needed by Snagboot. Homepage: https://pypi.org/project/fs/ In addition, a very simple test case is adding to check that host-python-fs is minimally working. Signed-off-by: Thomas Petazzoni Signed-off-by: Julien Olivain --- DEVELOPERS | 2 ++ package/python-fs/python-fs.hash | 5 +++++ package/python-fs/python-fs.mk | 15 +++++++++++++++ support/testing/tests/package/test_python_fs.py | 9 +++++++++ 4 files changed, 31 insertions(+) create mode 100644 package/python-fs/python-fs.hash create mode 100644 package/python-fs/python-fs.mk create mode 100644 support/testing/tests/package/test_python_fs.py diff --git a/DEVELOPERS b/DEVELOPERS index 26c8b4ea01..cca984780a 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -3257,6 +3257,7 @@ F: package/python3/ F: package/python-augeas/ F: package/python-crccheck/ F: package/python-flask-expects-json/ +F: package/python-fs/ F: package/python-git/ F: package/python-qrcode/ F: package/python-serial/ @@ -3288,6 +3289,7 @@ F: support/testing/tests/package/test_python_augeas.py F: support/testing/tests/package/test_python_crccheck.py F: support/testing/tests/package/test_python_flask.py F: support/testing/tests/package/test_python_flask_expects_json.py +F: support/testing/tests/package/test_python_fs.py F: support/testing/tests/package/test_python_git.py F: support/testing/tests/package/test_python_pyusb.py F: support/testing/tests/package/test_python_serial.py diff --git a/package/python-fs/python-fs.hash b/package/python-fs/python-fs.hash new file mode 100644 index 0000000000..5ebb49128d --- /dev/null +++ b/package/python-fs/python-fs.hash @@ -0,0 +1,5 @@ +# From https://pypi.org/project/fs/#fs-2.4.16.tar.gz +sha256 ae97c7d51213f4b70b6a958292530289090de3a7e15841e108fbe144f069d313 fs-2.4.16.tar.gz + +# Locally calculated +sha256 bcc1fbae1da071a15d17fd7609519af1160a3d72c65622047b61e19ba63e780d LICENSE diff --git a/package/python-fs/python-fs.mk b/package/python-fs/python-fs.mk new file mode 100644 index 0000000000..8d684e6ebd --- /dev/null +++ b/package/python-fs/python-fs.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# python-fs +# +################################################################################ + +PYTHON_FS_VERSION = 2.4.16 +PYTHON_FS_SOURCE = fs-$(PYTHON_FS_VERSION).tar.gz +PYTHON_FS_SITE = https://files.pythonhosted.org/packages/5d/a9/af5bfd5a92592c16cdae5c04f68187a309be8a146b528eac3c6e30edbad2 +PYTHON_FS_SETUP_TYPE = setuptools +PYTHON_FS_LICENSE = MIT +PYTHON_FS_LICENSE_FILES = LICENSE +HOST_PYTHON_FS_DEPENDENCIES = host-python-six host-python-appdirs + +$(eval $(host-python-package)) diff --git a/support/testing/tests/package/test_python_fs.py b/support/testing/tests/package/test_python_fs.py new file mode 100644 index 0000000000..a53d8a64c8 --- /dev/null +++ b/support/testing/tests/package/test_python_fs.py @@ -0,0 +1,9 @@ +import infra.basetest + + +class TestHostPythonFs(infra.basetest.BRHostPkgTest): + hostpkgs = ["host-python-fs"] + + def test_run(self): + cmd = ["host/bin/python3", "-c", "import fs; fs.open_fs('mem://'); fs.open_fs('temp://')"] + infra.run_cmd_on_host(self.builddir, cmd)