mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 13:46:49 +00:00
Merge pull request #2738 from awiouy/90-netcore-21
dotnet-runtime: initial addon
This commit is contained in:
commit
6f85bffb06
@ -0,0 +1,22 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
. $(get_pkg_directory curl)/package.mk
|
||||
|
||||
PKG_NAME="curl3"
|
||||
PKG_URL=""
|
||||
PKG_LONGDESC="curl for dotnet"
|
||||
|
||||
unpack() {
|
||||
mkdir -p $PKG_BUILD
|
||||
cp -r $(get_build_dir curl)/* $PKG_BUILD
|
||||
sed -i 's/CURL_@CURL_LT_SHLIB_VERSIONED_FLAVOUR@4/CURL_@CURL_LT_SHLIB_VERSIONED_FLAVOUR@3/g' $PKG_BUILD/lib/libcurl.vers.in
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
:
|
||||
}
|
||||
|
||||
post_makeinstall_target() {
|
||||
:
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="krb5"
|
||||
PKG_VERSION="1.16.1-final"
|
||||
PKG_SHA256="d46a676bd6cfe58b8684ffd881bc7ed2c9c90cb43ccfa45a9500530e84aa262b"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="MIT"
|
||||
PKG_SITE="http://web.mit.edu/kerberos/"
|
||||
PKG_URL="https://github.com/krb5/krb5/archive/krb5-$PKG_VERSION.tar.gz"
|
||||
PKG_SOURCE_DIR="krb5-krb5-$PKG_VERSION"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="The Kerberos network authentication protocol"
|
||||
PKG_TOOLCHAIN="autotools"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_regcomp=yes \
|
||||
ac_cv_printf_positional=yes \
|
||||
krb5_cv_attr_constructor_destructor=yes,yes"
|
||||
|
||||
post_unpack() {
|
||||
rm -rf $PKG_BUILD/doc
|
||||
mv $PKG_BUILD/src/* $PKG_BUILD
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="lttng-ust"
|
||||
PKG_VERSION="2.10.1"
|
||||
PKG_SHA256="8503bb36c95fc3473eb6323b84645e9d95ff52758ad199d2fe7ca80277f81b95"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="LGPLv2.1"
|
||||
PKG_SITE="https://lttng.org/"
|
||||
PKG_URL="https://github.com/lttng/lttng-ust/archive/v$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain userspace-rcu"
|
||||
PKG_LONGDESC="LTTng is an open source tracing framework for Linux"
|
||||
PKG_TOOLCHAIN="autotools"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="--disable-man-pages"
|
@ -0,0 +1,20 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="userspace-rcu"
|
||||
PKG_VERSION="0.10.1"
|
||||
PKG_SHA256="4ddbca9927b459b7a295dec612cf43df5886d398161d50c59d0097995e368a3b"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="LGPLv2.1"
|
||||
PKG_SITE="http://liburcu.org"
|
||||
PKG_URL="https://github.com/urcu/userspace-rcu/archive/v$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="userspace read-copy-update library"
|
||||
PKG_TOOLCHAIN="autotools"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="--disable-shared \
|
||||
--enable-static"
|
||||
|
||||
pre_configure_target() {
|
||||
CFLAGS="$CFLAGS -fPIC"
|
||||
}
|
@ -2,23 +2,18 @@
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="imagemagick"
|
||||
PKG_VERSION="7.0.7-32"
|
||||
PKG_SHA256="f1785adf8bbf378b47e789c74c2fd9ebdd5ec1c4de12e53306f8f6eb5b55d656"
|
||||
PKG_VERSION="7.0.8-6"
|
||||
PKG_SHA256="17320a2019c89c1dc6de15e36ef5455a1a023ad2dc729823c2041acdea5f38ba"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="http://www.imagemagick.org/script/license.php"
|
||||
PKG_SITE="http://www.imagemagick.org/"
|
||||
PKG_URL="https://github.com/ImageMagick/ImageMagick/archive/$PKG_VERSION.tar.gz"
|
||||
PKG_SOURCE_DIR="ImageMagick-$PKG_VERSION"
|
||||
PKG_DEPENDS_TARGET="toolchain libX11"
|
||||
PKG_SECTION="graphics"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="Software suite to create, edit, compose, or convert bitmap images"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="--enable-static \
|
||||
PKG_CONFIGURE_OPTS_TARGET="--disable-openmp \
|
||||
--disable-static \
|
||||
--enable-shared \
|
||||
--with-quantum-depth=8 \
|
||||
--enable-hdri=no \
|
||||
--disable-openmp"
|
||||
|
||||
makeinstall_target() {
|
||||
make install DESTDIR=$INSTALL
|
||||
}
|
||||
--with-utilities=no \
|
||||
--with-x=no"
|
||||
|
@ -1,3 +1,6 @@
|
||||
121
|
||||
- Update to 3.5.1.0 for netcore
|
||||
|
||||
120
|
||||
- Use ffmpeg instead of ffmpegx
|
||||
|
||||
|
@ -2,13 +2,14 @@
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="emby"
|
||||
PKG_VERSION="3.4.1.6"
|
||||
PKG_SHA256="8eb129f538cefec612239932fd85ddc6bd5221cd97613e142f41f2126412ea04"
|
||||
PKG_REV="120"
|
||||
PKG_VERSION="3.5.1.0"
|
||||
PKG_SHA256="378c2b23f9c7359434c7790581b885b2c8c526ba3377502b86260b18b927e48c"
|
||||
PKG_REV="121"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="OSS"
|
||||
PKG_SITE="http://emby.media"
|
||||
PKG_URL="https://github.com/MediaBrowser/Emby/releases/download/$PKG_VERSION/Emby.Mono.zip"
|
||||
PKG_URL="https://github.com/MediaBrowser/Emby.Releases/releases/download/$PKG_VERSION/embyserver-netcore_$PKG_VERSION.zip"
|
||||
PKG_SOURCE_DIR="system"
|
||||
PKG_DEPENDS_TARGET="toolchain imagemagick"
|
||||
PKG_SECTION="service"
|
||||
PKG_SHORTDESC="Emby Server: a personal media server"
|
||||
@ -18,26 +19,17 @@ PKG_TOOLCHAIN="manual"
|
||||
PKG_IS_ADDON="yes"
|
||||
PKG_ADDON_NAME="Emby Server"
|
||||
PKG_ADDON_TYPE="xbmc.service"
|
||||
PKG_ADDON_REQUIRES="tools.ffmpeg-tools:0.0.0 tools.mono:0.0.0"
|
||||
PKG_ADDON_REQUIRES="tools.ffmpeg-tools:0.0.0 tools.dotnet-runtime:0.0.0"
|
||||
PKG_MAINTAINER="Anton Voyl (awiouy)"
|
||||
|
||||
unpack() {
|
||||
mkdir -p $PKG_BUILD
|
||||
}
|
||||
|
||||
addon() {
|
||||
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/Emby.Mono
|
||||
unzip -q $SOURCES/$PKG_NAME/$PKG_SOURCE_NAME \
|
||||
-d $ADDON_BUILD/$PKG_ADDON_ID/Emby.Mono
|
||||
|
||||
sed -i 's/libMagickWand-6./libMagickWand-7./g' \
|
||||
$ADDON_BUILD/$PKG_ADDON_ID/Emby.Mono/ImageMagickSharp.dll.config
|
||||
|
||||
sed -i 's/libsqlite3.so/libsqlite3.so.0/g' \
|
||||
$ADDON_BUILD/$PKG_ADDON_ID/Emby.Mono/SQLitePCLRaw.provider.sqlite3.dll.config
|
||||
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/emby
|
||||
cp -r $PKG_BUILD/* \
|
||||
-d $ADDON_BUILD/$PKG_ADDON_ID/emby
|
||||
|
||||
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/lib
|
||||
cp -L $(get_build_dir imagemagick)/.install_pkg/usr/lib/libMagickCore-7.Q8.so.? \
|
||||
$(get_build_dir imagemagick)/.install_pkg/usr/lib/libMagickWand-7.Q8.so \
|
||||
cp -L $(get_build_dir imagemagick)/.install_pkg/usr/lib/libMagickCore-7.Q16HDRI.so.? \
|
||||
$ADDON_BUILD/$PKG_ADDON_ID/lib/
|
||||
cp -L $(get_build_dir imagemagick)/.install_pkg/usr/lib/libMagickWand-7.Q16HDRI.so \
|
||||
$ADDON_BUILD/$PKG_ADDON_ID/lib/CORE_RL_Wand_.so
|
||||
}
|
||||
|
@ -1,53 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
. /etc/profile
|
||||
oe_setup_addon service.emby
|
||||
|
||||
# set version to use
|
||||
if [ -z "$1" ]; then
|
||||
# if no input
|
||||
echo -e "\nUsage:"
|
||||
echo -e "${0##*/} 3.4.1.0"
|
||||
echo -e "${0##*/} latest"
|
||||
echo -e "\n====== last releases ======"
|
||||
curl --silent "https://api.github.com/repos/MediaBrowser/Emby/releases" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/' | head -n 20
|
||||
echo -e "==========================="
|
||||
exit 0
|
||||
|
||||
# if input = latest
|
||||
elif [ "$1" = "latest" ]; then
|
||||
EMBY_VERSION=$(curl --silent "https://api.github.com/repos/MediaBrowser/Emby/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
|
||||
echo "latest is $EMBY_VERSION"
|
||||
read -p "continue (y/n)? " EMBY_CONT
|
||||
if [ $EMBY_CONT = "Y" ] || [ $EMBY_CONT = "y" ]; then
|
||||
echo ""
|
||||
else
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# if input = 1.2.3.4
|
||||
else
|
||||
EMBY_VERSION="$1"
|
||||
fi
|
||||
|
||||
echo "1. stopping Emby service" && sleep 1
|
||||
systemctl stop service.emby
|
||||
|
||||
echo "2. download Emby version $EMBY_VERSION" && sleep 1
|
||||
rm -f /storage/.kodi/temp/Emby.Mono.zip
|
||||
curl --progress-bar --fail -L -o /storage/.kodi/temp/Emby.Mono.zip https://github.com/MediaBrowser/Emby/releases/download/$EMBY_VERSION/Emby.Mono.zip || exit 1
|
||||
|
||||
echo "3. removing old install" && sleep 1
|
||||
rm -rf $ADDON_DIR/Emby/system/*
|
||||
|
||||
echo "4. extracting Emby" && sleep 1
|
||||
unzip -q /storage/.kodi/temp/Emby.Mono.zip -d $ADDON_DIR/Emby/system
|
||||
|
||||
echo "5. restarting Emby service" && sleep 1
|
||||
systemctl start service.emby
|
||||
|
||||
echo "... done"
|
||||
exit 0
|
@ -6,13 +6,7 @@
|
||||
. /etc/profile
|
||||
oe_setup_addon service.emby
|
||||
|
||||
chmod +x $ADDON_DIR/bin/*
|
||||
mkdir -p $ADDON_HOME
|
||||
|
||||
if [ "$emby_ffmpeg" != "false" ]
|
||||
then
|
||||
emby_flags="-ffmpeg /storage/.kodi/addons/tools.ffmpeg-tools/bin/ffmpeg -ffprobe /storage/.kodi/addons/tools.ffmpeg-tools/bin/ffprobe"
|
||||
fi
|
||||
|
||||
mono $ADDON_DIR/Emby.Mono/MediaBrowser.Server.Mono.exe -programdata $ADDON_HOME \
|
||||
$emby_flags
|
||||
LD_PRELOAD="$ADDON_DIR/lib/libMagickCore-7.Q16HDRI.so.6 \
|
||||
$ADDON_DIR/lib/CORE_RL_Wand_.so" \
|
||||
nice -n "$emby_nice" \
|
||||
le_dotnet $ADDON_DIR/emby/EmbyServer.dll -programdata $ADDON_HOME
|
||||
|
@ -16,5 +16,5 @@ class Monitor(xbmc.Monitor):
|
||||
subprocess.call(['systemctl', 'restart', self.id])
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
if __name__ == '__main__':
|
||||
Monitor().waitForAbort()
|
||||
|
@ -10,5 +10,5 @@ msgid "Configuration"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "#30001"
|
||||
msgid "Use dedicated ffmpeg/ffprobe"
|
||||
msgid "Priority (nice, 0=max, 19=min)"
|
||||
msgstr ""
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<settings>
|
||||
<category label="30000">
|
||||
<setting label="30001" id="emby_ffmpeg" type="bool" default="true" />
|
||||
<setting label="30001" id="emby_nice" type="slider" default="10" range="0,1,19" option="int" />
|
||||
</category>
|
||||
</settings>
|
||||
|
3
packages/addons/service/emby/source/settings-default.xml
Normal file
3
packages/addons/service/emby/source/settings-default.xml
Normal file
@ -0,0 +1,3 @@
|
||||
<settings version="2">
|
||||
<setting id="emby_nice" default="true">10</setting>
|
||||
</settings>
|
BIN
packages/addons/tools/dotnet-runtime/icon/icon.png
Normal file
BIN
packages/addons/tools/dotnet-runtime/icon/icon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 50 KiB |
58
packages/addons/tools/dotnet-runtime/package.mk
Normal file
58
packages/addons/tools/dotnet-runtime/package.mk
Normal file
@ -0,0 +1,58 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
case "$ARCH" in
|
||||
"aarch64")
|
||||
PKG_NC_ARCH="arm64"
|
||||
PKG_SHA256="09c4b9c369c7f98066ba493a36a5c256eb102031739bec4862b58299590b5a18"
|
||||
;;
|
||||
"arm")
|
||||
PKG_NC_ARCH="arm"
|
||||
PKG_SHA256="bdbb9739092098c1e572bbdcc9799bdfb17de75fbf7f4e72898dbf63d424e14f"
|
||||
;;
|
||||
"x86_64")
|
||||
PKG_NC_ARCH="x64"
|
||||
PKG_SHA256="0d0db92d1d4779ad28562ca445acd3701e61bcef957ae3dbdcc97a7c0e8f10c5"
|
||||
;;
|
||||
esac
|
||||
|
||||
PKG_NAME="dotnet-runtime"
|
||||
PKG_VERSION="2.1.2"
|
||||
PKG_REV="100"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="MIT"
|
||||
PKG_SITE="https://dotnet.github.io/"
|
||||
PKG_URL="https://download.microsoft.com/download/1/f/7/1f7755c5-934d-4638-b89f-1f4ffa5afe89/dotnet-runtime-2.1.2-linux-$PKG_NC_ARCH.tar.gz"
|
||||
PKG_SOURCE_NAME="$PKG_NAME-$PKG_VERSION-$ARCH.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain curl curl3 krb5 lttng-ust"
|
||||
PKG_SECTION="tools"
|
||||
PKG_SHORTDESC=".NET Core Runtime"
|
||||
PKG_LONGDESC=".NET Core Runtime ($PKG_VERSION) runs applications built with .NET Core, a cross-platform .NET implementation."
|
||||
PKG_TOOLCHAIN="manual"
|
||||
|
||||
PKG_IS_ADDON="yes"
|
||||
PKG_ADDON_NAME=".Net Core Runtime"
|
||||
PKG_ADDON_TYPE="xbmc.python.script"
|
||||
PKG_MAINTAINER="Anton Voyl (awiouy)"
|
||||
|
||||
unpack() {
|
||||
mkdir -p $PKG_BUILD
|
||||
$SCRIPTS/extract $PKG_NAME $PKG_BUILD
|
||||
}
|
||||
|
||||
addon() {
|
||||
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin
|
||||
cp -r $PKG_BUILD/* \
|
||||
$ADDON_BUILD/$PKG_ADDON_ID/bin
|
||||
|
||||
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/libs
|
||||
cp -L $(get_build_dir curl3)/.$TARGET_NAME/lib/.libs/libcurl.so.? \
|
||||
$(get_build_dir krb5)/.install_pkg/usr/lib/libcom_err.so.? \
|
||||
$(get_build_dir krb5)/.install_pkg/usr/lib/libgssapi_krb5.so.? \
|
||||
$(get_build_dir krb5)/.install_pkg/usr/lib/libk5crypto.so.? \
|
||||
$(get_build_dir krb5)/.install_pkg/usr/lib/libkrb5.so.? \
|
||||
$(get_build_dir krb5)/.install_pkg/usr/lib/libkrb5support.so.? \
|
||||
$(get_build_dir lttng-ust)/.install_pkg/usr/lib/liblttng-ust.so.? \
|
||||
$(get_build_dir lttng-ust)/.install_pkg/usr/lib/liblttng-ust-tracepoint.so.? \
|
||||
$ADDON_BUILD/$PKG_ADDON_ID/libs
|
||||
}
|
10
packages/addons/tools/dotnet-runtime/source/bin/le_dotnet
Normal file
10
packages/addons/tools/dotnet-runtime/source/bin/le_dotnet
Normal file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
. /etc/profile
|
||||
oe_setup_addon tools.dotnet-runtime
|
||||
|
||||
DOTNET_SYSTEM_GLOBALIZATION_INVARIANT="1" \
|
||||
LD_LIBRARY_PATH="$ADDON_DIR/libs:$LD_LIBRARY_PATH" \
|
||||
dotnet "$@"
|
Loading…
x
Reference in New Issue
Block a user