csecp256k1

secp256k1 bindings.
Log | Files | Refs | README | LICENSE

commit e2f401be86c6ee8cbe9b5b06a1fa9cb19e897f55
parent 2b4a9d553de72a0e160d0ba672120969550b6ffb
Author: Jared Tobin <jared@jtobin.io>
Date:   Mon, 19 Feb 2024 16:27:25 +0400

Use haskellPackages.shellFor for devShell.

Diffstat:
Msecp256k1-sys/flake.nix | 30++++++++++++++++++++++++------
1 file changed, 24 insertions(+), 6 deletions(-)

diff --git a/secp256k1-sys/flake.nix b/secp256k1-sys/flake.nix @@ -9,28 +9,46 @@ outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let - pkgs = nixpkgs.legacyPackages.${system}; + lib = "secp256k1-sys"; + + config = { + packageOverrides = super: let self = super.pkgs; in rec { + haskell = super.haskell // { + packageOverrides = self: super: { + ${lib} = super.callCabal2nix lib ./. {}; + }; + }; + }; + }; + + pkgs = import nixpkgs { inherit system; inherit config; }; hpkgs = pkgs.haskell.packages.ghc964; + + cc = pkgs.stdenv.cc; ghc = hpkgs.ghc; cabal = hpkgs.cabal-install; - - lib = "secp256k1-sys"; in { packages.${lib} = hpkgs.callCabal2nix lib self rec { }; defaultPackage = self.packages.${system}.${lib}; - devShells.default = pkgs.mkShell { + devShells.default = hpkgs.shellFor { + packages = p: [ + p.${lib} + ]; + buildInputs = [ cabal + cc ]; inputsFrom = builtins.attrValues self.packages.${system}; shellHook = '' - PS1="[nix] \w$ " - echo "entering shell, using" + PS1="[${lib}] \w$ " + echo "entering ${system} shell, using" + echo "cc: $(${cc}/bin/cc --version)" echo "ghc: $(${ghc}/bin/ghc --version)" echo "cabal: $(${cabal}/bin/cabal --version)" '';