at master 1.2 kB view raw
1{ 2 lib, 3 bleak, 4 buildPythonPackage, 5 cryptography, 6 esptool, 7 fetchFromGitHub, 8 netifaces, 9 pyserial, 10 replaceVars, 11 setuptools, 12 versionCheckHook, 13}: 14 15buildPythonPackage rec { 16 pname = "rns"; 17 version = "1.0.0"; 18 pyproject = true; 19 20 src = fetchFromGitHub { 21 owner = "markqvist"; 22 repo = "Reticulum"; 23 tag = version; 24 hash = "sha256-d227mAVJKcm3Dx2HS7CvVsyWyLl7GoPSA/YrWjs7jm0="; 25 }; 26 27 patches = [ 28 (replaceVars ./unvendor-esptool.patch { 29 esptool = lib.getExe esptool; 30 }) 31 ]; 32 33 build-system = [ setuptools ]; 34 35 dependencies = [ 36 bleak 37 cryptography 38 netifaces 39 pyserial 40 ]; 41 42 pythonImportsCheck = [ "RNS" ]; 43 44 nativeCheckInputs = [ 45 versionCheckHook 46 ]; 47 versionCheckProgram = "${placeholder "out"}/bin/rncp"; 48 versionCheckProgramArg = "--version"; 49 50 meta = { 51 description = "Cryptography-based networking stack for wide-area networks"; 52 homepage = "https://reticulum.network"; 53 changelog = "https://github.com/markqvist/Reticulum/blob/${src.tag}/Changelog.md"; 54 # Reticulum License 55 # https://github.com/markqvist/Reticulum/blob/master/LICENSE 56 license = lib.licenses.unfree; 57 maintainers = with lib.maintainers; [ 58 fab 59 qbit 60 ]; 61 }; 62}