Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at domenkozar-patch-1 112 lines 2.7 kB view raw
1{ lib 2, buildPythonPackage 3, dotmap 4, fetchFromGitHub 5, pexpect 6, protobuf 7, pygatt 8, pypubsub 9, pyqrcode 10, pyserial 11, pytestCheckHook 12, pythonOlder 13, pyyaml 14, tabulate 15, pytap2 16, timeago 17}: 18 19buildPythonPackage rec { 20 pname = "meshtastic"; 21 version = "2.0.6"; 22 format = "setuptools"; 23 24 disabled = pythonOlder "3.7"; 25 26 src = fetchFromGitHub { 27 owner = "meshtastic"; 28 repo = "Meshtastic-python"; 29 rev = "refs/tags/${version}"; 30 hash = "sha256-PN09TaJZR/REQPIgrm9XR+mXvR1evMAWGQziAzpg+fE="; 31 }; 32 33 propagatedBuildInputs = [ 34 dotmap 35 pexpect 36 protobuf 37 pygatt 38 pypubsub 39 pyqrcode 40 pyserial 41 pyyaml 42 tabulate 43 timeago 44 ]; 45 46 passthru.optional-dependencies = { 47 tunnel = [ 48 pytap2 49 ]; 50 }; 51 52 checkInputs = [ 53 pytap2 54 pytestCheckHook 55 ]; 56 57 preCheck = '' 58 export PATH="$PATH:$out/bin"; 59 ''; 60 61 pythonImportsCheck = [ 62 "meshtastic" 63 ]; 64 65 disabledTests = [ 66 # AttributeError: 'HardwareMessage'... 67 "test_handleFromRadio_with_my_info" 68 "test_handleFromRadio_with_node_info" 69 "test_main_ch_longsfast_on_non_primary_channel" 70 "test_main_ch_set_name_with_ch_index" 71 "test_main_configure_with_camel_case_keys" 72 "test_main_configure_with_snake_case" 73 "test_main_export_config_called_from_main" 74 "test_main_export_config_use_camel" 75 "test_main_export_config" 76 "test_main_get_with_invalid" 77 "test_main_get_with_valid_values_camel" 78 "test_main_getPref_invalid_field_camel" 79 "test_main_getPref_invalid_field" 80 "test_main_getPref_valid_field_bool_camel" 81 "test_main_getPref_valid_field_bool" 82 "test_main_getPref_valid_field_camel" 83 "test_main_getPref_valid_field_string_camel" 84 "test_main_getPref_valid_field_string" 85 "test_main_getPref_valid_field" 86 "test_main_set_invalid_wifi_passwd" 87 "test_main_set_valid_camel_case" 88 "test_main_set_valid_wifi_passwd" 89 "test_main_set_valid" 90 "test_main_set_with_invalid" 91 "test_main_setPref_ignore_incoming_0" 92 "test_main_setPref_ignore_incoming_123" 93 "test_main_setPref_invalid_field_camel" 94 "test_main_setPref_invalid_field" 95 "test_main_setPref_valid_field_int_as_string" 96 "test_readGPIOs" 97 "test_setURL_empty_url" 98 "test_watchGPIOs" 99 "test_writeConfig_with_no_radioConfig" 100 "test_writeGPIOs" 101 "test_reboot" 102 "test_shutdown" 103 ]; 104 105 meta = with lib; { 106 description = "Python API for talking to Meshtastic devices"; 107 homepage = "https://github.com/meshtastic/Meshtastic-python"; 108 changelog = "https://github.com/meshtastic/python/releases/tag/${version}"; 109 license = with licenses; [ asl20 ]; 110 maintainers = with maintainers; [ fab ]; 111 }; 112}