mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-30 22:26:42 +00:00
update_binary-addons: Extend support to unofficial addons
This commit is contained in:
parent
457702ad49
commit
8701fc2022
@ -54,6 +54,24 @@ resolve_hash() {
|
||||
fi
|
||||
}
|
||||
|
||||
# Get url in git:// notation for a package.mk, assuming it is a github.com url
|
||||
# Return 1 if not a github domain
|
||||
geturl() {
|
||||
local addon="$1"
|
||||
local domain owner repo
|
||||
|
||||
. ../../packages/mediacenter/kodi-binary-addons/${addon}/package.mk 1>/dev/null 2>/dev/null
|
||||
|
||||
domain="$(echo "${PKG_URL}" | cut -d/ -f3)"
|
||||
[ "${domain}" = "github.com" ] || return 1
|
||||
|
||||
owner="$(echo "${PKG_URL}" | cut -d/ -f4)"
|
||||
repo="$(echo "${PKG_URL}" | cut -d/ -f5)"
|
||||
|
||||
echo "git://${domain}/${owner}/${repo}.git"
|
||||
return 0
|
||||
}
|
||||
|
||||
if [ ! -d $KODI_DIR ] ; then
|
||||
echo "meh.. $KODI_DIR does not exist"
|
||||
exit 127
|
||||
@ -87,6 +105,9 @@ if [ -f ../../packages/mediacenter/kodi-platform/package.mk ] ; then
|
||||
fi
|
||||
rm -rf $PKG_NAME.git
|
||||
|
||||
PROCESSED=/tmp/update_binary_addons.dat
|
||||
rm -f ${PROCESSED}
|
||||
|
||||
# addons
|
||||
for addontxt in $KODI_DIR/project/cmake/addons/bootstrap/repositories/*-addons.txt ; do
|
||||
ADDONS=$(cat $addontxt | awk '{print $1}')
|
||||
@ -99,6 +120,8 @@ for addontxt in $KODI_DIR/project/cmake/addons/bootstrap/repositories/*-addons.t
|
||||
GIT_HASH=$(cat $addon/$ADDON.txt | awk '{print $3}')
|
||||
PKG_NAME="$ADDON"
|
||||
|
||||
echo "${PKG_NAME}" >> ${PROCESSED}
|
||||
|
||||
if ! grep -q all $addon/platforms.txt && ! grep -q linux $addon/platforms.txt && ! grep -q ! $addon/platforms.txt; then
|
||||
continue
|
||||
fi
|
||||
@ -122,3 +145,22 @@ for addontxt in $KODI_DIR/project/cmake/addons/bootstrap/repositories/*-addons.t
|
||||
echo "followed addons was skipped, please add packages for this:"
|
||||
echo "$SKIPPED_ADDONS"
|
||||
done
|
||||
|
||||
# finally, any other unofficial addons
|
||||
for ADDON in $(ls -1 ../../packages/mediacenter/kodi-binary-addons); do
|
||||
# ignore already processed addons
|
||||
grep -qE "^${ADDON}$" ${PROCESSED} && continue
|
||||
|
||||
# Obtain git url - ignore if not a suitable repo
|
||||
REPO="$(geturl "${ADDON}")" || continue
|
||||
|
||||
git_clone $REPO master $ADDON.git HEAD
|
||||
|
||||
# update package.mk for stale github.com packages
|
||||
RESOLVED_HASH=$(resolve_hash ${ADDON}.git HEAD) || continue
|
||||
|
||||
sed -e "s|PKG_VERSION=.*|PKG_VERSION=\"$RESOLVED_HASH\"|g" \
|
||||
-i ../../packages/mediacenter/kodi-binary-addons/$ADDON/package.mk
|
||||
|
||||
rm -rf $ADDON.git
|
||||
done
|
||||
|
Loading…
x
Reference in New Issue
Block a user