blob: fd7290f8038a417cbdc0f372e5c5e6ecce6345ae (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
{ sources ? import ../nix/sources.nix
}:
(self: super:
let
pkgs = self;
haskellLib = pkgs.haskell.lib;
in
{
haskell = super.haskell // {
packageOverrides = pkgs.lib.composeManyExtensions [
super.haskell.packageOverrides
(self: super: {
acms = (self.callCabal2nix "acms" ../acms { }).overrideAttrs (oldAttrs:
pkgs.lib.optionalAttrs pkgs.stdenv.isx86_64
{
nativeBuildInputs = (oldAttrs.nativeBuildInputs or [ ]) ++ [ pkgs.makeWrapper ];
postInstall = (oldAttrs.postInstall or "") + ''
wrapProgram $out/bin/acms \
--set-default APPROOT ${pkgs.pkgsCross.ghcjs.haskell.packages.ghc910.frontend}
'';
});
astore = haskellLib.doJailbreak (self.callCabal2nix "astore" sources.json2sql { });
autotypes = self.callCabal2nix "autotypes" ../autotypes { };
frontend = (self.callCabal2nix "frontend" ../frontend { }).overrideAttrs (_: {
installPhase = ''
cp -a dist/build/frontend/frontend.jsexe $out
'';
});
sh = haskellLib.dontCheck (self.callCabal2nix "sh" sources.sh { });
repline = haskellLib.doJailbreak super.repline;
uuid = haskellLib.doJailbreak super.uuid;
websockets = haskellLib.doJailbreak super.websockets;
hinotify = super.hinotify.overrideAttrs (_: {
version = "0.4.2";
src = builtins.fetchTarball "https://hackage.haskell.org/package/hinotify-0.4.2/hinotify-0.4.2.tar.gz";
});
})
];
};
})
|