mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
hyperhdr: add addon and depends
Signed-off-by: Matthias Reichl <hias@horus.com>
This commit is contained in:
parent
93c0739ab8
commit
6dfa96ede9
@ -0,0 +1,12 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2025-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="hyperhdr-linalg"
|
||||
PKG_VERSION="4460f1f5b85ccc81ffcf49aa450d454db58ca90e"
|
||||
PKG_SHA256="fbeacd845a4121da101222112af45b2e7f4fb024ad627b4adc97aaaab2272ccb"
|
||||
PKG_LICENSE="Unlicense"
|
||||
PKG_SITE="https://github.com/sgorsten/linalg"
|
||||
PKG_URL="https://github.com/sgorsten/linalg/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="single header, public domain, short vector math library for C++"
|
||||
PKG_TOOLCHAIN="manual"
|
@ -0,0 +1,12 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2025-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="hyperhdr-lunasvg"
|
||||
PKG_VERSION="610b8bf5148a27489b4e3344b4f5617b81be38c7"
|
||||
PKG_SHA256="b71a1abf80cebf909da1b0e9bc86b8e10d0281851202785ecf04761229da8275"
|
||||
PKG_LICENSE="MIT"
|
||||
PKG_SITE="https://github.com/sammycage/lunasvg"
|
||||
PKG_URL="https://github.com/sammycage/lunasvg/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="Lightweight SVG rendering library in C++"
|
||||
PKG_TOOLCHAIN="manual"
|
@ -0,0 +1,12 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2025-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="hyperhdr-mdns"
|
||||
PKG_VERSION="1727be0602941a714cb6048a737f0584b1cebf3c"
|
||||
PKG_SHA256="e8559095ac179ca89fee6c2de6c24cf252538485c7521a50d4f36785e22c571e"
|
||||
PKG_LICENSE="Unlicense"
|
||||
PKG_SITE="https://github.com/mjansson/mdns"
|
||||
PKG_URL="https://github.com/mjansson/mdns/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="Public domain mDNS/DNS-SD library in C"
|
||||
PKG_TOOLCHAIN="manual"
|
@ -0,0 +1,12 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2025-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="hyperhdr-nanopb"
|
||||
PKG_VERSION="6cfe48d6f1593f8fa5c0f90437f5e6522587745e"
|
||||
PKG_SHA256="556899aeba86a151a0c27b85234cc1918b8278d90d482aaeb58207da5720dd4a"
|
||||
PKG_LICENSE="Zlib"
|
||||
PKG_SITE="https://github.com/nanopb/nanopb"
|
||||
PKG_URL="https://github.com/nanopb/nanopb/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="Protocol Buffers for Embedded Systems"
|
||||
PKG_TOOLCHAIN="manual"
|
@ -0,0 +1,12 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2025-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="hyperhdr-qmqtt"
|
||||
PKG_VERSION="6476bf68edc4840fbe4395838a27d1b06f9f84ec"
|
||||
PKG_SHA256="8a8dfdb77391a565cb086708557a4f96db4b8186cd316bca6e8fd1a41611bb7f"
|
||||
PKG_LICENSE="EPL-1.0"
|
||||
PKG_SITE="https://github.com/emqx/qmqtt"
|
||||
PKG_URL="https://github.com/emqx/qmqtt/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="MQTT client for Qt 5 in maintenance status"
|
||||
PKG_TOOLCHAIN="manual"
|
@ -0,0 +1,12 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2025-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="hyperhdr-sdbus-cpp"
|
||||
PKG_VERSION="b7d85f936d622299ee57966c2b2aefde5e4f3684"
|
||||
PKG_SHA256="1ab2c8b6ee551fe6cd5afe75660cf88ebf9094b1132a5823bb84a65a14fd821c"
|
||||
PKG_LICENSE="LGPL-2.1"
|
||||
PKG_SITE="https://github.com/Kistler-Group/sdbus-cpp"
|
||||
PKG_URL="https://github.com/Kistler-Group/sdbus-cpp/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="single-file public domain (or MIT licensed) libraries for C/C++"
|
||||
PKG_TOOLCHAIN="manual"
|
@ -0,0 +1,12 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2025-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="hyperhdr-stb"
|
||||
PKG_VERSION="f7f20f39fe4f206c6f19e26ebfef7b261ee59ee4"
|
||||
PKG_SHA256="76bbeda8d27488b8520e2c05b722c6f2500530ac41de3240d364a2ad800eb273"
|
||||
PKG_LICENSE="MIT"
|
||||
PKG_SITE="https://github.com/nothings/stb"
|
||||
PKG_URL="https://github.com/nothings/stb/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="single-file public domain (or MIT licensed) libraries for C/C++"
|
||||
PKG_TOOLCHAIN="manual"
|
BIN
packages/addons/service/hyperhdr/icon/icon.png
Normal file
BIN
packages/addons/service/hyperhdr/icon/icon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 10 KiB |
71
packages/addons/service/hyperhdr/package.mk
Normal file
71
packages/addons/service/hyperhdr/package.mk
Normal file
@ -0,0 +1,71 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2025-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="hyperhdr"
|
||||
PKG_VERSION="21.0.0.0beta2"
|
||||
PKG_SHA256="7ef919e10b903541f138685bb0fef0a14a4c2b36e925b61aceb9c76472385511"
|
||||
PKG_REV="0"
|
||||
PKG_LICENSE="MIT"
|
||||
PKG_SITE="https://github.com/awawa-dev/HyperHDR"
|
||||
PKG_URL="https://github.com/awawa-dev/HyperHDR/archive/v${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain flatbuffers:host alsa-lib libjpeg-turbo qt5 systemd rpi_ws281x zstd \
|
||||
hyperhdr-linalg hyperhdr-lunasvg hyperhdr-mdns hyperhdr-nanopb hyperhdr-qmqtt \
|
||||
hyperhdr-sdbus-cpp hyperhdr-stb"
|
||||
PKG_TOOLCHAIN="cmake"
|
||||
PKG_SECTION="service"
|
||||
PKG_SHORTDESC="HyperHDR: an ambient lighting controller"
|
||||
PKG_LONGDESC="HyperHDR (${PKG_VERSION}) is a highly optimized opensource ambient lighting implementation"
|
||||
PKG_BUILD_FLAGS="-sysroot"
|
||||
|
||||
PKG_IS_ADDON="yes"
|
||||
PKG_ADDON_NAME="HyperHDR"
|
||||
PKG_ADDON_TYPE="xbmc.service"
|
||||
|
||||
if [ "${PROJECT}" = "ARM" -o "${PROJECT}" = "RPi" ]; then
|
||||
PKG_WS281X="-DENABLE_WS281XPWM=ON"
|
||||
else
|
||||
PKG_WS281X="-DENABLE_WS281XPWM=OFF"
|
||||
fi
|
||||
|
||||
PKG_CMAKE_OPTS_TARGET="-DCMAKE_NO_SYSTEM_FROM_IMPORTED=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DENABLE_CEC=OFF \
|
||||
-DENABLE_FRAMEBUFFER=OFF \
|
||||
-DENABLE_PIPEWIRE=OFF \
|
||||
-DENABLE_POWER_MANAGEMENT=ON \
|
||||
-DENABLE_SYSTRAY=OFF \
|
||||
-DENABLE_X11=OFF \
|
||||
-DENABLE_ZSTD=ON \
|
||||
${PKG_WS281X} \
|
||||
-DPLATFORM=linux \
|
||||
-DUSE_CCACHE_CACHING=OFF \
|
||||
-DUSE_PRECOMPILED_HEADERS=OFF \
|
||||
-DUSE_SHARED_LIBS=OFF \
|
||||
-DUSE_STATIC_QT_PLUGINS=ON \
|
||||
-DUSE_SYSTEM_FLATBUFFERS_LIBS=OFF \
|
||||
-DFLATBUFFERS_FLATC_EXECUTABLE=${TOOLCHAIN}/bin/flatc \
|
||||
-Wno-dev"
|
||||
|
||||
pre_configure_target() {
|
||||
pkg_flatbuffers_version=$(get_pkg_version flatbuffers)
|
||||
tar --strip-components=1 -xf "${SOURCES}/flatbuffers/flatbuffers-${pkg_flatbuffers_version}.tar.gz" -C "${PKG_BUILD}/external/flatbuffers"
|
||||
cp -a $(get_build_dir rpi_ws281x)/* ${PKG_BUILD}/external/rpi_ws281x
|
||||
cp -a $(get_build_dir hyperhdr-lunasvg)/* ${PKG_BUILD}/external/lunasvg
|
||||
cp -a $(get_build_dir hyperhdr-nanopb)/* ${PKG_BUILD}/external/nanopb
|
||||
cp -a $(get_build_dir hyperhdr-stb)/* ${PKG_BUILD}/external/stb
|
||||
cp -a $(get_build_dir hyperhdr-linalg)/* ${PKG_BUILD}/external/linalg
|
||||
cp -a $(get_build_dir hyperhdr-mdns)/* ${PKG_BUILD}/external/mdns
|
||||
cp -a $(get_build_dir hyperhdr-qmqtt)/* ${PKG_BUILD}/external/qmqtt
|
||||
cp -a $(get_build_dir hyperhdr-sdbus-cpp)/* ${PKG_BUILD}/external/sdbus-cpp
|
||||
}
|
||||
|
||||
|
||||
addon() {
|
||||
mkdir -p ${ADDON_BUILD}/${PKG_ADDON_ID}/bin
|
||||
cp ${PKG_INSTALL}/usr/share/hyperhdr/bin/hyperhdr ${ADDON_BUILD}/${PKG_ADDON_ID}/bin
|
||||
|
||||
patchelf --add-rpath '$ORIGIN/../lib.private' ${ADDON_BUILD}/${PKG_ADDON_ID}/bin/hyperhdr
|
||||
|
||||
mkdir -p ${ADDON_BUILD}/${PKG_ADDON_ID}/lib.private
|
||||
cp -p $(get_install_dir zstd)/usr/lib/libzstd.so.1 ${ADDON_BUILD}/${PKG_ADDON_ID}/lib.private
|
||||
}
|
10
packages/addons/service/hyperhdr/source/bin/hyperhdr.start
Normal file
10
packages/addons/service/hyperhdr/source/bin/hyperhdr.start
Normal file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2025-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
. /etc/profile
|
||||
|
||||
oe_setup_addon service.hyperhdr
|
||||
|
||||
exec hyperhdr --userdata "${ADDON_HOME}"
|
7
packages/addons/service/hyperhdr/source/default.py
Normal file
7
packages/addons/service/hyperhdr/source/default.py
Normal file
@ -0,0 +1,7 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2025-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
import xbmc
|
||||
|
||||
monitor = xbmc.Monitor()
|
||||
monitor.waitForAbort()
|
BIN
packages/addons/service/hyperhdr/source/resources/screenshot-01.png
Executable file
BIN
packages/addons/service/hyperhdr/source/resources/screenshot-01.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 625 KiB |
@ -0,0 +1,13 @@
|
||||
[Unit]
|
||||
Description=HyperHDR service
|
||||
After=graphical.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/bin/sh -c "exec sh /storage/.kodi/addons/service.hyperhdr/bin/hyperhdr.start"
|
||||
TimeoutStopSec=2
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
StartLimitInterval=0
|
||||
|
||||
[Install]
|
||||
WantedBy=default.target
|
Loading…
x
Reference in New Issue
Block a user