18 # NOTE This is needed to download & run another Python program internally in
19 # order to generate test cases for library-checker problems.
20 pythonEnv = python.withPackages (ps: with ps; [ colorlog jinja2 markdown toml ]);
21 in buildPythonPackage rec {
22 pname = "online-judge-api-client";
25 src = fetchFromGitHub {
26 owner = "online-judge-tools";
28 rev = "refs/tags/v${version}";
29 hash = "sha256-P0pIjd/YS155dSDpY/ekMp8HnJcM35waV7aoTQiEWHo=";
32 patches = [ ./fix-paths.patch ];
34 substituteInPlace onlinejudge/service/library_checker.py \
35 --subst-var-by git ${git} \
36 --subst-var-by pythonInterpreter ${pythonEnv.interpreter}
39 propagatedBuildInputs = [
49 # Requires internet access
52 pythonImportsCheck = [ "onlinejudge" "onlinejudge_api" ];
55 description = "API client to develop tools for competitive programming";
56 homepage = "https://github.com/online-judge-tools/api-client";
57 license = licenses.mit;
58 maintainers = with maintainers; [ sei40kr ];