1{ 2 lib, 3 stdenv, 4 buildPythonPackage, 5 pythonOlder, 6 fetchFromGitHub, 7 setuptools, 8 bidict, 9 packaging, 10 typing-extensions, 11 dbus-fast, 12 rubicon-objc, 13}: 14 15buildPythonPackage rec { 16 pname = "desktop-notifier"; 17 version = "6.2.0"; 18 pyproject = true; 19 20 disabled = pythonOlder "3.9"; 21 22 src = fetchFromGitHub { 23 owner = "SamSchott"; 24 repo = "desktop-notifier"; 25 tag = "v${version}"; 26 hash = "sha256-VVbBKhGCtdsNOfRJPpDk9wwsTtdEwbTSZjheXLydO70="; 27 }; 28 29 build-system = [ setuptools ]; 30 31 dependencies = [ 32 bidict 33 packaging 34 typing-extensions 35 ] 36 ++ lib.optionals stdenv.hostPlatform.isLinux [ dbus-fast ] 37 ++ lib.optionals stdenv.hostPlatform.isDarwin [ rubicon-objc ]; 38 39 # no tests available, do the imports check instead 40 doCheck = false; 41 42 pythonImportsCheck = [ "desktop_notifier" ]; 43 44 meta = { 45 description = "Python library for cross-platform desktop notifications"; 46 homepage = "https://github.com/samschott/desktop-notifier"; 47 changelog = "https://github.com/samschott/desktop-notifier/releases/tag/${src.tag}"; 48 license = lib.licenses.mit; 49 maintainers = with lib.maintainers; [ sfrijters ]; 50 }; 51}