1{ 2 lib, 3 buildPythonPackage, 4 setuptools, 5 chardet, 6 cryptography, 7 feedparser, 8 fetchPypi, 9 mock, 10 pysocks, 11 pytestCheckHook, 12 python-dateutil, 13 python-gnupg, 14 pythonOlder, 15 pytz, 16}: 17 18buildPythonPackage rec { 19 pname = "limnoria"; 20 version = "2025.5.3"; 21 pyproject = true; 22 23 disabled = pythonOlder "3.6"; 24 25 src = fetchPypi { 26 inherit pname version; 27 hash = "sha256-EZ42Ufnw3sUM1fM3+hTreKr58QOgeRANilXP9uxU/Cs="; 28 }; 29 30 build-system = [ setuptools ]; 31 32 dependencies = [ 33 chardet 34 cryptography 35 feedparser 36 mock 37 pysocks 38 python-dateutil 39 python-gnupg 40 ] ++ lib.optionals (pythonOlder "3.9") [ pytz ]; 41 42 nativeCheckInputs = [ pytestCheckHook ]; 43 44 postPatch = '' 45 substituteInPlace setup.py \ 46 --replace-fail "version=version" 'version="${version}"' 47 ''; 48 49 checkPhase = '' 50 runHook preCheck 51 export PATH="$PATH:$out/bin"; 52 supybot-test test -v --no-network 53 runHook postCheck 54 ''; 55 56 pythonImportsCheck = [ 57 # Uses the same names as Supybot 58 "supybot" 59 ]; 60 61 meta = with lib; { 62 description = "Modified version of Supybot, an IRC bot"; 63 homepage = "https://github.com/ProgVal/Limnoria"; 64 license = licenses.bsd3; 65 maintainers = [ ]; 66 }; 67}