1{ lib 2, buildPythonPackage 3, fetchFromGitHub 4, setuptools-scm 5, pytestCheckHook 6, xorgserver 7, imagemagick 8, pulseaudio 9, pytest-asyncio 10, pytest-lazy-fixture 11, qtile 12, keyring 13, requests 14, stravalib 15}: 16 17buildPythonPackage rec { 18 pname = "qtile-extras"; 19 version = "0.23.0"; 20 format = "pyproject"; 21 22 src = fetchFromGitHub { 23 owner = "elParaguayo"; 24 repo = pname; 25 rev = "v${version}"; 26 hash = "sha256-WI1z8vrbZiJw6fDHK27mKA+1FyZEQTMttIDNzSIX+PU="; 27 }; 28 29 SETUPTOOLS_SCM_PRETEND_VERSION = version; 30 31 nativeBuildInputs = [ setuptools-scm ]; 32 33 nativeCheckInputs = [ 34 pytestCheckHook 35 xorgserver 36 imagemagick 37 ]; 38 checkInputs = [ 39 pytest-asyncio 40 pytest-lazy-fixture 41 qtile 42 pulseaudio 43 keyring 44 requests 45 stravalib 46 ]; 47 disabledTests = [ 48 # AttributeError: 'ImgMask' object has no attribute '_default_size'. Did you mean: 'default_size'? 49 # cairocffi.pixbuf.ImageLoadingError: Pixbuf error: Unrecognized image file format 50 "test_draw" 51 "test_icons" 52 "1-x11-GithubNotifications-kwargs3" 53 "1-x11-SnapCast-kwargs8" 54 "1-x11-TVHWidget-kwargs10" 55 "test_tvh_widget_not_recording" 56 "test_tvh_widget_recording" 57 "test_tvh_widget_popup" 58 "test_snapcast_options" 59 "test_snapcast_icon" 60 "test_snapcast_icon_colour" 61 "test_snapcast_http_error" 62 "test_syncthing_not_syncing" 63 "test_syncthing_is_syncing" 64 "test_syncthing_http_error" 65 "test_githubnotifications_colours" 66 "test_githubnotifications_logging" 67 "test_githubnotifications_icon" 68 "test_githubnotifications_reload_token" 69 "test_image_size_horizontal" 70 "test_image_size_vertical" 71 "test_image_size_mask" 72 # ValueError: Namespace Gdk not available 73 # AssertionError: Window never appeared... 74 "test_statusnotifier_menu" 75 # AttributeError: 'str' object has no attribute 'canonical' 76 "test_strava_widget_display" 77 "test_strava_widget_popup" 78 # Needs a running DBUS 79 "test_brightness_power_saving" 80 "test_upower_all_batteries" 81 "test_upower_named_battery" 82 "test_upower_low_battery" 83 "test_upower_critical_battery" 84 "test_upower_charging" 85 "test_upower_show_text" 86 "test_global_menu" 87 "test_mpris2_popup" 88 # No network connection 89 "test_wifiicon_internet_check" 90 # AssertionErrors 91 "test_widget_init_config" 92 "test_decoration_output" 93 ]; 94 preCheck = '' 95 export HOME=$(mktemp -d) 96 ''; 97 98 pythonImportsCheck = [ "qtile_extras" ]; 99 100 meta = with lib; { 101 description = "Extra modules and widgets for the Qtile tiling window manager"; 102 homepage = "https://github.com/elParaguayo/qtile-extras"; 103 changelog = "https://github.com/elParaguayo/qtile-extras/blob/${src.rev}/CHANGELOG"; 104 license = licenses.mit; 105 maintainers = with maintainers; [ arjan-s ]; 106 }; 107}