Skip to content

Commit 02edb82

Browse files
committed
Add identifier and checks to hsPkgs.${pkg-name}
1 parent 83db180 commit 02edb82

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

overlays/haskell.nix

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -775,7 +775,7 @@ final: prev: {
775775
in if builtins.length versions != 1
776776
then throw "Multiple versions for ${packageName} ${builtins.toJSON versions}"
777777
else let
778-
components = builtins.listToAttrs (map (x: { name = x.component-name; value = x.available; }) packageTargets);
778+
componentsByName = builtins.listToAttrs (map (x: { name = x.component-name; value = x.available; }) packageTargets);
779779
lookupComponent = collectionName: name: available:
780780
let attrPath =
781781
if collectionName == ""
@@ -795,13 +795,17 @@ final: prev: {
795795
name = final.lib.removePrefix "${prefix}:" n;
796796
value = lookupComponent collectionName name available;
797797
in { inherit name value; }
798-
)) components));
799-
in {
800-
components =
798+
)) componentsByName));
799+
in rec {
800+
identifier = { name = packageName; version = builtins.head versions; };
801+
components =
801802
final.lib.mapAttrs componentsWithPrefix haskellLib.componentPrefix
802-
// final.lib.optionalAttrs (components ? lib) {
803-
library = lookupComponent "" "" components.lib;
803+
// final.lib.optionalAttrs (componentsByName ? lib) {
804+
library = lookupComponent "" "" componentsByName.lib;
804805
};
806+
checks = final.recurseIntoAttrs (builtins.mapAttrs
807+
(_: d: haskellLib.check d)
808+
(final.lib.filterAttrs (_: d: d.config.doCheck) components.tests));
805809
})
806810
(builtins.groupBy (x: x.pkg-name) plan-json.targets)) config.preExistingPkgs;
807811
})

0 commit comments

Comments
 (0)