/TheFrenchGhostys-Ultimate-YouTube-DL-Scripts-Collection-BSD-Friendly

Fork of TheFrenchGhostys-Ultimate-YouTube-DL-Scripts-Collection for BSD and BSD derivatives (i.e. MacOS and Solana)

Primary LanguageShellGNU General Public License v3.0GPL-3.0

TheFrenchGhosty's Ultimate YouTube-DL Scripts Collection

Unix-Agnostic Edition!*

The ultimate collection of scripts for YouTube-DL.

* Now on BSD!

This fork of TheFrenchGhosty's YT-DL Scripts Collection exists as a quick-fix that can also run on BSD derivatives. And yes, that includes us Apple plebians on MacOS/Darwin. Some code used for date-arithmetic was not portable to BSD (specifically the `date --date="30 days ago"` syntax which is `date -j -v-30d` instead). This fork injects some Perl code to have date-artihmetic which is both agnostic of UNIX-distro and shell (works with both `bash` and `zsh`). A more optimised version will probably be merged into the Ghosty's repo at some point, but until then this is a working solution for BSD and Linux users.

🎉 Thanks for 1000 stars! 🎉

Associated Reddit /r/Datahoarder post: Here for 3.1.0 | Here for 3.0.0 | Here for 2.0.0 | Here for 1.0.0.

Features:

  • Copylefted libre software (GPLv3 licensed)
  • Download content in the best possible quality, better than every other software, period.
  • Download all kind of content: channels, playlists and individual videos
  • Download audio only content, in the best possible quality
  • Content separated in two to be easier to archive
  • Dedicated scripts to download videos destined to be watched and deleted on a PC
  • Dedicated scripts to download videos destined to be watched and deleted on a Mobile device
  • Easily expandable for users familiar with yt-dlp / youtube-dl
  • SponsorBlock integration using mpv_sponsorblock by @po5
  • Jellyfin integration using Jellyfin YouTube Metadata Plugin by @ankenyr
  • No Contributor License Agreement
  • No Code of Conduct

Donate:


Installation (Linux):

Install yt-dlp and ffmpeg (optionally, install the others yt-dlp dependencies).

Download the latest release and follow the included ReadMe, do not use the master branch unless you are ready to re-download EVERYTHING.


Installation (Windows):

The Windows version, while it existed, required a lot of work to maintain because it needed specific changes compared to the linux version, and was never extensively tested. Windows users need to use the scripts in WSL, Cygwin, Git Bash, or some other Linux-on-Windows environment that enables Bash functionality in Windows.

Installation using WSL (recommended): Here

Installation using Cygwin, Git Bash or similar: Here

Downloaded videos will likely exceed Windows' 260-character path length limit and not be playable out of the box. You should read more about paths to familiarize yourself with the issue, as well as some potential workarounds.


Usage:

Create a folder where you want your videos downloaded in a drive where you have enough space available.

Put the folders Archivist Scripts, Audio-Only Scripts and Watch Scripts in the created folder (See the documentation to understand the differences).

Add content to a 'Source - XXXXXX.txt' file depending of what type of content you want to download (See the documentation to understand the differences).

Open a terminal in the folder of the script you want to use and run ./[SCRIPT].sh.

Done.


Documentation:

Basics:

  • Scripts Type (Archivist, Audio-Only, Watch...): Here

  • Content Type (Channels, Playlists, Unique...): Here

Advanced:

  • SponsorBlock implementation: Here

  • Region Restriction: Here

  • Details: Here


Contact:

If you want to get in touch with me, or other users of my projects, feel free to join the Matrix room of one of my other project PussTheCat.org: #pussthecat.org:pussthecat.org.

If you want to contact me privately, see: https://pussthecat.org/about/.