1{
2 lib,
3 buildPythonPackage,
4 chardet,
5 docker,
6 entrypoints,
7 escapism,
8 fetchFromGitHub,
9 iso8601,
10 jinja2,
11 pkgs-docker,
12 python-json-logger,
13 pythonOlder,
14 requests,
15 ruamel-yaml,
16 semver,
17 setuptools,
18 toml,
19 traitlets,
20}:
21
22buildPythonPackage rec {
23 pname = "jupyter-repo2docker";
24 version = "2025.08.0";
25 pyproject = true;
26
27 disabled = pythonOlder "3.6";
28
29 src = fetchFromGitHub {
30 owner = "jupyterhub";
31 repo = "repo2docker";
32 tag = version;
33 hash = "sha256-vqLZbqshEl3xC5hcE4OkWfZpPSlSfv70oygEYPFqyFE=";
34 };
35
36 nativeBuildInputs = [ setuptools ];
37
38 propagatedBuildInputs = [
39 chardet
40 docker
41 entrypoints
42 escapism
43 iso8601
44 jinja2
45 pkgs-docker
46 python-json-logger
47 requests
48 ruamel-yaml
49 semver
50 toml
51 traitlets
52 ];
53
54 # Tests require a running Docker instance
55 doCheck = false;
56
57 pythonImportsCheck = [
58 "repo2docker"
59 "repo2docker.app"
60 "repo2docker.utils"
61 "repo2docker.contentproviders.base"
62 ];
63
64 meta = with lib; {
65 description = "Turn code repositories into Jupyter enabled Docker Images";
66 homepage = "https://repo2docker.readthedocs.io/";
67 changelog = "https://github.com/jupyterhub/repo2docker/blob/${src.tag}/docs/source/changelog.md";
68 license = licenses.bsd3;
69 maintainers = [ ];
70 };
71}