-
Notifications
You must be signed in to change notification settings - Fork 6
/
shell.nix
53 lines (39 loc) · 1.25 KB
/
shell.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# nix RAPCore Development Environment
# params
{docs ? false,
prog ? true,
svng ? false}:
# Pin the nixpkgs to stable
with (import ./nix/inputs.nix);
with import (fetchGit {
url = "https://github.com/RAPcores/nix-rapcores-support.git";
ref = "refs/heads/main";
rev = "5ac21598b927af16b2d6600cfa9d6ed9dc1b712c";}) {};
let
verible = import ./nix/verible.nix { inherit pkgs; }; # TODO Upstream?
yosys_symbiflow_plugin = import ./nix/yosys_symbiflow_plugin.nix { inherit pkgs; };
lsoracle = import ./nix/lsoracle.nix { inherit pkgs; }; # TODO Upstream?
in pkgs.mkShell {
buildInputs = with pkgs;
[
# Frontends
yosys verilog verilator
# Support
verible
# Formal
symbiyosys yices
# Bitstream Generation
nextpnr icestorm trellis
]
# ++ (lib.optional docs netlistsvg)
++ (lib.optional docs python38Packages.cairocffi)
++ (lib.optional docs jsteros)
++ (lib.optional docs mach-nix.mach-nix)
++ (lib.optional docs (import ./nix/python/python.nix))
# ++ (lib.optional docs yosys_symbiflow_plugin)
++ (lib.optional prog tinyprog)
++ (lib.optional prog fujprog)
++ (lib.optional prog openocd)
++ (lib.optional svng lsoracle)
;
}