1{ 2 lib, 3 buildPythonPackage, 4 certifi, 5 chardet, 6 fetchFromGitHub, 7 idna, 8 pythonOlder, 9 requests, 10 setuptools, 11 urllib3, 12}: 13 14buildPythonPackage rec { 15 pname = "frigidaire"; 16 version = "0.18.24"; 17 pyproject = true; 18 19 disabled = pythonOlder "3.8"; 20 21 src = fetchFromGitHub { 22 owner = "bm1549"; 23 repo = "frigidaire"; 24 tag = version; 25 hash = "sha256-lpwzXeuFPvWV26AIAfzBHY3IiwEc8vThTXc/F0iyV1o="; 26 }; 27 28 postPatch = '' 29 substituteInPlace setup.py \ 30 --replace-warn 'version = "SNAPSHOT"' 'version = "${version}"' 31 ''; 32 33 nativeBuildInputs = [ setuptools ]; 34 35 propagatedBuildInputs = [ 36 certifi 37 chardet 38 idna 39 requests 40 urllib3 41 ]; 42 43 # Project has no tests 44 doCheck = false; 45 46 pythonImportsCheck = [ "frigidaire" ]; 47 48 meta = with lib; { 49 description = "Python API for the Frigidaire devices"; 50 homepage = "https://github.com/bm1549/frigidaire"; 51 changelog = "https://github.com/bm1549/frigidaire/releases/tag/${src.tag}"; 52 license = with licenses; [ mit ]; 53 maintainers = with maintainers; [ fab ]; 54 }; 55}