Something went wrong. Try again.
Nix Packages collection & NixOS github.com/NixOS/nixpkgs
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384{ lib, buildPythonPackage, fetchFromGitHub, pdm-backend, jschon, pyvcd, jinja2, git,
# for tests pytestCheckHook, sby, yices, yosys,}:
buildPythonPackage (finalAttrs: { pname = "amaranth"; version = "0.5.10"; pyproject = true;
src = fetchFromGitHub { owner = "amaranth-lang"; repo = "amaranth"; tag = "v${finalAttrs.version}"; hash = "sha256-AJmZBDMTGAq2i6xWpFoLjijJ+nycgJvTdNDrudjd/v0="; };
postPatch = '' substituteInPlace pyproject.toml \ --replace-fail "pdm-backend~=2.3.0" "pdm-backend>=2.3.0" '';
nativeBuildInputs = [ git ];
build-system = [ pdm-backend ];
dependencies = [ jschon jinja2 pyvcd ];
nativeCheckInputs = [ pytestCheckHook sby yices yosys ];
pythonImportsCheck = [ "amaranth" ];
disabledTests = [ "verilog" "test_reversible" "test_distance" ];
disabledTestPaths = [ # Subprocesses "tests/test_examples.py" # Verification failures "tests/test_lib_fifo.py" ];
pythonRelaxDeps = [ # pyvcd<0.5,>=0.2.2 not satisfied by version 0.5.0 "pyvcd" ];
meta = { description = "Modern hardware definition language and toolchain based on Python"; homepage = "https://amaranth-lang.org/docs/amaranth"; changelog = "https://github.com/amaranth-lang/amaranth/blob/${finalAttrs.src.tag}/docs/changes.rst"; license = lib.licenses.bsd2; maintainers = with lib.maintainers; [ thoughtpolice pbsds ]; mainProgram = "amaranth-rpc"; };})