yt-dlp-ejs provides the external JavaScript (EJS) scripts that yt-dlp
uses to interact with YouTube's player logic. These scripts enable
full support for YouTube by solving JavaScript-based challenges,
such as signature and throttle parameter decryption.
A JavaScript runtime is required at runtime to execute these scripts.
Supported runtimes include Deno, Node.js, Bun, and QuickJS.
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above. NOTE: This is a Python port. Instead of py312-yt-dlp-ejs listed in the above command, you can pick from the names under the Packages section.
Mk/Uses: Remove certs.mk
It was a useful shorthand for the security/ca_root_nss dependency.
However, several people disagreed.
Can anybody explain why libedit.mk is there? It is also a one string
substitution. Same with libarchive.mk.
www/py-yt-dlp-ejs: Add USES=certs:fetch
npm requires this for some users/systems and not for others.
It's not clear what the differentiating factor is.
See details in the bug report.
PR: 268638
Reported by: James TD Smith
www/py-yt-dlp-ejs: Remove the IGNORE line
This do-fetch target does not repackage anything.
It fetches the tarball, extracts it, then fetches NodeJS dependencies
into the same folder, and packages this folder as a final tarball
used during build.
AFAIK there is nothing wrong with this port the way it is now.
This can't be done in post-extract due to internet access that is
required.
www/py-yt-dlp-ejs: mark as IGNORE
You cannot repack your distfile in do-fetch.
If you need to extract things and move things around, do it in
post-extract.
With hat: portmgr