lol
1{ stdenv, fetchFromGitHub, python3, libftdi, pkgconfig }:
2
3stdenv.mkDerivation rec {
4 name = "icestorm-${version}";
5 version = "2018.08.01";
6
7 src = fetchFromGitHub {
8 owner = "cliffordwolf";
9 repo = "icestorm";
10 rev = "8cac6c584044034210fe0ba1e6b930ff1cc59465";
11 sha256 = "01cnmk4khbbgzc308qj04sfwg0r8b9nh3s7xjsxdjcb3h1m9w88c";
12 };
13
14 nativeBuildInputs = [ pkgconfig ];
15 buildInputs = [ python3 libftdi ];
16 makeFlags = [ "PREFIX=$(out)" ];
17
18 # fix icebox_vlog chipdb path. icestorm issue:
19 # https://github.com/cliffordwolf/icestorm/issues/125
20 patchPhase = ''
21 substituteInPlace ./icebox/icebox_vlog.py \
22 --replace /usr/local/share "$out/share"
23 '';
24
25 meta = {
26 description = "Documentation and tools for Lattice iCE40 FPGAs";
27 longDescription = ''
28 Project IceStorm aims at reverse engineering and
29 documenting the bitstream format of Lattice iCE40
30 FPGAs and providing simple tools for analyzing and
31 creating bitstream files.
32 '';
33 homepage = http://www.clifford.at/icestorm/;
34 license = stdenv.lib.licenses.isc;
35 maintainers = with stdenv.lib.maintainers; [ shell thoughtpolice ];
36 platforms = stdenv.lib.platforms.linux;
37 };
38}