mirror of
https://github.com/ivabus/pantry
synced 2024-11-26 18:25:08 +03:00
+youtube-dl.org
This commit is contained in:
parent
f125faa78a
commit
cc2a6fe258
2 changed files with 71 additions and 0 deletions
60
projects/youtube-dl.org/package.yml
Normal file
60
projects/youtube-dl.org/package.yml
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
distributable:
|
||||||
|
url: https://github.com/ytdl-org/youtube-dl/releases/download/{{version}}/youtube-dl-{{version}}.tar.gz
|
||||||
|
strip-components: 1
|
||||||
|
|
||||||
|
#NOTE copy-pasta from mesonbuild.com
|
||||||
|
#TODO make a brewkit/ script to do this automatically
|
||||||
|
|
||||||
|
versions:
|
||||||
|
github: ytdl-org/youtube-dl
|
||||||
|
strip: /^youtube-dl /
|
||||||
|
|
||||||
|
dependencies:
|
||||||
|
python.org: 3
|
||||||
|
gnu.org/bash: '>=2' # for our venv/relocation scripts: feel free to fix that
|
||||||
|
|
||||||
|
build:
|
||||||
|
script: |
|
||||||
|
python -m venv {{prefix}}/libexec
|
||||||
|
|
||||||
|
cd "{{prefix}}"
|
||||||
|
|
||||||
|
libexec/bin/pip install -v --no-deps --no-binary :all: --ignore-installed youtube-dl
|
||||||
|
mkdir bin
|
||||||
|
|
||||||
|
mv libexec/bin/youtube-dl libexec/bin/youtube-dl.py
|
||||||
|
|
||||||
|
cd bin
|
||||||
|
ln -s ../libexec/bin/youtube-dl youtube-dl
|
||||||
|
|
||||||
|
cd ../libexec/bin
|
||||||
|
fix-shebangs.ts *
|
||||||
|
|
||||||
|
cp "$SRCROOT"/props/shim.bash youtube-dl
|
||||||
|
chmod +x youtube-dl
|
||||||
|
|
||||||
|
rm Activate.ps1 activate.csh activate.fish
|
||||||
|
|
||||||
|
sed -i.bak 's|VIRTUAL_ENV=".*"|VIRTUAL_ENV="$(cd "$(dirname "${BASH_SOURCE[0]}")"/.. \&\& pwd)"|' activate
|
||||||
|
rm activate.bak
|
||||||
|
|
||||||
|
# FIXME a lot: this "updates" the `venv` on each run for relocatability
|
||||||
|
cat <<EOF>>activate
|
||||||
|
|
||||||
|
sed -i.bak \\
|
||||||
|
-e "s|$TEA_PREFIX/python.org/v{{deps.python.org.version}}|\$TEA_PREFIX/python.org/v{{deps.python.org.version.major}}|" \\
|
||||||
|
-e 's|bin/python{{deps.python.org.version.major}}.{{deps.python.org.version.minor}}|bin/python|' \\
|
||||||
|
-e "s|{{prefix}}/libexec|\$TEA_PREFIX/youtube-dlbuild.com/v{{version}}/libexec|" \\
|
||||||
|
\$VIRTUAL_ENV/pyvenv.cfg
|
||||||
|
rm \$VIRTUAL_ENV/pyvenv.cfg.bak
|
||||||
|
EOF
|
||||||
|
|
||||||
|
for x in python*; do
|
||||||
|
ln -sf ../../../../python.org/v{{ deps.python.org.version.major }}/bin/$x $x
|
||||||
|
done
|
||||||
|
|
||||||
|
test: |
|
||||||
|
youtube-dl --simulate https://youtu.be/pOtd1cbOP7k
|
||||||
|
|
||||||
|
provides:
|
||||||
|
- bin/youtube-dl
|
11
projects/youtube-dl.org/shim.bash
Executable file
11
projects/youtube-dl.org/shim.bash
Executable file
|
@ -0,0 +1,11 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
self="${BASH_SOURCE[0]}"
|
||||||
|
if test -L "$self"; then
|
||||||
|
prefix="$(dirname "$self")"
|
||||||
|
suffix="$(dirname $(readlink $self))"
|
||||||
|
LIBEXEC="$(cd $prefix/$suffix && pwd)"
|
||||||
|
else
|
||||||
|
LIBEXEC="$(cd "$(dirname "$self")" && pwd)"
|
||||||
|
fi
|
||||||
|
source "$LIBEXEC/activate"
|
||||||
|
exec "$LIBEXEC"/youtube-dl.py "$@"
|
Loading…
Reference in a new issue