Skip to content

Commit 440dfeb

Browse files
committed
Build expressions.
1 parent 9f98592 commit 440dfeb

File tree

5 files changed

+41
-2
lines changed

5 files changed

+41
-2
lines changed

default.nix

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{ pkgs ? import <nixpkgs> {} }: let
2+
overlay = import ./overlay.nix;
3+
overrideHaskellPackages = orig: {
4+
buildHaskellPackages =
5+
orig.buildHaskellPackages.override overrideHaskellPackages;
6+
overrides = if orig ? overrides
7+
then pkgs.lib.composeExtensions orig.overrides overlay
8+
else overlay;
9+
};
10+
in {
11+
haskellPackages =
12+
pkgs.haskellPackages.override overrideHaskellPackages;
13+
inherit pkgs;
14+
}

hnix-store-core/hnix-store-core.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ library
2626
, System.Nix.Path
2727
, System.Nix.Store
2828
, System.Nix.Util
29-
build-depends: base >=4.10 && <4.11
29+
build-depends: base >=4.10
3030
, bytestring
3131
, binary
3232
, bytestring

hnix-store-remote/hnix-store-remote.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ library
2020
, System.Nix.Store.Remote.Types
2121
, System.Nix.Store.Remote.Util
2222

23-
build-depends: base >=4.10 && <4.11
23+
build-depends: base >=4.10
2424
, bytestring
2525
, binary
2626
, bytestring

overlay.nix

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
huper: helf: {
2+
hnix-store-core =
3+
helf.callCabal2nix "hnix-store-core" ./hnix-store-core {};
4+
hnix-store-remote =
5+
helf.callCabal2nix "hnix-store-remote" ./hnix-store-remote {};
6+
}

shell.nix

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
let
2+
packages = [ "hnix-store-core" "hnix-store-remote" ];
3+
inherit (import ./. {}) pkgs haskellPackages;
4+
hslib = pkgs.haskell.lib;
5+
extract-external-inputs = p:
6+
builtins.filter (dep: !(builtins.elem dep packages))
7+
(map (x: x.pname) (hslib.getHaskellBuildInputs haskellPackages.${p}));
8+
external-inputs = map (x: haskellPackages.${x}) (builtins.concatLists
9+
(map extract-external-inputs packages));
10+
package-envs = builtins.listToAttrs (map (p: {
11+
name = p;
12+
value = haskellPackages.${p}.env;
13+
}) packages);
14+
in (haskellPackages.mkDerivation {
15+
pname = "hnix-store-core";
16+
version = "0.0.0.0";
17+
libraryHaskellDepends = external-inputs;
18+
license = pkgs.stdenv.lib.licenses.asl20;
19+
}).env // package-envs

0 commit comments

Comments
 (0)