Files
termux-packages/packages/python-yt-dlp/build.sh
termux-pacman-bot b7f55e2971 enhance(main/yt-dlp): add yt-dlp-ejs as optional dependency
and make NodeJS the default JavaScript runtime on 32bit arches
2025-11-16 21:35:49 +00:00

59 lines
2.0 KiB
Bash

TERMUX_PKG_HOMEPAGE=https://github.com/yt-dlp/yt-dlp
TERMUX_PKG_DESCRIPTION="A youtube-dl fork with additional features and fixes"
TERMUX_PKG_LICENSE="Unlicense"
TERMUX_PKG_MAINTAINER="Joshua Kahn @TomJo2000"
TERMUX_PKG_VERSION="2025.11.12"
TERMUX_PKG_REVISION=1
TERMUX_PKG_SRCURL=https://github.com/yt-dlp/yt-dlp/archive/refs/tags/$TERMUX_PKG_VERSION.tar.gz
TERMUX_PKG_SHA256=6f5f2d716968d6c84d05d179fc1ce50ccca23706b9dbbc3c57fec97a8b9ea440
TERMUX_PKG_DEPENDS="libc++, libexpat, openssl, python, python-brotli, python-pip, python-pycryptodomex"
TERMUX_PKG_RECOMMENDS="ffmpeg, yt-dlp-ejs"
TERMUX_PKG_PYTHON_COMMON_DEPS="hatchling, wheel"
TERMUX_PKG_PYTHON_TARGET_DEPS="mutagen, pycryptodomex, websockets, certifi, brotli, requests, urllib3"
TERMUX_PKG_BUILD_IN_SRC=true
TERMUX_PKG_HOSTBUILD=true
TERMUX_PKG_AUTO_UPDATE=true
TERMUX_PKG_PROVIDES='yt-dlp'
termux_step_host_build() {
cp -Rf $TERMUX_PKG_SRCDIR ./
( cd src && make completions )
}
termux_step_make() {
:
}
termux_step_make_install() {
# Install library
pip install . --prefix=$TERMUX_PREFIX -vv --no-build-isolation --no-deps
# Install completions
install -Dm600 $TERMUX_PKG_HOSTBUILD_DIR/src/completions/bash/yt-dlp \
-t "$TERMUX_PREFIX"/share/bash-completion/completions
install -Dm600 $TERMUX_PKG_HOSTBUILD_DIR/src/completions/zsh/_yt-dlp \
-t "$TERMUX_PREFIX"/share/zsh/site-functions
install -Dm600 $TERMUX_PKG_HOSTBUILD_DIR/src/completions/fish/yt-dlp.fish \
-t "$TERMUX_PREFIX"/share/fish/completions
# Install config file
if (( TERMUX_ARCH_BITS == 32 )); then
mkdir -p "$TERMUX_PREFIX/etc/yt-dlp"
cat <<- EOF > "$TERMUX_PREFIX/etc/yt-dlp/config"
# yt-dlp-ejs defaults to using Deno as the JS runtime,
# Deno doesn't currently have 32 bit build support.
# So use Node instead on '$TERMUX_ARCH'.
--js-runtimes node
EOF
fi
}
termux_step_create_debscripts() {
cat <<- EOF > ./postinst
#!$TERMUX_PREFIX/bin/sh
echo "Installing dependencies through pip..."
pip3 install ${TERMUX_PKG_PYTHON_TARGET_DEPS//, / }
EOF
}