1{
2 lib,
3 beautifulsoup4,
4 buildPythonPackage,
5 fetchPypi,
6 hatchling,
7 hatch-vcs,
8 hatch-fancy-pypi-readme,
9 filelock,
10 requests,
11 tqdm,
12 setuptools,
13 six,
14 pythonOlder,
15}:
16
17buildPythonPackage rec {
18 pname = "gdown";
19 version = "5.2.0";
20 pyproject = true;
21
22 disabled = pythonOlder "3.7";
23
24 src = fetchPypi {
25 inherit pname version;
26 hash = "sha256-IUUWUGLYVSCjzZizVsntUixeeYTUCFNUCf1G+U3vx4c=";
27 };
28
29 build-system = [
30 hatchling
31 hatch-vcs
32 hatch-fancy-pypi-readme
33 ];
34
35 propagatedBuildInputs = [
36 beautifulsoup4
37 filelock
38 requests
39 tqdm
40 setuptools
41 six
42 ]
43 ++ requests.optional-dependencies.socks;
44
45 checkPhase = ''
46 $out/bin/gdown --help > /dev/null
47 '';
48
49 pythonImportsCheck = [ "gdown" ];
50
51 meta = with lib; {
52 description = "CLI tool for downloading large files from Google Drive";
53 mainProgram = "gdown";
54 homepage = "https://github.com/wkentaro/gdown";
55 changelog = "https://github.com/wkentaro/gdown/releases/tag/v${version}";
56 license = licenses.mit;
57 maintainers = with maintainers; [ breakds ];
58 };
59}