{ ... }: { programs.yt-dlp = { enable = true; extraConfig = '' # Do not overwrite files --no-overwrites # Add metadata to the video files --add-metadata # Write video description to a .description file --write-description # Restrict filenames to only ASCII characters, and avoid "&" and spaces in filenames --restrict-filenames # Select the best audio quality (when extracting audio with -x/--extract-audio) --audio-quality 0 # Save videos under "~/Movies/WebsiteName/" with the filename "VideoTitle---FormatNote-VideoId.VideoExtension" --output "~/Movies/%(extractor_key)s/%(title)s---%(format_note)s-%(id)s.%(ext)s" # Download subtitles for English, French and German --sub-langs en,fr # Embed subtitles in the video (only possible with mp4, webm and mkv files) --embed-subs # Download with the best resolution and if possible, in the video format mp4 and audio format m4a. # If the video format isn't mp4 already, it will be converted to mp4 --format-sort res,ext:mp4:m4a --recode mp4 ''; }; }