hnix-store/default.nix
2023-11-11 19:00:21 +01:00

27 lines
983 B
Nix

{ rev ? "272fad732d39b24c4549c475176e0d8cbc8c897a"
, pkgs ?
if ((rev == "") || (rev == "default") || (rev == "local"))
then import <nixpkgs> {}
# Do not guard with hash, so the project is able to use current channels (rolling `rev`) of Nixpkgs
else import (builtins.fetchTarball "https://github.com/NixOS/nixpkgs/archive/${rev}.tar.gz") {}
// {
# Try to build dependencies even if they are marked broken.
config.allowBroken = true;
}
}: let
overlay = import ./overlay.nix pkgs pkgs.haskell.lib;
overrideHaskellPackages = orig: {
buildHaskellPackages =
orig.buildHaskellPackages.override overrideHaskellPackages;
overrides = if orig ? overrides
then pkgs.lib.composeExtensions orig.overrides overlay
else overlay;
};
haskellPackages =
pkgs.haskellPackages.override overrideHaskellPackages;
in {
inherit (haskellPackages) hnix-store-core hnix-store-remote;
inherit haskellPackages;
inherit pkgs;
}