mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-29 06:45:54 +03:00
Move packageSourceOverrides to haskellLib
This commit is contained in:
parent
c278dd0b9d
commit
9047a7dd33
@ -40,6 +40,18 @@ rec {
|
|||||||
overrideScope = scope: overrideCabal (drv.overrideScope scope) f;
|
overrideScope = scope: overrideCabal (drv.overrideScope scope) f;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# : Map Name (Either Path VersionNumber) -> HaskellPackageOverrideSet
|
||||||
|
# Given a set whose values are either paths or version strings, produces
|
||||||
|
# a package override set (i.e. (self: super: { etc. })) that sets
|
||||||
|
# the packages named in the input set to the corresponding versions
|
||||||
|
packageSourceOverrides =
|
||||||
|
overrides: self: super: pkgs.lib.mapAttrs (name: src:
|
||||||
|
let isPath = x: builtins.substring 0 1 (toString x) == "/";
|
||||||
|
generateExprs = if isPath src
|
||||||
|
then self.callCabal2nix
|
||||||
|
else self.callHackage;
|
||||||
|
in generateExprs name src {}) overrides;
|
||||||
|
|
||||||
/* doCoverage modifies a haskell package to enable the generation
|
/* doCoverage modifies a haskell package to enable the generation
|
||||||
and installation of a coverage report.
|
and installation of a coverage report.
|
||||||
|
|
||||||
|
@ -139,6 +139,8 @@ in package-set { inherit pkgs stdenv callPackage; } self // {
|
|||||||
|
|
||||||
inherit mkDerivation callPackage haskellSrc2nix hackage2nix;
|
inherit mkDerivation callPackage haskellSrc2nix hackage2nix;
|
||||||
|
|
||||||
|
inherit (haskellLib) packageSourceOverrides;
|
||||||
|
|
||||||
callHackage = name: version: self.callPackage (self.hackage2nix name version);
|
callHackage = name: version: self.callPackage (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.
|
||||||
@ -155,18 +157,6 @@ in package-set { inherit pkgs stdenv callPackage; } self // {
|
|||||||
};
|
};
|
||||||
}) args) (_: { inherit src; });
|
}) args) (_: { inherit src; });
|
||||||
|
|
||||||
# : Map Name (Either Path VersionNumber) -> HaskellPackageOverrideSet
|
|
||||||
# Given a set whose values are either paths or version strings, produces
|
|
||||||
# a package override set (i.e. (self: super: { etc. })) that sets
|
|
||||||
# the packages named in the input set to the corresponding versions
|
|
||||||
packageSourceOverrides =
|
|
||||||
overrides: self: super: pkgs.lib.mapAttrs (name: src:
|
|
||||||
let isPath = x: builtins.substring 0 1 (toString x) == "/";
|
|
||||||
generateExprs = if isPath src
|
|
||||||
then self.callCabal2nix
|
|
||||||
else self.callHackage;
|
|
||||||
in generateExprs name src {}) overrides;
|
|
||||||
|
|
||||||
# : { root : Path
|
# : { root : Path
|
||||||
# , source-overrides : Defaulted (Either Path VersionNumber)
|
# , source-overrides : Defaulted (Either Path VersionNumber)
|
||||||
# , overrides : Defaulted (HaskellPackageOverrideSet)
|
# , overrides : Defaulted (HaskellPackageOverrideSet)
|
||||||
|
Loading…
Reference in New Issue
Block a user