- cross-posted to:
- [email protected]
- cross-posted to:
- [email protected]
I’m a bit critical about teaching how a certain application is installed on Linux. Especially because this is aiming towards beginners who may not be familiar with how software is installed and managed on Linux. And in such a case, just providing the command for one certain type of package manager could be harmful, because all other common systems are left out.
If Python3 is not installed on your distribution, then I would not blindly recommend people to install it (if its available). Because changing the systems Python can cause serious issues. There is a reason why its not installed, if its not. I would recommend to install yt-dlp from your distributions package manager, if its maintained and always up to date. In example it is in the Arch repositories and can be installed with
pacman -S yt-dlp
and is always up to date. In that case you don’t need to install or change Python or Pip and do not need to configure your PATH anymore. It’s painless. And it gets automatically updated with your system.yt-dlp offers lot of functionality other than simply downloding, but its complicated in my opinion. Shamelessly I want to recommend into looking my own Bash script on Linux, to make the commandline usage of yt-dlp easier: https://github.com/thingsiplay/yt-dlp-lemon
The “always up to date” seems to be the issue with yt-dlp in most distros (except maybe Arch-based stuff?). Installing through PIP also gives you the option of using the official nightly repo if the need arises.
I’m sure a lot of people on Lemmy can figure out package managers, but I wanted to try writing a guide more aimed at beginners that can be shared with people trying to figure out
yt-dlp
. I only found one other guide like this outside of random Reddit threads and comments, and it was pretty long and technical.If you like this article, please consider following the site on Mastodon/Fedi, email, or RSS. It helps me get information like this out to a wider audience :)
In Windows I use the tartube gui for yt-dlp which works fine for me.
This is de wey. Chocolatey also helps install all sorts of other useful stuff, like cURL, FFMPEG, NodeJS, and other things that might not have binary releases or installers available for them.
Also Scoop
On Android, from FDroid you can install an app called Seal, which is a minimal frontend for yt-dlp. I discovered it while trying to circumvent issues Newpipe was having with some update to the YouTube API.
Unlike Newpipe forks, which can use the sponsor block API but not when downloading the video directly to your device, Seal allows you to input the custom flags available from the yt-dlp cli, so you can automatically skip annoying sponsor mentions even on your downloaded videos.
On Android, from FDroid you can install an app called Seal
I like ytdlnis more.
Why not use JDownloader?
It’s faster, lightweight and runs on your terminal.
Also stays updated more often.
JDownloader is a generic downloader right? yt-dlp understand YouTube and has way more options, such as adding chapter marks, download or extract audio only, repack into certain formats, split into mulitple video by chapter mark segments, download entire playlists, download only max video height such as max 480p or 1080p, embed meta information into video, download video description as text file, just to name some of the most useful ones I use. Also yt-dlp is independent from Java, easier to install (at least on Linux), can be used from commandline and automated easily with scripts.
Why use JDownloader?
There is also Parabolic a nice frontend for yt-dlp.