mirror of
https://github.com/haskell-nix/hnix-store.git
synced 2024-09-11 18:05:56 +03:00
Add release file for hydra
This commit is contained in:
parent
6e4b72f021
commit
1459a80086
38
default.nix
38
default.nix
@ -1,5 +1,34 @@
|
||||
{ pkgs ? import <nixpkgs> {} }: let
|
||||
overlay = import ./overlay.nix;
|
||||
{
|
||||
compiler ? "ghc863"
|
||||
, nixpkgs-rev ? "120eab94e0981758a1c928ff81229cd802053158"
|
||||
, nixpkgs-sha256 ? "0qk6k8gxx5xlkyg05dljywj5wx5fvrc3dzp4v2h6ab83b7zwg813"
|
||||
|
||||
, pkgs ? import (builtins.fetchTarball {
|
||||
url = "https://github.com/NixOS/nixpkgs/archive/${nixpkgs-rev}.tar.gz";
|
||||
sha256 = nixpkgs-sha256;
|
||||
}) {
|
||||
config.allowUnfree = true;
|
||||
config.allowBroken = false;
|
||||
}
|
||||
|
||||
, doStrict ? false
|
||||
, doTracing ? false
|
||||
|
||||
}:
|
||||
|
||||
let
|
||||
|
||||
overlay = self: super: builtins.mapAttrs (k: v: (
|
||||
|
||||
pkgs.haskell.lib.overrideCabal v (drv: {
|
||||
|
||||
configureFlags =
|
||||
pkgs.stdenv.lib.optional doTracing "--flags=tracing"
|
||||
++ pkgs.stdenv.lib.optional doStrict "--ghc-options=-Werror";
|
||||
})
|
||||
|
||||
)) (import ./overlay.nix self super);
|
||||
|
||||
overrideHaskellPackages = orig: {
|
||||
buildHaskellPackages =
|
||||
orig.buildHaskellPackages.override overrideHaskellPackages;
|
||||
@ -7,10 +36,9 @@
|
||||
then pkgs.lib.composeExtensions orig.overrides overlay
|
||||
else overlay;
|
||||
};
|
||||
|
||||
in {
|
||||
haskellPackages =
|
||||
pkgs.haskellPackages.override overrideHaskellPackages;
|
||||
haskell844Packages =
|
||||
pkgs.haskell.packages.ghc844.override overrideHaskellPackages;
|
||||
pkgs.haskell.packages.${compiler}.override overrideHaskellPackages;
|
||||
inherit pkgs;
|
||||
}
|
||||
|
23
release.nix
Normal file
23
release.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{}:
|
||||
let matrix = [
|
||||
{ compiler = "ghc863"; doStrict = false; doTracing = false; }
|
||||
{ compiler = "ghc863"; doStrict = false; doTracing = true; }
|
||||
|
||||
{ compiler = "ghc844"; doStrict = false; doTracing = false; }
|
||||
{ compiler = "ghc844"; doStrict = false; doTracing = true; }
|
||||
|
||||
# Broken
|
||||
# { compiler = "ghc802"; doStrict = false; doTracing = false; }
|
||||
# { compiler = "ghc802"; doStrict = false; doTracing = true; }
|
||||
|
||||
# Deprecated
|
||||
# { compiler = "ghc822"; doStrict = true; doTracing = false; }
|
||||
# { compiler = "ghc822"; doStrict = true; doTracing = true; }
|
||||
|
||||
# Broken
|
||||
# { compiler = "ghcjs"; doStrict = false; doTracing = false; }
|
||||
];
|
||||
boolToString = x: if x then "true" else "false";
|
||||
nameForConfig = {compiler, doStrict, doTracing}: builtins.concatStringsSep "-"
|
||||
[ compiler (boolToString doStrict) (boolToString doTracing) ];
|
||||
in builtins.listToAttrs (map (args: { name = nameForConfig args; value = import ./. args; }) matrix)
|
Loading…
Reference in New Issue
Block a user