From 987755a3376256289ec69131df7020d20785aca8 Mon Sep 17 00:00:00 2001 From: Peter Steenbergen Date: Thu, 23 Sep 2021 14:55:05 +0200 Subject: [PATCH] Add precise-lite support + all dependencies for it. (No TFlite_runtime package included as of yet) --- buildroot-external/Config.in | 7 ++ .../configs/rpi4_64-gui_defconfig | 6 +- .../package/python-beniget/Config.in | 7 ++ .../python-beniget/python-beniget.hash | 5 ++ .../package/python-beniget/python-beniget.mk | 15 +++++ .../package/python-gast/Config.in | 6 ++ .../package/python-gast/python-gast.hash | 5 ++ .../package/python-gast/python-gast.mk | 15 +++++ .../Config.in | 6 ++ ...on-ovos-wake-word-plugin-precise-lite.hash | 1 + ...thon-ovos-wake-word-plugin-precise-lite.mk | 12 ++++ .../python-precise-lite-runner/Config.in | 6 ++ .../python-precise-lite-runner.hash | 3 + .../python-precise-lite-runner.mk | 13 ++++ .../package/python-pythran/Config.in | 10 +++ .../python-pythran/python-pythran.hash | 6 ++ .../package/python-pythran/python-pythran.mk | 15 +++++ .../package/python-scipy/Config.in | 24 +++++++ .../package/python-scipy/python-scipy.hash | 2 + .../package/python-scipy/python-scipy.mk | 33 ++++++++++ .../package/python-sonopy/Config.in | 8 +++ .../package/python-sonopy/python-sonopy.hash | 3 + .../package/python-sonopy/python-sonopy.mk | 13 ++++ .../python-tflit/0001-Simplify-setup.patch | 62 ++++++++++++++++++ .../package/python-tflit/Config.in | 6 ++ .../package/python-tflit/python-tflit.hash | 2 + .../package/python-tflit/python-tflit.mk | 12 ++++ .../rootfs-overlay/etc/mycroft/mycroft.conf | 5 +- .../precise-lite/wakewords/en/android.tflite | Bin 0 -> 21888 bytes .../precise-lite/wakewords/en/computer.tflite | Bin 0 -> 21888 bytes .../wakewords/en/hey_mycroft.tflite | Bin 0 -> 21888 bytes .../precise-lite/wakewords/en/marvin.tflite | Bin 0 -> 21888 bytes .../precise-lite/wakewords/en/sheila.tflite | Bin 0 -> 21888 bytes .../0018-Make-host-python-pip-available.patch | 21 ++++++ ...19-Make-host-python-pybind-available.patch | 21 ++++++ 35 files changed, 346 insertions(+), 4 deletions(-) create mode 100644 buildroot-external/package/python-beniget/Config.in create mode 100644 buildroot-external/package/python-beniget/python-beniget.hash create mode 100644 buildroot-external/package/python-beniget/python-beniget.mk create mode 100644 buildroot-external/package/python-gast/Config.in create mode 100644 buildroot-external/package/python-gast/python-gast.hash create mode 100644 buildroot-external/package/python-gast/python-gast.mk create mode 100644 buildroot-external/package/python-ovos-ww-plugin-precise-lite/Config.in create mode 100644 buildroot-external/package/python-ovos-ww-plugin-precise-lite/python-ovos-wake-word-plugin-precise-lite.hash create mode 100644 buildroot-external/package/python-ovos-ww-plugin-precise-lite/python-ovos-wake-word-plugin-precise-lite.mk create mode 100644 buildroot-external/package/python-precise-lite-runner/Config.in create mode 100644 buildroot-external/package/python-precise-lite-runner/python-precise-lite-runner.hash create mode 100644 buildroot-external/package/python-precise-lite-runner/python-precise-lite-runner.mk create mode 100644 buildroot-external/package/python-pythran/Config.in create mode 100644 buildroot-external/package/python-pythran/python-pythran.hash create mode 100644 buildroot-external/package/python-pythran/python-pythran.mk create mode 100644 buildroot-external/package/python-scipy/Config.in create mode 100644 buildroot-external/package/python-scipy/python-scipy.hash create mode 100644 buildroot-external/package/python-scipy/python-scipy.mk create mode 100644 buildroot-external/package/python-sonopy/Config.in create mode 100644 buildroot-external/package/python-sonopy/python-sonopy.hash create mode 100644 buildroot-external/package/python-sonopy/python-sonopy.mk create mode 100644 buildroot-external/package/python-tflit/0001-Simplify-setup.patch create mode 100644 buildroot-external/package/python-tflit/Config.in create mode 100644 buildroot-external/package/python-tflit/python-tflit.hash create mode 100644 buildroot-external/package/python-tflit/python-tflit.mk create mode 100644 buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/android.tflite create mode 100644 buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/computer.tflite create mode 100644 buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/hey_mycroft.tflite create mode 100644 buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/marvin.tflite create mode 100644 buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/sheila.tflite create mode 100644 buildroot-patches/0018-Make-host-python-pip-available.patch create mode 100644 buildroot-patches/0019-Make-host-python-pybind-available.patch diff --git a/buildroot-external/Config.in b/buildroot-external/Config.in index fa1177f1..66a69c6a 100644 --- a/buildroot-external/Config.in +++ b/buildroot-external/Config.in @@ -100,6 +100,7 @@ menu "Additional external python modules" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-appdirs/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-astral/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-bidict/Config.in" + source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-beniget/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-blinker/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-bs4/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-cachetools/Config.in" @@ -120,6 +121,7 @@ menu "Additional external python modules" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-flask-simplelogin/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-flask-socketio/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-flask-wtf/Config.in" + source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-gast/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-geocoder/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-gitdb/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-gitpython/Config.in" @@ -166,6 +168,7 @@ menu "Additional external python modules" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-petact/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-phoneme-guesser/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pocketsphinx/Config.in" + source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-precise-lite-runner/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-precise-runner/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-premailer/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pulsectl/Config.in" @@ -178,6 +181,7 @@ menu "Additional external python modules" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pymeeus/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pymplayer/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pyowm/Config.in" + source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pythran/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pyxdg/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-quantulum3/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-quebra-frases/Config.in" @@ -188,6 +192,7 @@ menu "Additional external python modules" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-requests-futures/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-rsa/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-ruamel-yaml/Config.in" + source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-scipy/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-sgmllib3k/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-simplematch/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-smbus2/Config.in" @@ -197,6 +202,7 @@ menu "Additional external python modules" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-speechrecognition/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-stopwordsiso/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-tailhead/Config.in" + source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-tflit/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-timezonefinder/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-tzlocal/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-unidecode/Config.in" @@ -227,6 +233,7 @@ menu "Mycroft A.I. Plugins" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-ovos-tts-plugin-pico/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-ovos-ww-plugin-pocketsphinx/Config.in" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-ovos-ww-plugin-precise/Config.in" + source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-ovos-ww-plugin-precise-lite/Config.in" endmenu menu "Mycroft A.I. Skills" source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/mycroft-skills-repo/Config.in" diff --git a/buildroot-external/configs/rpi4_64-gui_defconfig b/buildroot-external/configs/rpi4_64-gui_defconfig index de53f24f..c7d40ded 100644 --- a/buildroot-external/configs/rpi4_64-gui_defconfig +++ b/buildroot-external/configs/rpi4_64-gui_defconfig @@ -411,7 +411,6 @@ BR2_PACKAGE_PYTHON_JSONSCHEMA=y BR2_PACKAGE_PYTHON_NETADDR=y BR2_PACKAGE_PYTHON_NETIFACES=y BR2_PACKAGE_PYTHON_NETWORKMANAGER=y -BR2_PACKAGE_PYTHON_NUMPY=y BR2_PACKAGE_PYTHON_OAUTHLIB=y BR2_PACKAGE_PYTHON_PAHO_MQTT=y BR2_PACKAGE_PYTHON_PEXPECT=y @@ -660,6 +659,7 @@ BR2_PACKAGE_PYTHON_PEP8=y BR2_PACKAGE_PYTHON_PETACT=y BR2_PACKAGE_PYTHON_PHONEME_GUESSER=y BR2_PACKAGE_PYTHON_POCKETSPHINX=y +BR2_PACKAGE_PYTHON_PRECISE_LITE_RUNNER=y BR2_PACKAGE_PYTHON_PRECISE_RUNNER=y BR2_PACKAGE_PYTHON_PULSECTL=y BR2_PACKAGE_PYTHON_PYCHROMECAST=y @@ -667,16 +667,19 @@ BR2_PACKAGE_PYTHON_PYCPUINFO=y BR2_PACKAGE_PYTHON_PYJOKES=y BR2_PACKAGE_PYTHON_PYMPLAYER=y BR2_PACKAGE_PYTHON_PYOWM=y +BR2_PACKAGE_PYTHON_PYTHRAN=y BR2_PACKAGE_PYTHON_QUANTULUM3=y BR2_PACKAGE_PYTHON_RAKEKEYWORDS=y BR2_PACKAGE_PYTHON_RAPIDFUZZ=y BR2_PACKAGE_PYTHON_REQUESTS_FUTURES=y BR2_PACKAGE_PYTHON_RUAMEL_YAML=y +BR2_PACKAGE_PYTHON_SCIPY=y BR2_PACKAGE_PYTHON_SGMLLIB3K=y BR2_PACKAGE_PYTHON_SMBUS2=y BR2_PACKAGE_PYTHON_SMMAP=y BR2_PACKAGE_PYTHON_SOURCE=y BR2_PACKAGE_PYTHON_TAILHEAD=y +BR2_PACKAGE_PYTHON_TFLIT=y BR2_PACKAGE_PYTHON_TZLOCAL=y BR2_PACKAGE_PYTHON_URL_NORMALIZE=y BR2_PACKAGE_PYTHON_VLC=y @@ -698,6 +701,7 @@ BR2_PACKAGE_PYTHON_OVOS_TTS_PLUGIN_MIMIC2=y BR2_PACKAGE_PYTHON_OVOS_TTS_PLUGIN_PICO=y BR2_PACKAGE_PYTHON_OVOS_WW_PLUGIN_POCKETSPHINX=y BR2_PACKAGE_PYTHON_OVOS_WW_PLUGIN_PRECISE=y +BR2_PACKAGE_PYTHON_OVOS_WW_PLUGIN_PRECISE_LITE=y BR2_PACKAGE_MYCROFT_SKILLS_REPO=y BR2_PACKAGE_MYCROFT_SKILL_ALARM=y BR2_PACKAGE_MYCROFT_SKILL_AUDIO_RECORD=y diff --git a/buildroot-external/package/python-beniget/Config.in b/buildroot-external/package/python-beniget/Config.in new file mode 100644 index 00000000..f3ae82c0 --- /dev/null +++ b/buildroot-external/package/python-beniget/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_BENIGET + bool "python-beniget" + select BR2_PACKAGE_PYTHON_GAST # runtime + help + Extract semantic information about static Python code. + + https://github.com/serge-sans-paille/beniget/ diff --git a/buildroot-external/package/python-beniget/python-beniget.hash b/buildroot-external/package/python-beniget/python-beniget.hash new file mode 100644 index 00000000..cd4fa7b8 --- /dev/null +++ b/buildroot-external/package/python-beniget/python-beniget.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/beniget/json +md5 a2bbe7f17f10f9c127d8ef00692ddc55 beniget-0.4.1.tar.gz +sha256 75554b3b8ad0553ce2f607627dad3d95c60c441189875b98e097528f8e23ac0c beniget-0.4.1.tar.gz +# Locally computed sha256 checksums +sha256 64ad3e304e9d2d8731c26ac3e652335a6016e38be2f71fe30350be51c6d500b0 LICENSE diff --git a/buildroot-external/package/python-beniget/python-beniget.mk b/buildroot-external/package/python-beniget/python-beniget.mk new file mode 100644 index 00000000..db2cc10c --- /dev/null +++ b/buildroot-external/package/python-beniget/python-beniget.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# python-beniget +# +################################################################################ + +PYTHON_BENIGET_VERSION = 0.4.1 +PYTHON_BENIGET_SOURCE = beniget-$(PYTHON_BENIGET_VERSION).tar.gz +PYTHON_BENIGET_SITE = https://files.pythonhosted.org/packages/14/e7/50cbac38f77eca8efd39516be6651fdb9f3c4c0fab8cf2cf05f612578737 +PYTHON_BENIGET_SETUP_TYPE = setuptools +PYTHON_BENIGET_LICENSE = FIXME: please specify the exact BSD version +PYTHON_BENIGET_LICENSE_FILES = LICENSE + +$(eval $(python-package)) +$(eval $(host-python-package)) diff --git a/buildroot-external/package/python-gast/Config.in b/buildroot-external/package/python-gast/Config.in new file mode 100644 index 00000000..fc84b922 --- /dev/null +++ b/buildroot-external/package/python-gast/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_GAST + bool "python-gast" + help + Python AST that abstracts the underlying Python version. + + https://github.com/serge-sans-paille/gast/ diff --git a/buildroot-external/package/python-gast/python-gast.hash b/buildroot-external/package/python-gast/python-gast.hash new file mode 100644 index 00000000..97a327f2 --- /dev/null +++ b/buildroot-external/package/python-gast/python-gast.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/gast/json +md5 eb2489df0c85ae198e4740e5711c7299 gast-0.5.2.tar.gz +sha256 f81fcefa8b982624a31c9e4ec7761325a88a0eba60d36d1da90e47f8fe3c67f7 gast-0.5.2.tar.gz +# Locally computed sha256 checksums +sha256 6a04bbabd9b48bea6bf7c0bd3f3a062e1476b3c403a746448fd69b0d902e148f LICENSE diff --git a/buildroot-external/package/python-gast/python-gast.mk b/buildroot-external/package/python-gast/python-gast.mk new file mode 100644 index 00000000..20bf9472 --- /dev/null +++ b/buildroot-external/package/python-gast/python-gast.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# python-gast +# +################################################################################ + +PYTHON_GAST_VERSION = 0.5.2 +PYTHON_GAST_SOURCE = gast-$(PYTHON_GAST_VERSION).tar.gz +PYTHON_GAST_SITE = https://files.pythonhosted.org/packages/53/88/e12484298c9c913b68c1de191fa673f8a976036d98efbdcb60014f14c65c +PYTHON_GAST_SETUP_TYPE = setuptools +PYTHON_GAST_LICENSE = FIXME: please specify the exact BSD version +PYTHON_GAST_LICENSE_FILES = LICENSE + +$(eval $(python-package)) +$(eval $(host-python-package)) diff --git a/buildroot-external/package/python-ovos-ww-plugin-precise-lite/Config.in b/buildroot-external/package/python-ovos-ww-plugin-precise-lite/Config.in new file mode 100644 index 00000000..7feba9cf --- /dev/null +++ b/buildroot-external/package/python-ovos-ww-plugin-precise-lite/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_OVOS_WW_PLUGIN_PRECISE_LITE + bool "python-ovos-ww-plugin-precise-lite" + help + This adds a plugin for precise-lite + + https://github.com/OpenVoiceOS/ovos-ww-plugin-precise-lite diff --git a/buildroot-external/package/python-ovos-ww-plugin-precise-lite/python-ovos-wake-word-plugin-precise-lite.hash b/buildroot-external/package/python-ovos-ww-plugin-precise-lite/python-ovos-wake-word-plugin-precise-lite.hash new file mode 100644 index 00000000..e974849e --- /dev/null +++ b/buildroot-external/package/python-ovos-ww-plugin-precise-lite/python-ovos-wake-word-plugin-precise-lite.hash @@ -0,0 +1 @@ +sha256 x python-ovos-ww-plugin-precise-lite-71f78a7f74ece22fb8f673abc6c1be9ab3593831.tar.gz diff --git a/buildroot-external/package/python-ovos-ww-plugin-precise-lite/python-ovos-wake-word-plugin-precise-lite.mk b/buildroot-external/package/python-ovos-ww-plugin-precise-lite/python-ovos-wake-word-plugin-precise-lite.mk new file mode 100644 index 00000000..01ec35ce --- /dev/null +++ b/buildroot-external/package/python-ovos-ww-plugin-precise-lite/python-ovos-wake-word-plugin-precise-lite.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# python-ovos-ww-plugin-precise +# +################################################################################ + +PYTHON_OVOS_WW_PLUGIN_PRECISE_LITE_VERSION = 71f78a7f74ece22fb8f673abc6c1be9ab3593831 +PYTHON_OVOS_WW_PLUGIN_PRECISE_LITE_SITE = $(call github,OpenVoiceOS,ovos-ww-plugin-precise-lite,$(PYTHON_OVOS_WW_PLUGIN_PRECISE_LITE_VERSION)) +PYTHON_OVOS_WW_PLUGIN_PRECISE_LITE_SETUP_TYPE = setuptools +PYTHON_OVOS_WW_PLUGIN_PRECISE_LITE_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/buildroot-external/package/python-precise-lite-runner/Config.in b/buildroot-external/package/python-precise-lite-runner/Config.in new file mode 100644 index 00000000..53f67476 --- /dev/null +++ b/buildroot-external/package/python-precise-lite-runner/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_PRECISE_LITE_RUNNER + bool "python-precise-lite-runner" + help + Precise-runner utilizing tflite-runtime + + https://github.com/OpenVoiceOS/precise_lite_runner diff --git a/buildroot-external/package/python-precise-lite-runner/python-precise-lite-runner.hash b/buildroot-external/package/python-precise-lite-runner/python-precise-lite-runner.hash new file mode 100644 index 00000000..3676da56 --- /dev/null +++ b/buildroot-external/package/python-precise-lite-runner/python-precise-lite-runner.hash @@ -0,0 +1,3 @@ +# md5, sha256 from https://pypi.org/pypi/precise-lite-runner/json +md5 f171749440a74d742f591dfed7c04fcd precise_lite_runner-0.3.3.tar.gz +sha256 0d46cf3fc587e77ec9c543f95a1aec36f0f19c527194df7076f5be27fb86a3b3 precise_lite_runner-0.3.3.tar.gz diff --git a/buildroot-external/package/python-precise-lite-runner/python-precise-lite-runner.mk b/buildroot-external/package/python-precise-lite-runner/python-precise-lite-runner.mk new file mode 100644 index 00000000..a3b819b0 --- /dev/null +++ b/buildroot-external/package/python-precise-lite-runner/python-precise-lite-runner.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-precise-lite-runner +# +################################################################################ + +PYTHON_PRECISE_LITE_RUNNER_VERSION = 0.3.3 +PYTHON_PRECISE_LITE_RUNNER_SOURCE = precise_lite_runner-$(PYTHON_PRECISE_LITE_RUNNER_VERSION).tar.gz +PYTHON_PRECISE_LITE_RUNNER_SITE = https://files.pythonhosted.org/packages/71/26/d798214472cd32f8803520672270123a00dfb6f4c6bbd8a3752c9aa411c9 +PYTHON_PRECISE_LITE_RUNNER_SETUP_TYPE = setuptools +PYTHON_PRECISE_LITE_RUNNER_LICENSE = + +$(eval $(python-package)) diff --git a/buildroot-external/package/python-pythran/Config.in b/buildroot-external/package/python-pythran/Config.in new file mode 100644 index 00000000..43cd188d --- /dev/null +++ b/buildroot-external/package/python-pythran/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PYTHON_PYTHRAN + bool "python-pythran" + select BR2_PACKAGE_PYTHON_BENIGET # runtime + select BR2_PACKAGE_PYTHON_GAST # runtime + select BR2_PACKAGE_PYTHON_NUMPY # runtime + select BR2_PACKAGE_PYTHON_PLY # runtime + help + Ahead of Time compiler for numeric kernels. + + https://github.com/serge-sans-paille/pythran diff --git a/buildroot-external/package/python-pythran/python-pythran.hash b/buildroot-external/package/python-pythran/python-pythran.hash new file mode 100644 index 00000000..60c2f4e2 --- /dev/null +++ b/buildroot-external/package/python-pythran/python-pythran.hash @@ -0,0 +1,6 @@ +# md5, sha256 from https://pypi.org/pypi/pythran/json +md5 08c93479623fe38ffe4e0e1b180434e3 pythran-0.10.0.tar.gz +sha256 9dac8e1d50f33d4676003e350b1f0c878ce113e6f907920e92dc103352cac5bf pythran-0.10.0.tar.gz +# Locally computed sha256 checksums +sha256 0be9f14c66a9a3cb66d5263a6495437862ce0c9cdf60d4a6c36d1e51b1244c6e LICENSE +sha256 e1c0ed0a99e4462016d79d835f1f479b78c4d4a07fe66598e97f449503ffd178 docs/LICENSE.rst diff --git a/buildroot-external/package/python-pythran/python-pythran.mk b/buildroot-external/package/python-pythran/python-pythran.mk new file mode 100644 index 00000000..fb519eee --- /dev/null +++ b/buildroot-external/package/python-pythran/python-pythran.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# python-pythran +# +################################################################################ + +PYTHON_PYTHRAN_VERSION = 0.10.0 +PYTHON_PYTHRAN_SOURCE = pythran-$(PYTHON_PYTHRAN_VERSION).tar.gz +PYTHON_PYTHRAN_SITE = https://files.pythonhosted.org/packages/c4/92/94b344b88bb010186caa65e5730509b4a6d2b1ab59e512ea11a2cbbb36fc +PYTHON_PYTHRAN_SETUP_TYPE = setuptools +PYTHON_PYTHRAN_LICENSE = FIXME: please specify the exact BSD version +PYTHON_PYTHRAN_LICENSE_FILES = LICENSE docs/LICENSE.rst + +$(eval $(python-package)) +$(eval $(host-python-package)) diff --git a/buildroot-external/package/python-scipy/Config.in b/buildroot-external/package/python-scipy/Config.in new file mode 100644 index 00000000..a9d9fa18 --- /dev/null +++ b/buildroot-external/package/python-scipy/Config.in @@ -0,0 +1,24 @@ +config BR2_PACKAGE_PYTHON_SCIPY + bool "python-scipy" + depends on BR2_TOOLCHAIN_HAS_FORTRAN + depends on BR2_PACKAGE_OPENBLAS_ARCH_SUPPORTS # build + depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS # python-numpy + depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy + select BR2_PACKAGE_OPENBLAS # build + select BR2_PACKAGE_CLAPACK # build + select BR2_PACKAGE_PYTHON_NUMPY # runtime + help + Scipy is a Python package that includes modules for + statistics, optimization, linear algebra and much + more. + + http://www.scipy.org/ + +comment "python-scipy needs toolchain with fortran" + depends on !BR2_TOOLCHAIN_HAS_FORTRAN + +comment "python-scipy needs lib openblas" + depends on !BR2_PACKAGE_OPENBLAS_ARCH_SUPPORTS + +comment "python-scipy needs python-numpy" + depends on !BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS diff --git a/buildroot-external/package/python-scipy/python-scipy.hash b/buildroot-external/package/python-scipy/python-scipy.hash new file mode 100644 index 00000000..918ed8cf --- /dev/null +++ b/buildroot-external/package/python-scipy/python-scipy.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 6b47d5fa7ea651054362561a28b1ccc8da9368a39514c1bbf6c0977a1c376764 scipy-1.7.1.tar.gz diff --git a/buildroot-external/package/python-scipy/python-scipy.mk b/buildroot-external/package/python-scipy/python-scipy.mk new file mode 100644 index 00000000..cb87bf8e --- /dev/null +++ b/buildroot-external/package/python-scipy/python-scipy.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# python-scipy +# +################################################################################ + +PYTHON_SCIPY_VERSION = 1.7.1 +PYTHON_SCIPY_SOURCE = scipy-$(PYTHON_SCIPY_VERSION).tar.gz +PYTHON_SCIPY_SITE = https://files.pythonhosted.org/packages/47/33/a24aec22b7be7fdb10ec117a95e1e4099890d8bbc6646902f443fc7719d1 +PYTHON_SCIPY_LICENSE = BSD-3-Clause +PYTHON_SCIPY_LICENSE_FILES = LICENSE.txt doc/sphinxext/LICENSE.txt \ + doc/scipy-sphinx-theme/LICENSE.txt +PYTHON_SCIPY_SETUP_TYPE = setuptools +PYTHON_SCIPY_DEPENDENCIES = clapack openblas host-python-numpy \ + host-python-pip host-python-pybind \ + host-python-pythran host-python-gast \ + host-python-beniget host-python-ply + +PYTHON_SCIPY_ENV += LDFLAGS="$(TARGET_LDFLAGS) -shared \ + -L$(PYTHON3_PATH)/site-packages/numpy/core/lib" + +# must be used to locate 'gfortran' +PYTHON_SCIPY_ENV += F90="$(TARGET_FC)" + +# trick to locate 'lapack' and 'blas' +define PYTHON_SCIPY_CONFIGURE_CMDS + rm -f $(@D)/site.cfg + echo "[DEFAULT]" >> $(@D)/site.cfg + echo "library_dirs = $(STAGING_DIR)/usr/lib" >> $(@D)/site.cfg + echo "include_dirs = $(STAGING_DIR)/usr/include" >> $(@D)/site.cfg +endef + +$(eval $(python-package)) diff --git a/buildroot-external/package/python-sonopy/Config.in b/buildroot-external/package/python-sonopy/Config.in new file mode 100644 index 00000000..69c1fbcc --- /dev/null +++ b/buildroot-external/package/python-sonopy/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_SONOPY + bool "python-sonopy" + select BR2_PACKAGE_PYTHON_NUMPY # runtime + select BR2_PACKAGE_PYTHON_SCIPY # runtime + help + A simple audio feature extraction library. + + https://github.com/mycroftai/sonopy diff --git a/buildroot-external/package/python-sonopy/python-sonopy.hash b/buildroot-external/package/python-sonopy/python-sonopy.hash new file mode 100644 index 00000000..66f81540 --- /dev/null +++ b/buildroot-external/package/python-sonopy/python-sonopy.hash @@ -0,0 +1,3 @@ +# md5, sha256 from https://pypi.org/pypi/sonopy/json +md5 38e80eb773174c199d06c0bc25cec3f3 sonopy-0.1.2.tar.gz +sha256 d7cd2c055bf5f1183bb4d28af3a1188554aa5c8f1bdf8e2e89042d233a870c45 sonopy-0.1.2.tar.gz diff --git a/buildroot-external/package/python-sonopy/python-sonopy.mk b/buildroot-external/package/python-sonopy/python-sonopy.mk new file mode 100644 index 00000000..d520be64 --- /dev/null +++ b/buildroot-external/package/python-sonopy/python-sonopy.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-sonopy +# +################################################################################ + +PYTHON_SONOPY_VERSION = 0.1.2 +PYTHON_SONOPY_SOURCE = sonopy-$(PYTHON_SONOPY_VERSION).tar.gz +PYTHON_SONOPY_SITE = https://files.pythonhosted.org/packages/2b/4d/862855fb391bc30351f90d6c50ea913df9d18b0ae3b6b8ef3c7aa3ac976f +PYTHON_SONOPY_SETUP_TYPE = setuptools +PYTHON_SONOPY_LICENSE = + +$(eval $(python-package)) diff --git a/buildroot-external/package/python-tflit/0001-Simplify-setup.patch b/buildroot-external/package/python-tflit/0001-Simplify-setup.patch new file mode 100644 index 00000000..00f9d6ad --- /dev/null +++ b/buildroot-external/package/python-tflit/0001-Simplify-setup.patch @@ -0,0 +1,62 @@ +From 24550245ce0ff45f15200b46f6ec79d392b88957 Mon Sep 17 00:00:00 2001 +From: Peter Steenbergen +Date: Thu, 23 Sep 2021 14:52:05 +0200 +Subject: [PATCH 1/1] Simplify setup + +--- + setup.py | 35 +++++++++-------------------------- + 1 file changed, 9 insertions(+), 26 deletions(-) + +diff --git a/setup.py b/setup.py +index 9a9cf4a..8b8dbba 100755 +--- a/setup.py ++++ b/setup.py +@@ -1,36 +1,19 @@ +-import sys +-import setuptools ++from setuptools import setup + +-USERNAME = 'beasteers' +-NAME = 'tflit' +-VERSION = '0.1.2' +- +- +-from tflit import tflite_install +-if not (len(sys.argv) > 1 and sys.argv[1] == 'sdist'): +- # from importlib.machinery import SourceFileLoader +- # version = SourceFileLoader('tflit.tflite_install', +- # 'tflit/tflite_install.py').load_module() +- tflite_install.check_install(verbose=True, upgrade=True) +- +-setuptools.setup( +- name=NAME, +- version=VERSION, ++setup( ++ name='tflit', ++ version='0.1.2', + description='tflite_runtime, but easier.', +- long_description=open('README.md').read().strip(), +- long_description_content_type='text/markdown', + author='Bea Steers', + author_email='bea.steers@gmail.com', +- url='https://github.com/{}/{}'.format(USERNAME, NAME), +- packages=setuptools.find_packages(), +- package_data={NAME: ['*/*.tflite']}, +- # entry_points={'console_scripts': ['{name}={name}:main'.format(name=NAME)]}, ++ packages=['tflit'], ++ url='https://github.com/beasteers/tflit', + install_requires=[ +- 'numpy', +- # 'tflite_runtime@{}'.format(tflite_install.get_tflite_url()) ++ 'numpy' + ], + extras_require={ + 'tests': ['pytest-cov'], + }, + license='MIT License', +- keywords='tflite runtime tensorflow keras deep machine learning model edge embedded compute cnn') ++ keywords='tflite runtime tensorflow keras deep machine learning model edge embedded compute cnn' ++) +-- +2.33.0 + diff --git a/buildroot-external/package/python-tflit/Config.in b/buildroot-external/package/python-tflit/Config.in new file mode 100644 index 00000000..78548f27 --- /dev/null +++ b/buildroot-external/package/python-tflit/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_TFLIT + bool "python-tflit" + help + tflite_runtime, but easier. + + https://github.com/beasteers/tflit diff --git a/buildroot-external/package/python-tflit/python-tflit.hash b/buildroot-external/package/python-tflit/python-tflit.hash new file mode 100644 index 00000000..914142df --- /dev/null +++ b/buildroot-external/package/python-tflit/python-tflit.hash @@ -0,0 +1,2 @@ +# sha256 from https://pypi.org/pypi/tflit/json +sha256 76a945d864558a5322e5aa892b1c091d9f0d038876f41904dff29532577ee610 tflit-0.1.2.tar.gz diff --git a/buildroot-external/package/python-tflit/python-tflit.mk b/buildroot-external/package/python-tflit/python-tflit.mk new file mode 100644 index 00000000..86d0b0cc --- /dev/null +++ b/buildroot-external/package/python-tflit/python-tflit.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# python-tflit +# +################################################################################ + +PYTHON_TFLIT_VERSION = 0.1.2 +PYTHON_TFLIT_SOURCE = tflit-$(PYTHON_TFLIT_VERSION).tar.gz +PYTHON_TFLIT_SITE = https://files.pythonhosted.org/packages/34/e2/cda67aa652074f760c9aa3e17929224a9b3c42187256c8cf366908ce3c34 +PYTHON_TFLIT_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/buildroot-external/rootfs-overlay/etc/mycroft/mycroft.conf b/buildroot-external/rootfs-overlay/etc/mycroft/mycroft.conf index 941c6ab5..6badeaef 100644 --- a/buildroot-external/rootfs-overlay/etc/mycroft/mycroft.conf +++ b/buildroot-external/rootfs-overlay/etc/mycroft/mycroft.conf @@ -14,11 +14,10 @@ }, "hotwords": { "hey mycroft": { - "module": "ovos-ww-plugin-precise", - "model": "~/.local/share/precise03/hey-mycroft.pb", + "module": "ovos-precise-lite", + "model": "~/.local/share/precise-lite/wakewords/en/hey_mycroft.tflite", "sensitivity": 0.5, "trigger_level": 3, - "version": 0.3, "expected_duration": 3, "phonemes": "HH EY . M AY K R AO F T", "threshold": 1e-90, diff --git a/buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/android.tflite b/buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/android.tflite new file mode 100644 index 0000000000000000000000000000000000000000..1814d7b9207163f8fb77ec08a40d7c3aa5ad8339 GIT binary patch literal 21888 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 G^8Wx7Y4UFX literal 0 HcmV?d00001 diff --git a/buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/computer.tflite b/buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/computer.tflite new file mode 100644 index 0000000000000000000000000000000000000000..531457434b71a18087cca81a013c31c15d536ddc GIT binary patch literal 21888 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 literal 0 HcmV?d00001 diff --git a/buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/hey_mycroft.tflite b/buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/hey_mycroft.tflite new file mode 100644 index 0000000000000000000000000000000000000000..507bf413e4845c69f91a854ba2056ad1b1e68c62 GIT binary patch literal 21888 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 literal 0 HcmV?d00001 diff --git a/buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/marvin.tflite b/buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/marvin.tflite new file mode 100644 index 0000000000000000000000000000000000000000..03494d02fcaf3aebcaa7366100bd87979a0499e1 GIT binary patch literal 21888 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 X3?3Rv$J|aLvvS*M8c~e+pQ8MK0Vn|_ literal 0 HcmV?d00001 diff --git a/buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/sheila.tflite b/buildroot-external/rootfs-overlay/home/mycroft/.local/share/precise-lite/wakewords/en/sheila.tflite new file mode 100644 index 0000000000000000000000000000000000000000..ca9df07ad0be9008fa3fa983102caa73317906cf GIT binary patch literal 21888 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 literal 0 HcmV?d00001 diff --git a/buildroot-patches/0018-Make-host-python-pip-available.patch b/buildroot-patches/0018-Make-host-python-pip-available.patch new file mode 100644 index 00000000..87e37d88 --- /dev/null +++ b/buildroot-patches/0018-Make-host-python-pip-available.patch @@ -0,0 +1,21 @@ +From abebe180993f9c578b74ac07e269baf8eef45cc4 Mon Sep 17 00:00:00 2001 +From: Peter Steenbergen +Date: Thu, 23 Sep 2021 08:44:38 +0200 +Subject: [PATCH 1/1] Make host-python-pip available + +--- + package/python-pip/python-pip.mk | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/package/python-pip/python-pip.mk b/package/python-pip/python-pip.mk +index 81fc87d5f0..d864a15e70 100644 +--- a/package/python-pip/python-pip.mk ++++ b/package/python-pip/python-pip.mk +@@ -14,3 +14,4 @@ PYTHON_PIP_CPE_ID_VENDOR = pypa + PYTHON_PIP_CPE_ID_PRODUCT = pip + + $(eval $(python-package)) ++$(eval $(host-python-package)) +-- +2.33.0 + diff --git a/buildroot-patches/0019-Make-host-python-pybind-available.patch b/buildroot-patches/0019-Make-host-python-pybind-available.patch new file mode 100644 index 00000000..60a72978 --- /dev/null +++ b/buildroot-patches/0019-Make-host-python-pybind-available.patch @@ -0,0 +1,21 @@ +From 42cd487bdaad006ba0a7792487a920c660e3d395 Mon Sep 17 00:00:00 2001 +From: Peter Steenbergen +Date: Thu, 23 Sep 2021 08:47:00 +0200 +Subject: [PATCH 1/1] Make host-python-pybind available + +--- + package/python-pybind/python-pybind.mk | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/package/python-pybind/python-pybind.mk b/package/python-pybind/python-pybind.mk +index a6a1bdb976..ec3a96ca64 100644 +--- a/package/python-pybind/python-pybind.mk ++++ b/package/python-pybind/python-pybind.mk +@@ -11,3 +11,4 @@ PYTHON_PYBIND_LICENSE_FILES = LICENSE + PYTHON_PYBIND_SETUP_TYPE = setuptools + + $(eval $(python-package)) ++$(eval $(host-python-package)) +-- +2.33.0 +