1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitLab, 5 pythonOlder, 6 pythonAtLeast, 7 argcomplete, 8 requests, 9 looseversion, 10 gnupg, 11}: 12 13buildPythonPackage rec { 14 pname = "sdkmanager"; 15 version = "0.6.7"; 16 format = "setuptools"; 17 18 disabled = pythonOlder "3.5"; 19 20 src = fetchFromGitLab { 21 owner = "fdroid"; 22 repo = pname; 23 rev = version; 24 hash = "sha256-8Iq3sVp9/dZi4zNZIgNm38ntoA2koS/Ism+pIVATr4Q="; 25 }; 26 27 propagatedBuildInputs = [ 28 argcomplete 29 requests 30 ] ++ requests.optional-dependencies.socks ++ lib.optionals (pythonAtLeast "3.12") [ looseversion ]; 31 32 postInstall = '' 33 wrapProgram $out/bin/sdkmanager \ 34 --suffix PATH : ${lib.makeBinPath [ gnupg ]} 35 ''; 36 37 # has no tests 38 doCheck = false; 39 40 pythonImportsCheck = [ "sdkmanager" ]; 41 42 meta = with lib; { 43 homepage = "https://gitlab.com/fdroid/sdkmanager"; 44 description = "A drop-in replacement for sdkmanager from the Android SDK written in Python"; 45 mainProgram = "sdkmanager"; 46 license = licenses.agpl3Plus; 47 maintainers = with maintainers; [ linsui ]; 48 }; 49}