From 166abaf80034739c1118a3678b28ef2c45beb129 Mon Sep 17 00:00:00 2001 From: fpi Date: Fri, 29 Mar 2024 13:51:52 +0100 Subject: Add cicsim --- flake.nix | 45 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 43 insertions(+), 2 deletions(-) (limited to 'flake.nix') diff --git a/flake.nix b/flake.nix index 2df09e3..c18b158 100644 --- a/flake.nix +++ b/flake.nix @@ -8,17 +8,54 @@ url = "github:fpiper/open_pdks-flake"; inputs.nixpkgs.follows = "nixpkgs"; }; + cicsim = { + url = "github:wulffern/cicsim"; + flake = false; + }; }; - outputs = { self, nixpkgs, open_pdks }: + outputs = { self, nixpkgs, open_pdks, cicsim }: let pkgs = import nixpkgs { system = "x86_64-linux"; }; in { + packages.x86_64-linux.cicsim = + let pkgs = import nixpkgs { + system = "x86_64-linux"; + }; + in pkgs.python3.pkgs.buildPythonPackage rec { + name = "cicsim"; + format = "setuptools"; + src = cicsim; + doCheck = false; + + propagatedBuildInputs = with pkgs.python311Packages; [ + pandas + tabulate + click + matplotlib + numpy + pyyaml + jinja2 + ]; + buildInputs = with pkgs.python311Packages; [ + pip + wheel + setuptools + # tikzplotlib # broken with matplotlib 3.8 + ]; + }; + devShells.x86_64-linux.default = self.devShells.x86_64-linux.osic; - devShells.x86_64-linux.osic = pkgs.mkShell { + devShells.x86_64-linux.osic = let + finalPython = pkgs.python3.override { + packageOverrides = python-self: python-super: { + cicsim = self.packages.x86_64-linux.cicsim; + }; + }; + in pkgs.mkShell { shellHook = '' export PS1="osic $ " export PDK_ROOT="${open_pdks.outputs.packages.x86_64-linux.open_pdks}/pdk" @@ -27,6 +64,10 @@ pkgs.ngspice pkgs.magic-vlsi pkgs.xschem + (finalPython.withPackages (ps: [ + ps.cicsim + ])) + pkgs.pandoc ]; }; }; -- cgit v1.2.3