nixpkgs/pkgs/development/python-modules/solo-python/default.nix
2021-02-10 19:10:48 +01:00

65 lines
1.2 KiB
Nix

{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
, click
, cryptography
, ecdsa
, fido2
, intelhex
, pyserial
, pyusb
, requests
}:
buildPythonPackage rec {
pname = "solo-python";
version = "0.0.27";
format = "flit";
disabled = pythonOlder "3.6"; # only python>=3.6 is supported
src = fetchFromGitHub {
owner = "solokeys";
repo = pname;
rev = version;
sha256 = "sha256-OCiKa6mnqJGoNCC4KqI+hMw22tzhdN63x9/KujNJqcE=";
};
# replaced pinned fido, with unrestricted fido version
patchPhase = ''
sed -i '/fido2/c\"fido2",' pyproject.toml
'';
propagatedBuildInputs = [
click
cryptography
ecdsa
fido2
intelhex
pyserial
pyusb
requests
];
# allow for writable directory for darwin
preBuild = ''
export HOME=$TMPDIR
'';
# repo doesn't contain tests, ensure imports aren't broken
pythonImportsCheck = [
"solo"
"solo.cli"
"solo.commands"
"solo.fido2"
"solo.operations"
];
meta = with lib; {
description = "Python tool and library for SoloKeys";
homepage = "https://github.com/solokeys/solo-python";
maintainers = with maintainers; [ wucke13 ];
license = with licenses; [ asl20 mit ];
};
}