nixpkgs/pkgs/tools/misc/svtplay-dl/default.nix
Guillaume Girol 33afbf39f6 treewide: switch to nativeCheckInputs
checkInputs used to be added to nativeBuildInputs. Now we have
nativeCheckInputs to do that instead. Doing this treewide change allows
to keep hashes identical to before the introduction of
nativeCheckInputs.
2023-01-21 12:00:00 +00:00

72 lines
1.7 KiB
Nix

{ lib
, stdenv
, fetchFromGitHub
, makeWrapper
, python3Packages
, perl
, zip
, gitMinimal
, ffmpeg
}:
let
inherit (python3Packages)
python pytest nose cryptography pyyaml requests mock requests-mock
python-dateutil setuptools;
version = "4.18";
in
stdenv.mkDerivation rec {
pname = "svtplay-dl";
inherit version;
src = fetchFromGitHub {
owner = "spaam";
repo = "svtplay-dl";
rev = version;
hash = "sha256-xqiEHfbuyAnQBBzKcWEdGoDSxVYOGI55OCx49YMnNK4=";
};
pythonPaths = [ cryptography pyyaml requests ];
buildInputs = [ python perl python-dateutil setuptools ] ++ pythonPaths;
nativeBuildInputs = [ gitMinimal zip makeWrapper ];
nativeCheckInputs = [ nose pytest mock requests-mock ];
postPatch = ''
substituteInPlace scripts/run-tests.sh \
--replace 'PYTHONPATH=lib' 'PYTHONPATH=lib:$PYTHONPATH'
sed -i '/def test_sublang2\?(/ i\ @unittest.skip("accesses network")' \
lib/svtplay_dl/tests/test_postprocess.py
'';
makeFlags = [ "PREFIX=$(out)" "SYSCONFDIR=$(out)/etc" "PYTHON=${python.interpreter}" ];
postInstall = ''
wrapProgram "$out/bin/svtplay-dl" \
--prefix PATH : "${ffmpeg}" \
--prefix PYTHONPATH : "$PYTHONPATH"
'';
doCheck = true;
checkPhase = ''
sh scripts/run-tests.sh -2
'';
doInstallCheck = true;
installCheckPhase = ''
runHook preInstallCheck
$out/bin/svtplay-dl --help > /dev/null
runHook postInstallCheck
'';
meta = with lib; {
homepage = "https://github.com/spaam/svtplay-dl";
description = "Command-line tool to download videos from svtplay.se and other sites";
license = licenses.mit;
platforms = lib.platforms.unix;
};
}