Lo unico bueno de ARCH-shit es que todo esta lo mas al dia posible, (tambien esto es malo ojo) y por ende usar un descargador de youtube o tiktok es mas simple que en debian u otras distros..
youtube-downloader tuvo una historia larga y hoydia el mas famoso heredero es yt-dlp el cual completaremos hoy (ya que el programa en si requiere extras para toda su capacidad)
Requisitos para colocar yt-dlp
- python : desafortunadamente usa esta basura para casi todo
- ffmpeg : imprescindible, para decirle en que formato se guarda
- aria2c : esto para poder descargar mejor los datos
- yt-dlp-ejs : para burlar las restricciones de tiktok, youtube y faisbuk
- deno : usado para la burla de las restricciones, requerido
- python-mutagen : para embeber las imagenes como caratulas
- python-pycryptodomex : para decodificar sitios encriptados
- rtmpdump : para ciertos sitios de streming en formato rtmp
- atomicparsley : para colocar imagenes de preview en el mp4
- python-websockets : solo ocasionalmente flujo que no es http
De la lista, en Alpine Linu y Arch linux casi todos estan con el mismo nombre, menos los ultimos cuatro que no solo se llaman un poco distinto sino que solo estan en las ultimas versiones. Debian solo tiene los primeros cinco como paquetes y los tres ultimos, el resto como "deno" requieren un repo extra o sustituirlo con nodejs.
Instalando el YT-DLP
Aqui abordaremos solo el caso de ARCH pero salvo la instalacion de los paquetes todo los demas pasos sirven para Debian o Alpine. Si falta algun paquete use el telgram VenenuX y comente.
pacman -S yt-dlp yt-dlp-ejs deno ffmpeg aria2c
Estos son los mas importantes.. pero para completarlo necesitamos:
pacman -S atomicparsley rtmpdump python-pycryptodomex \
python-websockets python-mutagen python-curl_cffi \
python-brotli python-xattr
Completando el YT-DLP
Como dijimos a partir de aqui estos pasos sirven para Debian o Alpine. Ojo siempre que tengan todos los paquetes citados arriba incluyendo el DENO el cual esta asumido tambien sea un paquete en debian y alpine.. sino no funcionara.
cat > /etc/yt-dlp.conf << EOF
--no-windows-filenames
--no-write-comments
--embed-thumbnail
--embed-metadata
--no-js-runtimes --js-runtimes deno
--no-check-certificates
--print filename
--output "[%(artist)s,%(title)s] %(title,track)s [%(id)s].%(ext)s"
EOF
Descargando y ejemplos:
Debe usar los provistos aqui: https://github.com/yt-dlp/yt-dlp/blob/master/README.md#format-selection-examples
Para la forma en que se guarda use estos ejemplos : https://github.com/yt-dlp/yt-dlp/blob/master/README.md#output-template-examples