nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 bleach,
3 buildPythonPackage,
4 certifi,
5 fetchPypi,
6 hatchling,
7 kagglesdk,
8 lib,
9 packaging,
10 python-dateutil,
11 python-slugify,
12 requests,
13 six,
14 tqdm,
15 urllib3,
16 protobuf,
17}:
18
19buildPythonPackage rec {
20 pname = "kaggle";
21 version = "1.8.3";
22 pyproject = true;
23
24 src = fetchPypi {
25 inherit pname version;
26 hash = "sha256-MzXaV1KuKEPDqgUjt6ftkajdVQXBnLQDH51XZRw0YQY=";
27 };
28
29 build-system = [ hatchling ];
30
31 pythonRemoveDeps = [
32 "black"
33 "mypy"
34 "types-requests"
35 "types-tqdm"
36 ];
37
38 dependencies = [
39 bleach
40 certifi
41 kagglesdk
42 packaging
43 protobuf
44 python-dateutil
45 python-slugify
46 requests
47 six
48 tqdm
49 urllib3
50 ];
51
52 # Tests try to access the network.
53 checkPhase = ''
54 export HOME="$TMP"
55 mkdir -p "$HOME/.kaggle/"
56 echo '{"username":"foobar","key":"00000000000000000000000000000000"}' > "$HOME/.kaggle/kaggle.json"
57 $out/bin/kaggle --help > /dev/null
58 '';
59 pythonImportsCheck = [ "kaggle" ];
60
61 meta = {
62 description = "Official API for https://www.kaggle.com, accessible using a command line tool implemented in Python 3";
63 mainProgram = "kaggle";
64 homepage = "https://github.com/Kaggle/kaggle-api";
65 license = lib.licenses.asl20;
66 maintainers = [ ];
67 };
68}