Compare commits

...

4 Commits

Author SHA1 Message Date
1b678e5758 wip 2018-11-13 00:21:20 +02:00
2a53bbfdbb wip 2018-11-12 23:56:30 +02:00
5490065604 wip 2018-11-12 23:40:04 +02:00
f9dbbf8321 ghc 2018-11-12 23:33:12 +02:00
4 changed files with 32 additions and 6 deletions

View File

@ -8,4 +8,5 @@ before_script:
- mkdir -p ~/.config/nixpkgs - mkdir -p ~/.config/nixpkgs
script: script:
- nix-build ./release.nix --option trusted-public-keys "masser-ebook-manager.cachix.org-1:mtFSkQ2MO5MvjUpulZoFKjKUIa8g8CTcdPVuJaPKS1w= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" --option binary-caches "https://cache.nixos.org https://masser-ebook-manager.cachix.org" -A backend -A frontend - nix-build ./release.nix --option trusted-public-keys "masser-ebook-manager.cachix.org-1:mtFSkQ2MO5MvjUpulZoFKjKUIa8g8CTcdPVuJaPKS1w= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" --option binary-caches "https://cache.nixos.org https://masser-ebook-manager.cachix.org" -A ghc.backend -A ghc.frontend
- nix-build ./release.nix --option trusted-public-keys "masser-ebook-manager.cachix.org-1:mtFSkQ2MO5MvjUpulZoFKjKUIa8g8CTcdPVuJaPKS1w= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" --option binary-caches "https://cache.nixos.org https://masser-ebook-manager.cachix.org" -A ghcjs.frontend

View File

@ -14,9 +14,12 @@ let
sha256 = "1yq5y4vffslm6abnfnggp5m3k6vla6mzcwmhmm23l8yizsvdkwv2"; sha256 = "1yq5y4vffslm6abnfnggp5m3k6vla6mzcwmhmm23l8yizsvdkwv2";
}; };
dontCheck = nixpkgs.haskell.lib.dontCheck;
in in
(import ./project.nix nixpkgs) { (import ./project.nix nixpkgs) {
haskellPackages = haskellPackages;
packages = { packages = {
common = ./common; common = ./common;
backend = ./backend; backend = ./backend;
@ -27,6 +30,24 @@ in
jsaddle-warp = nixpkgs.haskell.lib.dontCheck (super.callPackage (jsaddle + "/jsaddle-warp") {}); jsaddle-warp = nixpkgs.haskell.lib.dontCheck (super.callPackage (jsaddle + "/jsaddle-warp") {});
jsaddle = super.callPackage (jsaddle + "/jsaddle") {}; jsaddle = super.callPackage (jsaddle + "/jsaddle") {};
miso = super.callPackage (miso + "/miso-ghc-jsaddle.nix") {}; miso = super.callPackage (miso + "/miso-ghc-jsaddle.nix") {};
doctest = null; # Not compilable with ghcjs
comonad = dontCheck super.comonad;
Glob = dontCheck super.Glob;
SHA = dontCheck super.SHA;
iproute = dontCheck super.iproute;
semigroupoids = dontCheck super.semigroupoids;
wai-app-static = dontCheck super.wai-app-static;
attoparsec = dontCheck super.attoparsec;
http-date = dontCheck super.http-date;
lens = dontCheck super.lens;
unix-time = dontCheck super.unix-time;
http-types = dontCheck super.http-types;
servant = dontCheck super.servant;
word8 = dontCheck super.word8;
http2 = dontCheck super.http2;
wai-extra = dontCheck super.wai-extra;
haskeline = super.callHackage "haskeline" "0.7.3.1" {};
terminfo = super.callHackage "terminfo" "0.4.1.1" {};
}; };
tools = with haskellPackages; [ tools = with haskellPackages; [
ghcid ghcid

View File

@ -6,7 +6,8 @@ let
in in
{ packages { haskellPackages
, packages
, overrides ? _ : _ : {} , overrides ? _ : _ : {}
, tools ? [] , tools ? []
}: }:
@ -17,12 +18,12 @@ let
(self: super: mapAttrs (name: path: self.callCabal2nix name path {}) packages) (self: super: mapAttrs (name: path: self.callCabal2nix name path {}) packages)
overrides overrides
]; ];
haskellPackages = nixpkgs.haskellPackages.override { overrides = overrides'; }; haskellPackages' = haskellPackages.override { overrides = overrides'; };
packages' = mapAttrs (name: _: haskellPackages."${name}") packages; packages' = mapAttrs (name: _: haskellPackages'."${name}") packages;
mkShell = name: pkg: mkShell = name: pkg:
let let
n = "${name}-shell"; n = "${name}-shell";
deps = haskellPackages.ghcWithHoogle (pkgs: pkg.buildInputs ++ pkg.propagatedBuildInputs); deps = haskellPackages'.ghcWithHoogle (pkgs: pkg.buildInputs ++ pkg.propagatedBuildInputs);
in in
{ {
name = "${n}"; name = "${n}";

View File

@ -12,4 +12,7 @@ let
in in
import ./default.nix { nixpkgs = pinnedPkgs; haskellPackages = pinnedPkgs.haskellPackages; } {
ghc = import ./default.nix { nixpkgs = pinnedPkgs; haskellPackages = pinnedPkgs.haskell.packages.ghc843; };
ghcjs = import ./default.nix { nixpkgs = pinnedPkgs; haskellPackages = pinnedPkgs.haskell.packages.ghcjs84; };
}