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 ] ++ requests.optional-dependencies.socks;
43
44 checkPhase = ''
45 $out/bin/gdown --help > /dev/null
46 '';
47
48 pythonImportsCheck = [ "gdown" ];
49
50 meta = with lib; {
51 description = "A CLI tool for downloading large files from Google Drive";
52 mainProgram = "gdown";
53 homepage = "https://github.com/wkentaro/gdown";
54 changelog = "https://github.com/wkentaro/gdown/releases/tag/v${version}";
55 license = licenses.mit;
56 maintainers = with maintainers; [ breakds ];
57 };
58}