Loading pkgs/by-name/gn/gnucap/package.nix +55 −56 Original line number Diff line number Diff line { callPackage, fetchFromSavannah, gnucap, gnucap-full, installShellFiles, lib, readline, Loading @@ -12,36 +10,20 @@ writeScript, }: let version = "20240220"; meta = with lib; { description = "Gnu Circuit Analysis Package"; longDescription = '' Gnucap is a modern general purpose circuit simulator with several advantages over Spice derivatives. It performs nonlinear dc and transient analyses, fourier analysis, and ac analysis. ''; homepage = "http://www.gnucap.org/"; changelog = "https://git.savannah.gnu.org/gitweb/?p=gnucap.git;a=blob;f=NEWS"; license = licenses.gpl3Only; platforms = platforms.all; broken = stdenv.hostPlatform.isDarwin; # Relies on LD_LIBRARY_PATH maintainers = [ maintainers.raboof ]; mainProgram = "gnucap"; }; in stdenv.mkDerivation { stdenv.mkDerivation (finalAttrs: { pname = "gnucap"; inherit version; version = "20240220"; src = fetchFromSavannah { repo = "gnucap"; rev = version; rev = finalAttrs.version; hash = "sha256-aZMiNKwI6eQZAxlF/+GoJhKczohgGwZ0/Wgpv3+AhYY="; }; nativeBuildInputs = [ installShellFiles ]; buildInputs = [ readline termcap Loading @@ -53,20 +35,21 @@ stdenv.mkDerivation { installManPage man/* ''; passthru.tests = { passthru = { tests = { verilog = runCommand "gnucap-verilog-test" { } '' echo "attach mgsim" | ${gnucap-full}/bin/gnucap -a msgsim > $out echo "attach mgsim" | ${ finalAttrs.finalPackage.withPlugins (p: [ p.verilog ]) }/bin/gnucap -a msgsim > $out cat $out | grep "verilog: already installed" ''; }; inherit meta; } // { plugins = callPackage ./plugins.nix { }; withPlugins = p: let gnucap = finalAttrs.finalPackage; selectedPlugins = p gnucap.plugins; wrapper = writeScript "gnucap" '' export GNUCAP_PLUGPATH=${gnucap}/lib/gnucap Loading @@ -77,8 +60,8 @@ stdenv.mkDerivation { ''; in stdenv.mkDerivation { pname = "gnucap-with-plugins"; inherit version; pname = "${finalAttrs.pname}-with-plugins"; inherit (finalAttrs) version; propagatedBuildInputs = selectedPlugins; Loading @@ -89,6 +72,22 @@ stdenv.mkDerivation { cp ${wrapper} $out/bin/gnucap ''; inherit meta; inherit (finalAttrs) meta; }; }; meta = { description = "Gnu Circuit Analysis Package"; longDescription = '' Gnucap is a modern general purpose circuit simulator with several advantages over Spice derivatives. It performs nonlinear dc and transient analyses, fourier analysis, and ac analysis. ''; homepage = "http://www.gnucap.org/"; changelog = "https://git.savannah.gnu.org/gitweb/?p=gnucap.git;a=blob;f=NEWS"; license = lib.licenses.gpl3Only; platforms = lib.platforms.all; broken = stdenv.hostPlatform.isDarwin; # Relies on LD_LIBRARY_PATH maintainers = [ lib.maintainers.raboof ]; mainProgram = "gnucap"; }; } }) Loading
pkgs/by-name/gn/gnucap/package.nix +55 −56 Original line number Diff line number Diff line { callPackage, fetchFromSavannah, gnucap, gnucap-full, installShellFiles, lib, readline, Loading @@ -12,36 +10,20 @@ writeScript, }: let version = "20240220"; meta = with lib; { description = "Gnu Circuit Analysis Package"; longDescription = '' Gnucap is a modern general purpose circuit simulator with several advantages over Spice derivatives. It performs nonlinear dc and transient analyses, fourier analysis, and ac analysis. ''; homepage = "http://www.gnucap.org/"; changelog = "https://git.savannah.gnu.org/gitweb/?p=gnucap.git;a=blob;f=NEWS"; license = licenses.gpl3Only; platforms = platforms.all; broken = stdenv.hostPlatform.isDarwin; # Relies on LD_LIBRARY_PATH maintainers = [ maintainers.raboof ]; mainProgram = "gnucap"; }; in stdenv.mkDerivation { stdenv.mkDerivation (finalAttrs: { pname = "gnucap"; inherit version; version = "20240220"; src = fetchFromSavannah { repo = "gnucap"; rev = version; rev = finalAttrs.version; hash = "sha256-aZMiNKwI6eQZAxlF/+GoJhKczohgGwZ0/Wgpv3+AhYY="; }; nativeBuildInputs = [ installShellFiles ]; buildInputs = [ readline termcap Loading @@ -53,20 +35,21 @@ stdenv.mkDerivation { installManPage man/* ''; passthru.tests = { passthru = { tests = { verilog = runCommand "gnucap-verilog-test" { } '' echo "attach mgsim" | ${gnucap-full}/bin/gnucap -a msgsim > $out echo "attach mgsim" | ${ finalAttrs.finalPackage.withPlugins (p: [ p.verilog ]) }/bin/gnucap -a msgsim > $out cat $out | grep "verilog: already installed" ''; }; inherit meta; } // { plugins = callPackage ./plugins.nix { }; withPlugins = p: let gnucap = finalAttrs.finalPackage; selectedPlugins = p gnucap.plugins; wrapper = writeScript "gnucap" '' export GNUCAP_PLUGPATH=${gnucap}/lib/gnucap Loading @@ -77,8 +60,8 @@ stdenv.mkDerivation { ''; in stdenv.mkDerivation { pname = "gnucap-with-plugins"; inherit version; pname = "${finalAttrs.pname}-with-plugins"; inherit (finalAttrs) version; propagatedBuildInputs = selectedPlugins; Loading @@ -89,6 +72,22 @@ stdenv.mkDerivation { cp ${wrapper} $out/bin/gnucap ''; inherit meta; inherit (finalAttrs) meta; }; }; meta = { description = "Gnu Circuit Analysis Package"; longDescription = '' Gnucap is a modern general purpose circuit simulator with several advantages over Spice derivatives. It performs nonlinear dc and transient analyses, fourier analysis, and ac analysis. ''; homepage = "http://www.gnucap.org/"; changelog = "https://git.savannah.gnu.org/gitweb/?p=gnucap.git;a=blob;f=NEWS"; license = lib.licenses.gpl3Only; platforms = lib.platforms.all; broken = stdenv.hostPlatform.isDarwin; # Relies on LD_LIBRARY_PATH maintainers = [ lib.maintainers.raboof ]; mainProgram = "gnucap"; }; } })