parent
ce4e1a15bc
commit
4abb8be7ab
|
@ -170,19 +170,22 @@ in package-set { inherit pkgs stdenv callPackage; } self // {
|
||||||
callHackage = name: version: callPackageKeepDeriver (self.hackage2nix name version);
|
callHackage = name: version: callPackageKeepDeriver (self.hackage2nix name version);
|
||||||
|
|
||||||
# Creates a Haskell package from a source package by calling cabal2nix on the source.
|
# Creates a Haskell package from a source package by calling cabal2nix on the source.
|
||||||
callCabal2nix = name: src: args: let
|
callCabal2nixWithOptions = name: src: extraCabal2nixOptions: args:
|
||||||
filter = path: type:
|
let
|
||||||
pkgs.lib.hasSuffix "${name}.cabal" path ||
|
filter = path: type:
|
||||||
baseNameOf path == "package.yaml";
|
pkgs.lib.hasSuffix "${name}.cabal" path ||
|
||||||
expr = self.haskellSrc2nix {
|
baseNameOf path == "package.yaml";
|
||||||
inherit name;
|
expr = self.haskellSrc2nix {
|
||||||
src = if pkgs.lib.canCleanSource src
|
inherit name extraCabal2nixOptions;
|
||||||
then pkgs.lib.cleanSourceWith { inherit src filter; }
|
src = if pkgs.lib.canCleanSource src
|
||||||
else src;
|
then pkgs.lib.cleanSourceWith { inherit src filter; }
|
||||||
};
|
else src;
|
||||||
in overrideCabal (callPackageKeepDeriver expr args) (orig: {
|
};
|
||||||
inherit src;
|
in overrideCabal (callPackageKeepDeriver expr args) (orig: {
|
||||||
});
|
inherit src;
|
||||||
|
});
|
||||||
|
|
||||||
|
callCabal2nix = name: src: args: self.callCabal2nixWithOptions name src "" args;
|
||||||
|
|
||||||
# : { root : Path
|
# : { root : Path
|
||||||
# , source-overrides : Defaulted (Either Path VersionNumber)
|
# , source-overrides : Defaulted (Either Path VersionNumber)
|
||||||
|
|
Loading…
Reference in New Issue