Add new packages for various VDR plugins and dependencies

- Introduced tntnet package for web application server in C++.
- Added libuv, a multi-platform support library for asynchronous I/O.
- Included libwebsockets for implementing network protocols.
- Added multiple VDR plugins:
  - vdr-plugin-ddci2 for CI support
  - vdr-plugin-dummydevice for recording server without output devices
  - vdr-plugin-dvbapi for OSCam integration
  - vdr-plugin-eepg for parsing Extended EPG data
  - vdr-plugin-epgfixer for modifying EPG data
  - vdr-plugin-epgsearch for searching EPG data
  - vdr-plugin-iptv for IPTV support
  - vdr-plugin-live for web interface operation
  - vdr-plugin-restfulapi for RESTful API access
  - vdr-plugin-robotv for Android TV frontend
  - vdr-plugin-satip for SAT>IP support
  - vdr-plugin-streamdev for video transfer and HTTP streaming
  - vdr-plugin-vnsiserver for Kodi client handling
  - vdr-plugin-wirbelscan for channel scanning
  - vdr-plugin-wirbelscancontrol for menu entry in VDR
  - vdr-plugin-xmltv2vdr for importing XMLTV data
- Added main VDR package for DVB TV server application.
This commit is contained in:
Douglas Teles
2026-03-25 15:30:17 -03:00
parent 63e95ff979
commit 8c997f3dd9
197 changed files with 4850 additions and 0 deletions
@@ -0,0 +1,15 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="argtable2"
PKG_VERSION="2.13"
PKG_SHA256="8f77e8a7ced5301af6e22f47302fdbc3b1ff41f2b83c43c77ae5ca041771ddbf"
PKG_LICENSE="BSD"
PKG_SITE="http://argtable.sourceforge.net/"
PKG_URL="https://downloads.sourceforge.net/project/argtable/argtable/argtable-${PKG_VERSION}/argtable2-${PKG_VERSION:2:4}.tar.gz"
PKG_DEPENDS_TARGET="toolchain"
PKG_LONGDESC="Argtable is an open source ANSI C library that parses GNU-style command-line options."
PKG_TOOLCHAIN="autotools"
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared"
@@ -0,0 +1,24 @@
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="ccid"
PKG_VERSION="1.6.2"
PKG_SHA256="41958410950157e622f9d91c9e78c7b708db74e22f71190c581d24d20564d449"
PKG_LICENSE="LGPL"
PKG_SITE="https://ccid.apdu.fr"
PKG_URL="https://ccid.apdu.fr/files/${PKG_NAME}-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain pcsc-lite"
PKG_LONGDESC="A generic USB Chip/Smart Card Interface Devices driver."
PKG_TOOLCHAIN="autotools"
PKG_CONFIGURE_OPTS_TARGET="--enable-static --enable-twinserial"
post_configure_target() {
libtool_remove_rpath libtool
}
make_target() {
make
make -C src/ Info.plist
}
@@ -0,0 +1,32 @@
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2017 Escalade
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="at-spi2-core"
PKG_VERSION="2.57.0"
PKG_SHA256="942070eff19155b7d6ce5557f1a020015287b840048536e9ef9a28c4e9ce428c"
PKG_LICENSE="OSS"
PKG_SITE="https://www.gnome.org/"
PKG_URL="https://download.gnome.org/sources/at-spi2-core/${PKG_VERSION:0:4}/at-spi2-core-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain atk dbus glib libxml2"
PKG_LONGDESC="Protocol definitions and daemon for D-Bus at-spi."
configure_package() {
# Build with x11 support
if [ ${DISPLAYSERVER} = "x11" ]; then
PKG_DEPENDS_TARGET+=" libXtst"
fi
}
pre_configure_target() {
PKG_MESON_OPTS_TARGET="-Ddocs=false \
-Dintrospection=disabled \
-Ddbus_daemon=/usr/bin/dbus-daemon"
if [ ${DISPLAYSERVER} = "x11" ]; then
PKG_MESON_OPTS_TARGET+="-Dx11=true"
TARGET_LDFLAGS="${LDFLAGS} -lXext"
else
PKG_MESON_OPTS_TARGET+="-Dx11=false"
fi
}
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
. $(get_pkg_directory libXcomposite)/package.mk
PKG_NAME="chrome-libXcomposite"
PKG_LONGDESC="libXcomposite for chrome"
PKG_URL=""
PKG_DEPENDS_UNPACK+=" libXcomposite"
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="${PKG_CONFIGURE_OPTS_TARGET} \
--disable-static \
--enable-shared"
unpack() {
mkdir -p ${PKG_BUILD}
tar --strip-components=1 -xf ${SOURCES}/${PKG_NAME:7}/${PKG_NAME:7}-${PKG_VERSION}.tar.xz -C ${PKG_BUILD}
}
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
. $(get_pkg_directory libXdamage)/package.mk
PKG_NAME="chrome-libXdamage"
PKG_LONGDESC="libXdamage for chrome"
PKG_URL=""
PKG_DEPENDS_UNPACK+=" libXdamage"
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="${PKG_CONFIGURE_OPTS_TARGET} \
--disable-static \
--enable-shared"
unpack() {
mkdir -p ${PKG_BUILD}
tar --strip-components=1 -xf ${SOURCES}/${PKG_NAME:7}/${PKG_NAME:7}-${PKG_VERSION}.tar.xz -C ${PKG_BUILD}
}
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
. $(get_pkg_directory libXfixes)/package.mk
PKG_NAME="chrome-libXfixes"
PKG_LONGDESC="libXfixes for chrome"
PKG_URL=""
PKG_DEPENDS_UNPACK+=" libXfixes"
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="${PKG_CONFIGURE_OPTS_TARGET} \
--disable-static \
--enable-shared"
unpack() {
mkdir -p ${PKG_BUILD}
tar --strip-components=1 -xf ${SOURCES}/${PKG_NAME:7}/${PKG_NAME:7}-${PKG_VERSION}.tar.xz -C ${PKG_BUILD}
}
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
. $(get_pkg_directory libXi)/package.mk
PKG_NAME="chrome-libXi"
PKG_LONGDESC="libXi for chrome"
PKG_URL=""
PKG_DEPENDS_UNPACK+=" libXi"
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="${PKG_CONFIGURE_OPTS_TARGET} \
--disable-static \
--enable-shared"
unpack() {
mkdir -p ${PKG_BUILD}
tar --strip-components=1 -xf ${SOURCES}/${PKG_NAME:7}/${PKG_NAME:7}-${PKG_VERSION}.tar.xz -C ${PKG_BUILD}
}
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
. $(get_pkg_directory libXrender)/package.mk
PKG_NAME="chrome-libXrender"
PKG_LONGDESC="libXrender for chrome"
PKG_URL=""
PKG_DEPENDS_UNPACK+=" libXrender"
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="${PKG_CONFIGURE_OPTS_TARGET} \
--disable-static \
--enable-shared"
unpack() {
mkdir -p ${PKG_BUILD}
tar --strip-components=1 -xf ${SOURCES}/${PKG_NAME:7}/${PKG_NAME:7}-${PKG_VERSION}.tar.xz -C ${PKG_BUILD}
}
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
. $(get_pkg_directory libXtst)/package.mk
PKG_NAME="chrome-libXtst"
PKG_LONGDESC="libXtst for chrome"
PKG_URL=""
PKG_DEPENDS_UNPACK+=" libXtst"
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="${PKG_CONFIGURE_OPTS_TARGET} \
--disable-static \
--enable-shared"
unpack() {
mkdir -p ${PKG_BUILD}
tar --strip-components=1 -xf ${SOURCES}/${PKG_NAME:7}/${PKG_NAME:7}-${PKG_VERSION}.tar.xz -C ${PKG_BUILD}
}
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
. $(get_pkg_directory libxcb)/package.mk
PKG_NAME="chrome-libxcb"
PKG_LONGDESC="libxcb for chrome"
PKG_URL=""
PKG_DEPENDS_UNPACK+=" libxcb"
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="${PKG_CONFIGURE_OPTS_TARGET} \
--disable-static \
--enable-shared"
unpack() {
mkdir -p ${PKG_BUILD}
tar --strip-components=1 -xf ${SOURCES}/${PKG_NAME:7}/${PKG_NAME:7}-${PKG_VERSION}.tar.xz -C ${PKG_BUILD}
}
@@ -0,0 +1,15 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2020-present Team LibreELEC (https://libreelec.tv)
. $(get_pkg_directory libxkbcommon)/package.mk
PKG_NAME="chrome-libxkbcommon"
PKG_LONGDESC="libxkbcommon for chrome"
PKG_URL=""
PKG_DEPENDS_UNPACK+=" libxkbcommon"
PKG_BUILD_FLAGS="-sysroot"
unpack() {
mkdir -p ${PKG_BUILD}
tar --strip-components=1 -xf ${SOURCES}/${PKG_NAME:7}/${PKG_NAME:7}-${PKG_VERSION}.tar.gz -C ${PKG_BUILD}
}
@@ -0,0 +1,19 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2021-present Team LibreELEC (https://libreelec.tv)
. $(get_pkg_directory libxshmfence)/package.mk
PKG_NAME="chrome-libxshmfence"
PKG_LONGDESC="libxshmfence for chrome"
PKG_URL=""
PKG_DEPENDS_UNPACK+=" libxshmfence"
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="${PKG_CONFIGURE_OPTS_TARGET} \
--disable-static \
--enable-shared"
unpack() {
mkdir -p ${PKG_BUILD}
tar --strip-components=1 -xf ${SOURCES}/${PKG_NAME:7}/${PKG_NAME:7}-${PKG_VERSION}.tar.xz -C ${PKG_BUILD}
}
@@ -0,0 +1,37 @@
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2017 Escalade
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="gtk3"
PKG_VERSION="3.24.49"
PKG_SHA256="5ea52c6a28f0e5ecf2e9a3c2facbb30d040b73871fcd5f33cd1317e9018a146e"
PKG_LICENSE="LGPL"
PKG_SITE="https://www.gtk.org/"
PKG_URL="https://download.gnome.org/sources/gtk/${PKG_VERSION:0:4}/gtk-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain at-spi2-core atk cairo gdk-pixbuf glib libX11 libXi libXrandr libepoxy pango libxkbcommon"
PKG_DEPENDS_CONFIG="libXft pango gdk-pixbuf shared-mime-info"
PKG_LONGDESC="A library for creating graphical user interfaces for the X Window System."
PKG_BUILD_FLAGS="-sysroot"
PKG_MESON_OPTS_TARGET="-Dbroadway_backend=false \
-Dcloudproviders=false \
-Dcolord=no \
-Ddemos=false \
-Dexamples=false \
-Dgtk_doc=false \
-Dintrospection=false \
-Dman=false \
-Dprint_backends=file,lpr \
-Dquartz_backend=false \
-Dtests=false \
-Dwayland_backend=false \
-Dwin32_backend=false \
-Dxinerama=no \
-Dbuiltin_immodules=yes \
-Dx11_backend=true"
pre_configure_target() {
# ${TOOLCHAIN}/bin/glib-compile-resources requires ${TOOLCHAIN}/lib/libffi.so.6
export LD_LIBRARY_PATH="${TOOLCHAIN}/lib:${LD_LIBRARY_PATH}"
export GLIB_COMPILE_RESOURCES=glib-compile-resources GLIB_MKENUMS=glib-mkenums GLIB_GENMARSHAL=glib-genmarshal
}
@@ -0,0 +1,28 @@
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
. $(get_pkg_directory harfbuzz)/package.mk
PKG_NAME="harfbuzz-icu"
PKG_URL=""
PKG_DEPENDS_TARGET+=" icu"
PKG_LONGDESC="HarfBuzz with icu"
PKG_DEPENDS_CONFIG="icu"
PKG_DEPENDS_UNPACK+=" harfbuzz"
PKG_BUILD_FLAGS="-sysroot"
PKG_MESON_OPTS_TARGET="-Dbenchmark=disabled \
-Dcairo=enabled \
-Ddocs=disabled \
-Dfreetype=enabled \
-Dglib=enabled \
-Dgobject=disabled \
-Dgraphite=disabled \
-Dicu=enabled \
-Dtests=disabled"
unpack() {
mkdir -p ${PKG_BUILD}
tar --strip-components=1 -xf ${SOURCES}/${PKG_NAME:0:8}/${PKG_NAME:0:8}-${PKG_VERSION}.tar.xz -C ${PKG_BUILD}
}
@@ -0,0 +1,17 @@
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libXScrnSaver"
PKG_VERSION="1.2.4"
PKG_SHA256="75cd2859f38e207a090cac980d76bc71e9da99d48d09703584e00585abc920fe"
PKG_LICENSE="GPL"
PKG_SITE="https://xorg.freedesktop.org/"
PKG_URL="https://xorg.freedesktop.org/releases/individual/lib/libXScrnSaver-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain libXext scrnsaverproto"
PKG_LONGDESC="X11 Screen Saver extension client library."
PKG_BUILD_FLAGS="-sysroot"
PKG_CONFIGURE_OPTS_TARGET="--disable-static \
--enable-shared \
--enable-malloc0returnsnull"
@@ -0,0 +1,17 @@
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libXcursor"
PKG_VERSION="1.2.3"
PKG_SHA256="fde9402dd4cfe79da71e2d96bb980afc5e6ff4f8a7d74c159e1966afb2b2c2c0"
PKG_LICENSE="OSS"
PKG_SITE="http://www.X.org"
PKG_URL="https://xorg.freedesktop.org/archive/individual/lib/libXcursor-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain libX11 libXfixes libXrender"
PKG_LONGDESC="X11 Cursor management library.s"
PKG_BUILD_FLAGS="+pic -sysroot"
post_configure_target() {
libtool_remove_rpath libtool
}
@@ -0,0 +1,18 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libxss"
PKG_VERSION="1.2.4"
PKG_SHA256="75cd2859f38e207a090cac980d76bc71e9da99d48d09703584e00585abc920fe"
PKG_LICENSE="OSS"
PKG_SITE="https://www.X.org"
PKG_URL="https://xorg.freedesktop.org/archive/individual/lib/libXScrnSaver-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain util-macros libXext scrnsaverproto"
PKG_LONGDESC="X11 Screen Saver extension library."
PKG_BUILD_FLAGS="+pic -sysroot"
PKG_CONFIGURE_OPTS_TARGET="--enable-malloc0returnsnull"
post_configure_target() {
libtool_remove_rpath libtool
}
@@ -0,0 +1,13 @@
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="scrnsaverproto"
PKG_VERSION="1.2.2"
PKG_SHA256="8bb70a8da164930cceaeb4c74180291660533ad3cc45377b30a795d1b85bcd65"
PKG_LICENSE="GPL"
PKG_SITE="http://xorg.freedesktop.org/"
PKG_URL="https://xorg.freedesktop.org/releases/individual/proto/scrnsaverproto-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain"
PKG_LONGDESC="X11 Screen Saver extension wire protocol."
PKG_BUILD_FLAGS="-sysroot"
@@ -0,0 +1,21 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="unclutter"
PKG_VERSION="1.09"
PKG_SHA256="3a53575fe2a75a34bc9a2b0ad92ee0f8a7dbedc05d8783f191c500060a40a9bd"
PKG_LICENSE="Public Domain"
PKG_SITE="https://sourceforge.net/projects/unclutter/"
PKG_URL="https://sourceforge.net/projects/unclutter/unclutter/source_${PKG_VERSION}/unclutter-${PKG_VERSION}.tar.gz"
PKG_DEPENDS_TARGET="toolchain libX11"
PKG_LONGDESC="Unclutter runs in the background of an X11 session and hides the X11 Cursor."
make_target() {
rm -f Makefile
LDFLAGS="${LDFLAGS} -lX11" ${MAKE} unclutter
}
makeinstall_target() {
mkdir -p ${INSTALL}/usr/bin
install -m 755 unclutter ${INSTALL}/usr/bin/
}
@@ -0,0 +1,11 @@
# SPDX-License-Identifier: GPL-2.0-only
# Copyright (C) 2022-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="unix_ar"
PKG_VERSION="0.2.1"
PKG_SHA256="4e1c6e8fe5255b7babe93b9af51532ba09c6946eee413c5db00cab3878d7ed2f"
PKG_LICENSE="BSD 3-Clause"
PKG_SITE="https://github.com/getninjas/unix_ar"
PKG_URL="https://github.com/getninjas/unix_ar/archive/refs/tags/${PKG_VERSION}.tar.gz"
PKG_TOOLCHAIN="manual"
PKG_LONGDESC="Python: This packages allows the reading and writing of AR archive files."

Some files were not shown because too many files have changed in this diff Show More