Package: yt-dlp
Version: 1:2026.02.04-dmo1
Severity: wishlist

Dear Maintainer,

Presently, when attempting to download from YouTube playlists, I receive an error message:

>Signature solving failed: Some formats may be missing. Ensure you have
>a supported JavaScript runtime and challenge solver script
>distribution installed. Review any warnings presented before this
>message. For more details, refer to
>https://github.com/yt-dlp/yt-dlp/wiki/EJS

I am able to resume downloading by either adding the following flags
to the command or enabling them in `/etc/yt-dlp.conf`:

`--js-runtimes node --remote-components ejs:github`

(I have the `nodejs` Debian package installed).

I notice that the external JS runtime is currently set as `Suggests`. Since YouTube is likely a common host to wish to download from, I think `Recommends` would be more appropriate, if not a hard `Depends`.

As well, the EJS documentation from the error message mentions that challenge solver scripts, in python package `yt-dlp-ejs`, are also needed. I think it would be helpful to package these as well, either in the existing Debian `yt-dlp` package, or as a separate `yt-dlp-ejs` package that is also set as a `Recommends` or `Depends` within `yt-dlp`.
This way, there would be no need to have them downloaded via the
`--remote-components` flag.

I see that `/etc/yt-dlp.conf` has these options documented at least, but
disabled by default. Would creating a `postinst` script that checks for
installed JS runtimes, and enabling the appropriate `--js-runtimes` flag
in the `/etc/yt-dlp.conf`, be possible and/or desirable?

In Solidarity,
Preston Maness


-- System Information:
Debian Release: forky/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.18.5+deb14-amd64 (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages yt-dlp depends on:
ii python3 3.13.7-1+b1
ii python3-certifi 2026.1.4+ds-1
ii python3-mutagen 1.47.0-1
ii python3-pycryptodome 3.20.0+dfsg-3
ii python3-requests 2.32.5+dfsg-1
ii python3-urllib3 2.5.0-2
ii python3-websockets 15.0.1-1+b1

Versions of packages yt-dlp recommends:
ii aria2 1.37.0+debian-4
ii ca-certificates 20250419
ii curl 8.18.0-2
ii ffmpeg 10:8.0.1-dmo4
ii wget 1.25.0-2

Versions of packages yt-dlp suggests:
pn libfribidi-bin | bidiv <none>
ii nodejs 22.22.0+dfsg+~cs22.19.6-1+b1

-- Configuration Files:
/etc/yt-dlp.conf changed:
--js-runtimes node
--remote-components ejs:github


-- no debconf information

--
In Solidarity,
Preston Maness
512-955-1048
https://keyoxide.org/79895B2E0F87503F1DDE80B649765D7F0DDD9BD5

Attachment: OpenPGP_0x49765D7F0DDD9BD5.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to