Files
nixpkgs/pkgs/by-name/st/streamlink/package.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

86 lines
1.8 KiB
Nix

{
lib,
python3Packages,
fetchPypi,
replaceVars,
ffmpeg,
extras ? [
"decompress"
],
}:
python3Packages.buildPythonApplication rec {
pname = "streamlink";
version = "7.5.0";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-wJG8d6PMjhKaIy2z4sjYuuLf75aBP83sYu4CB5QGj7k=";
};
patches = [
(replaceVars ./ffmpeg-path.patch {
ffmpeg = lib.getExe ffmpeg;
})
];
nativeBuildInputs = with python3Packages; [
setuptools
];
nativeCheckInputs = with python3Packages; [
pytestCheckHook
mock
requests-mock
freezegun
pytest-trio
];
disabledTests = [
# requires ffmpeg to be in PATH
"test_no_cache"
];
propagatedBuildInputs =
with python3Packages;
[
certifi
isodate
lxml
pycountry
pycryptodome
pysocks
requests
trio
trio-websocket
urllib3
websocket-client
]
++ lib.attrVals extras optional-dependencies;
optional-dependencies = with python3Packages; {
decompress = urllib3.optional-dependencies.brotli ++ urllib3.optional-dependencies.zstd;
};
meta = {
changelog = "https://streamlink.github.io/changelog.html";
description = "CLI for extracting streams from various websites to video player of your choosing";
homepage = "https://streamlink.github.io/";
longDescription = ''
Streamlink is a CLI utility that pipes videos from online
streaming services to a variety of video players such as VLC, or
alternatively, a browser.
Streamlink is a fork of the livestreamer project.
'';
license = lib.licenses.bsd2;
mainProgram = "streamlink";
maintainers = with lib.maintainers; [
dezgeg
zraexy
DeeUnderscore
];
};
}