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 }