{ npins ? import ./npins, nixpkgs ? npins.nixpkgs, pkgs ? import nixpkgs { }, lib ? pkgs.lib, ... }: lib.makeScope pkgs.newScope ( self: let addProtobuf = oldAttrs: { nativeBuildInputs = oldAttrs.nativeBuildInputs or [ ] ++ [ (self.callPackage ({ protobuf }: protobuf) { }) ]; }; in { sidx-crate2nix = ( self.callPackage ./Cargo.nix { defaultCrateOverrides = pkgs.defaultCrateOverrides // { sidx = oldAttrs: { src = let fs = pkgs.lib.fileset; in fs.toSource { root = ./.; fileset = fs.unions [ ./src ./Cargo.toml ./Cargo.lock ]; }; }; snix-castore = addProtobuf; # prost-wkt-types = addProtobuf; # openssl-sys = oldAttrs: { # nativeBuildInputs = oldAttrs.buildInputs or [ ] ++ [ # (self.callPackage ({ pkg-config }: pkg-config) { }) # ]; # buildInputs = oldAttrs.buildInputs or [ ] ++ [ # (self.callPackage ({ openssl }: openssl) { }) # ]; # }; }; } ); sidx = self.sidx-crate2nix.rootCrate.build; } )