skim: 0.15.7 -> 0.16.0 (#376410)
[NixPkgs.git] / pkgs / by-name / yt / ytdl-sub / package.nix
blob05c35224b26c6892bfef32182945dbcf20d361ab
2   python3Packages,
3   fetchFromGitHub,
4   ffmpeg,
5   lib,
6   versionCheckHook,
7   nix-update-script,
8 }:
9 python3Packages.buildPythonApplication rec {
10   pname = "ytdl-sub";
11   version = "2025.01.17";
12   pyproject = true;
14   src = fetchFromGitHub {
15     owner = "jmbannon";
16     repo = "ytdl-sub";
17     tag = version;
18     hash = "sha256-6RazXOXkBXwhJz8eNhrLIoEAVXnFEAF3O+SDKSjAlYo=";
19   };
21   postPatch = ''
22     echo '__pypi_version__ = "${version}"; __local_version__ = "${version}"' > src/ytdl_sub/__init__.py
23   '';
25   pythonRelaxDeps = [ "yt-dlp" ];
27   build-system = with python3Packages; [
28     setuptools
29     wheel
30   ];
32   dependencies = with python3Packages; [
33     yt-dlp
34     colorama
35     mergedeep
36     mediafile
37     pyyaml
38   ];
40   makeWrapperArgs = [
41     "--set YTDL_SUB_FFMPEG_PATH ${lib.getExe' ffmpeg "ffmpeg"}"
42     "--set YTDL_SUB_FFPROBE_PATH ${lib.getExe' ffmpeg "ffprobe"}"
43   ];
45   nativeCheckInputs = [ versionCheckHook ];
46   versionCheckProgramArg = "--version";
48   passthru.updateScript = nix-update-script { };
50   meta = {
51     homepage = "https://github.com/jmbannon/ytdl-sub";
52     description = "Lightweight tool to automate downloading and metadata generation with yt-dlp";
53     longDescription = ''
54       ytdl-sub is a command-line tool that downloads media via yt-dlp and prepares it for your favorite media player, including Kodi, Jellyfin, Plex, Emby, and modern music players. No additional plugins or external scrapers are needed.
55     '';
56     changelog = "https://github.com/jmbannon/ytdl-sub/releases/tag/${version}";
57     license = lib.licenses.gpl3Only;
58     maintainers = with lib.maintainers; [
59       loc
60       defelo
61     ];
62     mainProgram = "ytdl-sub";
63   };