1{
2 lib,
3 buildPythonPackage,
4 cerberus,
5 fetchFromGitHub,
6 pythonOlder,
7 pyyaml,
8 ruamel-yaml,
9 setuptools,
10}:
11
12buildPythonPackage rec {
13 pname = "riscv-config";
14 version = "3.18.3";
15 pyproject = true;
16
17 disabled = pythonOlder "3.7";
18
19 src = fetchFromGitHub {
20 owner = "riscv-software-src";
21 repo = "riscv-config";
22 tag = version;
23 hash = "sha256-eaHi6ezgU8gQYH97gCS2TzEzIP3F4zfn7uiA/To2Gmc=";
24 };
25
26 pythonRelaxDeps = [ "pyyaml" ];
27
28 build-system = [ setuptools ];
29
30 dependencies = [
31 cerberus
32 pyyaml
33 ruamel-yaml
34 ];
35
36 # Module has no tests
37 doCheck = false;
38
39 pythonImportsCheck = [ "riscv_config" ];
40
41 meta = with lib; {
42 description = "RISC-V configuration validator";
43 homepage = "https://github.com/riscv/riscv-config";
44 changelog = "https://github.com/riscv-software-src/riscv-config/blob/${version}/CHANGELOG.md";
45 license = licenses.bsd3;
46 maintainers = with maintainers; [ genericnerdyusername ];
47 mainProgram = "riscv-config";
48 };
49}