Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at 21.05 56 lines 1.2 kB view raw
1{ lib 2, buildPythonPackage 3, pythonOlder 4, fetchFromGitHub 5, setuptools 6, setuptools-scm 7, pyvcd 8, jinja2 9, importlib-resources 10, importlib-metadata 11, git 12 13# for tests 14, pytestCheckHook 15, yosys 16, symbiyosys 17, yices 18}: 19 20buildPythonPackage rec { 21 pname = "nmigen"; 22 version = "unstable-2021-02-09"; 23 # python setup.py --version 24 realVersion = "0.3.dev243+g${lib.substring 0 7 src.rev}"; 25 disabled = pythonOlder "3.6"; 26 27 src = fetchFromGitHub { 28 owner = "nmigen"; 29 repo = "nmigen"; 30 rev = "f7c2b9419f9de450be76a0e9cf681931295df65f"; 31 sha256 = "0cjs9wgmxa76xqmjhsw4fsb2mhgvd85jgs2mrjxqp6fwp8rlgnl1"; 32 }; 33 34 nativeBuildInputs = [ setuptools-scm git ]; 35 36 propagatedBuildInputs = [ 37 setuptools 38 pyvcd 39 jinja2 40 ] ++ 41 lib.optional (pythonOlder "3.9") importlib-resources ++ 42 lib.optional (pythonOlder "3.8") importlib-metadata; 43 44 checkInputs = [ pytestCheckHook yosys symbiyosys yices ]; 45 46 preBuild = '' 47 export SETUPTOOLS_SCM_PRETEND_VERSION="${realVersion}" 48 ''; 49 50 meta = with lib; { 51 description = "A refreshed Python toolbox for building complex digital hardware"; 52 homepage = "https://nmigen.info/nmigen"; 53 license = licenses.bsd2; 54 maintainers = with maintainers; [ emily ]; 55 }; 56}