diff --git a/pkgs/by-name/ne/netgen-vlsi/package.nix b/pkgs/by-name/ne/netgen-vlsi/package.nix new file mode 100644 index 0000000000000..f878476fd6cf4 --- /dev/null +++ b/pkgs/by-name/ne/netgen-vlsi/package.nix @@ -0,0 +1,52 @@ +{ + lib, + stdenv, + fetchFromGitHub, + tcl, + tk, + m4, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "netgen"; + version = "1.5.314"; + + src = fetchFromGitHub { + owner = "RTimothyEdwards"; + repo = "netgen"; + tag = finalAttrs.version; + hash = "sha256-g8d/faYjhL6WXSShqWn9n+4cUJ8qKtqyEgyIRsrHo5o="; + }; + + strictDeps = true; + + nativeBuildInputs = [ + m4 + ]; + + buildInputs = [ + tcl + tk + ]; + + env.NIX_CFLAGS_COMPILE = "-std=gnu89"; + + configureFlags = [ + "--with-tcl=${lib.getLib tcl}/lib" + "--with-tk=${lib.getLib tk}/lib" + ]; + + # Netgen generates a wrapper script with a hardcoded /bin/bash shebang. + # We fix it here because patchShebangs sometimes misses it in post-install. + postFixup = '' + sed -i "1s|#!/bin/bash|#!${stdenv.shell}|" $out/bin/netgen + ''; + + meta = { + description = "LVS tool for VLSI circuit netlists"; + mainProgram = "netgen"; + homepage = "https://github.com/RTimothyEdwards/netgen"; + license = lib.licenses.gpl1Only; + maintainers = [ lib.maintainers.gonsolo ]; + }; +})