vuls: init at 0.27.0 (#348530)
[NixPkgs.git] / pkgs / applications / misc / yewtube / default.nix
blobb9ec7f323b3702764179bbd7fdc4a0903dce6e09
1 { lib, python3Packages, fetchFromGitHub }:
3 python3Packages.buildPythonApplication rec {
4   pname = "yewtube";
5   version = "2.12.0";
7   src = fetchFromGitHub {
8     owner = "mps-youtube";
9     repo = "yewtube";
10     rev = "refs/tags/v${version}";
11     hash = "sha256-66cGnEEISC+lZAYhFXuVdDtwh1TgwvCP6nBD84z2z0I=";
12   };
14   postPatch = ''
15     # Don't try to detect the version at runtime with pip
16     substituteInPlace mps_youtube/__init__.py \
17       --replace "from pip._vendor import pkg_resources" "" \
18       --replace "__version__ =" "__version__ = '${version}' #"
19   '';
21   propagatedBuildInputs = with python3Packages; [
22     pyperclip
23     requests
24     youtube-search-python
25     yt-dlp
26     pylast
27   ];
29   checkInputs = with python3Packages; [
30     pytestCheckHook
31     dbus-python
32     pygobject3
33   ];
35   preCheck = ''
36     export XDG_CONFIG_HOME=$(mktemp -d)
37   '';
39   pythonImportsCheck = [ "mps_youtube" ];
41   meta = with lib; {
42     description = "Terminal based YouTube player and downloader, forked from mps-youtube";
43     mainProgram = "yt";
44     homepage = "https://github.com/mps-youtube/yewtube";
45     license = licenses.gpl3Plus;
46     maintainers = with maintainers; [ fgaz koral ];
47   };