74 lines
1.4 KiB
Nix
74 lines
1.4 KiB
Nix
|
|
{
|
||
|
|
lib,
|
||
|
|
stdenv,
|
||
|
|
fetchFromGitHub,
|
||
|
|
nix-update-script,
|
||
|
|
pyrosimple,
|
||
|
|
python3,
|
||
|
|
testers,
|
||
|
|
withInotify ? stdenv.hostPlatform.isLinux,
|
||
|
|
}:
|
||
|
|
|
||
|
|
python3.pkgs.buildPythonApplication rec {
|
||
|
|
pname = "pyrosimple";
|
||
|
|
version = "2.14.2";
|
||
|
|
format = "pyproject";
|
||
|
|
|
||
|
|
src = fetchFromGitHub {
|
||
|
|
owner = "kannibalox";
|
||
|
|
repo = "pyrosimple";
|
||
|
|
tag = "v${version}";
|
||
|
|
hash = "sha256-qER73B6wuRczwV23A+NwfDL4oymvSwmauA0uf2AE+kY=";
|
||
|
|
};
|
||
|
|
|
||
|
|
pythonRelaxDeps = [
|
||
|
|
"prometheus-client"
|
||
|
|
"python-daemon"
|
||
|
|
];
|
||
|
|
|
||
|
|
nativeBuildInputs = with python3.pkgs; [
|
||
|
|
poetry-core
|
||
|
|
];
|
||
|
|
|
||
|
|
propagatedBuildInputs =
|
||
|
|
with python3.pkgs;
|
||
|
|
[
|
||
|
|
bencode-py
|
||
|
|
apscheduler
|
||
|
|
jinja2
|
||
|
|
python-daemon
|
||
|
|
importlib-resources
|
||
|
|
parsimonious
|
||
|
|
prometheus-client
|
||
|
|
prompt-toolkit
|
||
|
|
requests
|
||
|
|
shtab
|
||
|
|
python-box
|
||
|
|
tomli-w
|
||
|
|
]
|
||
|
|
++ lib.optionals (pythonOlder "3.11") [
|
||
|
|
tomli
|
||
|
|
]
|
||
|
|
++ lib.optional withInotify inotify;
|
||
|
|
|
||
|
|
nativeCheckInputs = with python3.pkgs; [
|
||
|
|
pytestCheckHook
|
||
|
|
];
|
||
|
|
|
||
|
|
passthru = {
|
||
|
|
updateScript = nix-update-script { };
|
||
|
|
tests = testers.testVersion {
|
||
|
|
package = pyrosimple;
|
||
|
|
command = "pyroadmin --version";
|
||
|
|
};
|
||
|
|
};
|
||
|
|
|
||
|
|
meta = {
|
||
|
|
description = "RTorrent client";
|
||
|
|
homepage = "https://kannibalox.github.io/pyrosimple/";
|
||
|
|
changelog = "https://github.com/kannibalox/pyrosimple/blob/v${version}/CHANGELOG.md";
|
||
|
|
license = lib.licenses.gpl3Plus;
|
||
|
|
maintainers = with lib.maintainers; [ vamega ];
|
||
|
|
};
|
||
|
|
}
|