From 5b1db797718fe21f85aa6534fed1742b57d2f2c2 Mon Sep 17 00:00:00 2001 From: Raboneko <119771935+raboneko@users.noreply.github.com> Date: Thu, 7 May 2026 19:18:23 -0500 Subject: [PATCH] add: pi-top-Python-SDK (#7652) (#12049) (cherry picked from commit c69d810eb28c961152cbf4ac60ff53a45dab7687) Co-authored-by: Owen Zimmerman <123591347+Owen-sz@users.noreply.github.com> --- anda/tools/pi-top-Python-SDK/anda.hcl | 6 + .../pi-top-Python-SDK/pi-top-Python-SDK.spec | 297 ++++++++++++++++++ anda/tools/pi-top-Python-SDK/update.rhai | 1 + 3 files changed, 304 insertions(+) create mode 100644 anda/tools/pi-top-Python-SDK/anda.hcl create mode 100644 anda/tools/pi-top-Python-SDK/pi-top-Python-SDK.spec create mode 100644 anda/tools/pi-top-Python-SDK/update.rhai diff --git a/anda/tools/pi-top-Python-SDK/anda.hcl b/anda/tools/pi-top-Python-SDK/anda.hcl new file mode 100644 index 0000000000..45d09c7ae8 --- /dev/null +++ b/anda/tools/pi-top-Python-SDK/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "pi-top-Python-SDK.spec" + } +} diff --git a/anda/tools/pi-top-Python-SDK/pi-top-Python-SDK.spec b/anda/tools/pi-top-Python-SDK/pi-top-Python-SDK.spec new file mode 100644 index 0000000000..e3ff6ba707 --- /dev/null +++ b/anda/tools/pi-top-Python-SDK/pi-top-Python-SDK.spec @@ -0,0 +1,297 @@ +%global pypi_name pitop +%global _desc A simple, modular interface for interacting with a pi-top and its related accessories and components. +%global ver 0.35.0-4 +%global sanitized_ver %(echo %{ver} | sed 's/-//g') + +Name: python-%{pypi_name} +Version: %{sanitized_ver} +Release: 1%?dist +Summary: pi-top's Python SDK pitop package +License: Apache-2.0 +URL: https://github.com/pi-top/pi-top-Python-SDK +Source0: %{url}/archive/v%{ver}/%{name}-%{ver}.tar.gz +BuildArch: noarch + +BuildRequires: python3-build +BuildRequires: python3-installer +BuildRequires: python3-wheel +BuildRequires: python3-setuptools +BuildRequires: python3-setuptools_scm +BuildRequires: python3-pip +BuildRequires: python3-devel +BuildRequires: git + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +Provides: pitop +Provides: pi-top-Python-SDK +Provides: pi-top-python-sdk +Provides: pi-top-sdk +Provides: pitop-sdk +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%package -n python3-pitop-battery +Summary: Battery support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-battery +Battery support for the pi-top sdk. + +%package -n python3-pitop-camera +Summary: Camera support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-camera +Camera support for the pi-top sdk. + +%package -n python3-pitopcli +Summary: cli support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitopcli +cli support for the pi-top sdk. + +%package -n python3-pitop-core +Summary: core for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-core +core for the pi-top sdk. + +%package -n python3-pitop-common +Summary: Support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-common +Support for the pi-top sdk. + +%package -n python3-pitop-display +Summary: Display support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-display +Display support for the pi-top sdk. + +%package -n python3-pitop-keyboard +Summary: Keyboard support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-keyboard +Keyboard support for the pi-top sdk. + +%package -n python3-pitop-miniscreen +Summary: Miniscreen support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-miniscreen +Miniscreen support for the pi-top sdk. + +%package -n python3-pitop-pma +Summary: pma support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-pma +pma support for the pi-top sdk. + +%package -n python3-pitop-processing +Summary: Processing support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-processing +Processing support for the pi-top sdk. + +%package -n python3-pitop-robotics +Summary: Robotics support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-robotics +Robotics support for the pi-top sdk. + +%package -n python3-pitop-simulation +Summary: Simulation support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-simulation +Simulation support for the pi-top sdk. + +%package -n python3-pitop-system +Summary: System support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-system +System support for the pi-top sdk. + +%prep +%autosetup -n pi-top-Python-SDK-%{ver} + +%pyproject_patch_dependency flask:drop_constraints +%pyproject_patch_dependency flask-cors:drop_constraints +%pyproject_patch_dependency gevent:drop_constraints +%pyproject_patch_dependency gpiozero:drop_constraints + +%build +pushd packages/battery +%pyproject_wheel +popd +pushd packages/camera +%pyproject_wheel +popd +pushd packages/cli +%pyproject_wheel +popd +pushd packages/common +%pyproject_wheel +popd +pushd packages/core +%pyproject_wheel +popd +pushd packages/display +%pyproject_wheel +popd +pushd packages/keyboard +%pyproject_wheel +popd +pushd packages/miniscreen +%pyproject_wheel +popd +pushd packages/pitop +%pyproject_wheel +popd +pushd packages/pma +%pyproject_wheel +popd +pushd packages/processing +%pyproject_wheel +popd +pushd packages/robotics +%pyproject_wheel +popd +pushd packages/simulation +%pyproject_wheel +popd +pushd packages/system +%pyproject_wheel +popd + +%install +%pyproject_install +pushd packages/battery +%pyproject_install +popd +pushd packages/camera +%pyproject_install +popd +pushd packages/cli +%pyproject_install +popd +pushd packages/common +%pyproject_install +popd +pushd packages/core +%pyproject_install +popd +pushd packages/display +%pyproject_install +popd +pushd packages/keyboard +%pyproject_install +popd +pushd packages/miniscreen +%pyproject_install +popd +pushd packages/pma +%pyproject_install +popd +pushd packages/processing +%pyproject_install +popd +pushd packages/robotics +%pyproject_install +popd +pushd packages/simulation +%pyproject_install +popd +pushd packages/system +%pyproject_install +popd + +rm -rf %{buildroot}/usr/lib/python3.14/site-packages/pitop/protoplus/ + +%files -n python3-%{pypi_name} +%license LICENSE +%doc README.rst +%{python3_sitelib}/pitop-*.dist-info/ +%{python3_sitelib}/pitop/__pycache__/ +%{python3_sitelib}/pitop/__init__.py +%{python3_sitelib}/pitop/*.py +%{python3_sitelib}/pitop/labs/ +%{python3_sitelib}/pitop/pulse/ + +%files -n python3-pitop-battery +%{python3_sitelib}/pitop_battery-*.dist-info/ +%{python3_sitelib}/pitop/battery/ + +%files -n python3-pitop-camera +%{python3_sitelib}/pitop_camera-*.dist-info/ +%{python3_sitelib}/pitop/camera/ + +%files -n python3-pitopcli +%{python3_sitelib}/pitopcli-*.dev1.dist-info/ +%{_bindir}/pi-top +%{_bindir}/pt +%{python3_sitelib}/pitopcli/ + +%files -n python3-pitop-common +%{python3_sitelib}/pitop_common-*.dist-info/ +%{python3_sitelib}/pitop/common/ + +%files -n python3-pitop-core +%{python3_sitelib}/pitop_core-*.dist-info/ +%{python3_sitelib}/pitop/core/ + +%files -n python3-pitop-display +%{python3_sitelib}/pitop_display-*.dist-info/ +%{python3_sitelib}/pitop/display/ + +%files -n python3-pitop-keyboard +%{python3_sitelib}/pitop_keyboard-*.dist-info/ +%{python3_sitelib}/pitop/keyboard/ + +%files -n python3-pitop-miniscreen +%{python3_sitelib}/pitop_miniscreen-*.dist-info/ +%{python3_sitelib}/pitop/miniscreen/ + +%files -n python3-pitop-pma +%{python3_sitelib}/pitop_pma-*.dist-info/ +%{python3_sitelib}/pitop/pma/ + +%files -n python3-pitop-processing +%{python3_sitelib}/pitop_processing-*.dist-info/ +%{python3_sitelib}/pitop/processing/ + +%files -n python3-pitop-robotics +%{python3_sitelib}/pitop_robotics-*.dist-info/ +%{python3_sitelib}/pitop/robotics/ + +%files -n python3-pitop-simulation +%{python3_sitelib}/pitop_simulation-*.dist-info/ +%{python3_sitelib}/pitop/simulation/ + +%files -n python3-pitop-system +%{python3_sitelib}/pitop_system-*.dist-info/ +%{python3_sitelib}/pitop/system/ + +%changelog +* Wed May 06 2026 Owen Zimmerman +- Update files and build/prep steps + +* Wed Oct 08 2025 Owen Zimmerman +- Initial commit diff --git a/anda/tools/pi-top-Python-SDK/update.rhai b/anda/tools/pi-top-Python-SDK/update.rhai new file mode 100644 index 0000000000..8277419700 --- /dev/null +++ b/anda/tools/pi-top-Python-SDK/update.rhai @@ -0,0 +1 @@ +rpm.global("ver",gh("pi-top/pi-top-Python-SDK"));