Merge master into staging-next
This commit is contained in:
commit
ee007cdc35
|
@ -12,4 +12,4 @@ dont-distribute-packages:
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
echo "Regenerating list of transitive broken packages ..."
|
echo "Regenerating list of transitive broken packages ..."
|
||||||
echo -e $(nix-instantiate --eval --strict maintainers/scripts/haskell/transitive-broken-packages.nix) | sed 's/\"//' | sort -i >> $config_file
|
echo -e $(nix-instantiate --eval --strict maintainers/scripts/haskell/transitive-broken-packages.nix) | sed 's/\"//' | LC_ALL=C.UTF-8 sort -i >> $config_file
|
||||||
|
|
|
@ -2,6 +2,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
hello-world = pkgs.writeText "hello-world" ''
|
hello-world = pkgs.writeText "hello-world" ''
|
||||||
|
{-# OPTIONS --guardedness #-}
|
||||||
open import IO
|
open import IO
|
||||||
open import Level
|
open import Level
|
||||||
|
|
||||||
|
@ -35,10 +36,6 @@ in
|
||||||
machine.succeed("touch TestEmpty.agda")
|
machine.succeed("touch TestEmpty.agda")
|
||||||
machine.succeed("agda TestEmpty.agda")
|
machine.succeed("agda TestEmpty.agda")
|
||||||
|
|
||||||
# Minimal script that actually uses the standard library
|
|
||||||
machine.succeed('echo "import IO" > TestIO.agda')
|
|
||||||
machine.succeed("agda -l standard-library -i . TestIO.agda")
|
|
||||||
|
|
||||||
# Hello world
|
# Hello world
|
||||||
machine.succeed(
|
machine.succeed(
|
||||||
"cp ${hello-world} HelloWorld.agda"
|
"cp ${hello-world} HelloWorld.agda"
|
||||||
|
|
|
@ -13,10 +13,10 @@ let
|
||||||
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
|
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
|
||||||
|
|
||||||
sha256 = {
|
sha256 = {
|
||||||
x86_64-linux = "16hzhmsh9nv2brpzx8wnz08sanf0v6f3ln5hqgzxck0pafbzqyl5";
|
x86_64-linux = "11h4c5ghgn3qrg66jh2par3cl3fqzn9xb7gdniww4badnyajnij8";
|
||||||
x86_64-darwin = "1a44fm5fx0zqlfr344mvc0m9hbd0vxd6s489pmh8x7m7q3sadi7j";
|
x86_64-darwin = "0hd3qdxg4cknk3fxv509jlblwmfx65bm2a4arsg255224dpg64n2";
|
||||||
aarch64-linux = "082gjmnlvk12vkcxbpsd4xfgs38qbxkfawq9kyl3p7i8y6anrd4i";
|
aarch64-linux = "0waakj413kqf68sawajd3n24qdbx6b2svyb4lgbn0sy1apc96s3c";
|
||||||
armv7l-linux = "0zs66qmlq65166s34qjr6gppxvl5hyz1mjwxc97mki2c6y61fp28";
|
armv7l-linux = "1ij2bmsk601f1vjljj6gvxsxrcjqf2m74s9kc006hmcz7czjgk8f";
|
||||||
}.${system};
|
}.${system};
|
||||||
|
|
||||||
sourceRoot = {
|
sourceRoot = {
|
||||||
|
@ -31,7 +31,7 @@ in
|
||||||
|
|
||||||
# Please backport all compatible updates to the stable release.
|
# Please backport all compatible updates to the stable release.
|
||||||
# This is important for the extension ecosystem.
|
# This is important for the extension ecosystem.
|
||||||
version = "1.58.1";
|
version = "1.58.2";
|
||||||
pname = "vscodium";
|
pname = "vscodium";
|
||||||
|
|
||||||
executableName = "codium";
|
executableName = "codium";
|
||||||
|
|
|
@ -52,5 +52,10 @@ stdenv.mkDerivation rec {
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
maintainers = with maintainers; [ marsam mpickering ];
|
maintainers = with maintainers; [ marsam mpickering ];
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
|
|
||||||
|
# Broken due to Agda update. See
|
||||||
|
# https://github.com/NixOS/nixpkgs/pull/129606#issuecomment-881107449.
|
||||||
|
broken = true;
|
||||||
|
hydraPlatforms = platforms.none;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -193,7 +193,7 @@ let
|
||||||
'';
|
'';
|
||||||
|
|
||||||
in runCommand "test-writers" {
|
in runCommand "test-writers" {
|
||||||
passthru = { inherit writeTest bin simple; };
|
passthru = { inherit writeTest bin simple path; };
|
||||||
meta.platforms = lib.platforms.all;
|
meta.platforms = lib.platforms.all;
|
||||||
} ''
|
} ''
|
||||||
${lib.concatMapStringsSep "\n" (test: writeTest "success" test.name "${test}/bin/${test.name}") (lib.attrValues bin)}
|
${lib.concatMapStringsSep "\n" (test: writeTest "success" test.name "${test}/bin/${test.name}") (lib.attrValues bin)}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"commit": "080786cc20b9223cc5c1dc04d3e47ce3ad0b0f36",
|
"commit": "360e4a3b93ab9fc49673c9d91eebd963ddd7e132",
|
||||||
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/080786cc20b9223cc5c1dc04d3e47ce3ad0b0f36.tar.gz",
|
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/360e4a3b93ab9fc49673c9d91eebd963ddd7e132.tar.gz",
|
||||||
"sha256": "0shv10s208nazb7q36vsx6a4sy7a14qikad4b984r9gz3j6g7l62",
|
"sha256": "0pzi0kjlma36s0z5wfcghn6h6lwx61vvq8f7322nz80fs4drpn64",
|
||||||
"msg": "Update from Hackage at 2021-07-02T10:49:03Z"
|
"msg": "Update from Hackage at 2021-07-07T20:16:30Z"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
{ lib, stdenv
|
{ lib, stdenv
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, fetchpatch
|
|
||||||
, nix-update-script
|
, nix-update-script
|
||||||
, pantheon
|
, pantheon
|
||||||
, pkg-config
|
, pkg-config
|
||||||
|
@ -12,11 +11,12 @@
|
||||||
, gtk3
|
, gtk3
|
||||||
, granite
|
, granite
|
||||||
, libgee
|
, libgee
|
||||||
|
, libhandy
|
||||||
, elementary-icon-theme
|
, elementary-icon-theme
|
||||||
, appstream
|
, appstream
|
||||||
, libpeas
|
, libpeas
|
||||||
, editorconfig-core-c
|
, editorconfig-core-c
|
||||||
, gtksourceview3
|
, gtksourceview4
|
||||||
, gtkspell3
|
, gtkspell3
|
||||||
, libsoup
|
, libsoup
|
||||||
, vte
|
, vte
|
||||||
|
@ -25,11 +25,12 @@
|
||||||
, ctags
|
, ctags
|
||||||
, libgit2-glib
|
, libgit2-glib
|
||||||
, wrapGAppsHook
|
, wrapGAppsHook
|
||||||
|
, polkit
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "elementary-code";
|
pname = "elementary-code";
|
||||||
version = "3.4.1";
|
version = "6.0.0";
|
||||||
|
|
||||||
repoName = "code";
|
repoName = "code";
|
||||||
|
|
||||||
|
@ -37,17 +38,9 @@ stdenv.mkDerivation rec {
|
||||||
owner = "elementary";
|
owner = "elementary";
|
||||||
repo = repoName;
|
repo = repoName;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-4AEayj+K/lOW6jEYmvmdan1kTqqqLL1YzwcU7/3PH5U=";
|
sha256 = "1w1m52mq3zr9alkxk1c0s4ncscka1km5ppd0r6zm86qan9cjwq0f";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
|
||||||
# Fix build with latest Vala.
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://github.com/elementary/code/commit/c50580d3336296823da9a2c50b824f21fde50286.patch";
|
|
||||||
sha256 = "F+ZYlnZWYCU68G4oayLfbTnvSnTb4YA0zHVGD/Uf3KA=";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
updateScript = nix-update-script {
|
updateScript = nix-update-script {
|
||||||
attrPath = "pantheon.${pname}";
|
attrPath = "pantheon.${pname}";
|
||||||
|
@ -60,6 +53,10 @@ stdenv.mkDerivation rec {
|
||||||
meson
|
meson
|
||||||
ninja
|
ninja
|
||||||
pkg-config
|
pkg-config
|
||||||
|
|
||||||
|
# polkit is needed for ITS rules
|
||||||
|
polkit
|
||||||
|
|
||||||
python3
|
python3
|
||||||
vala
|
vala
|
||||||
wrapGAppsHook
|
wrapGAppsHook
|
||||||
|
@ -71,10 +68,11 @@ stdenv.mkDerivation rec {
|
||||||
elementary-icon-theme
|
elementary-icon-theme
|
||||||
granite
|
granite
|
||||||
gtk3
|
gtk3
|
||||||
gtksourceview3
|
gtksourceview4
|
||||||
gtkspell3
|
gtkspell3
|
||||||
libgee
|
libgee
|
||||||
libgit2-glib
|
libgit2-glib
|
||||||
|
libhandy
|
||||||
libpeas
|
libpeas
|
||||||
libsoup
|
libsoup
|
||||||
vte
|
vte
|
||||||
|
|
|
@ -12,6 +12,7 @@
|
||||||
, gtk3
|
, gtk3
|
||||||
, libxml2
|
, libxml2
|
||||||
, granite
|
, granite
|
||||||
|
, libhandy
|
||||||
, libnotify
|
, libnotify
|
||||||
, vte
|
, vte
|
||||||
, libgee
|
, libgee
|
||||||
|
@ -23,7 +24,7 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "elementary-terminal";
|
pname = "elementary-terminal";
|
||||||
version = "5.5.2";
|
version = "6.0.0";
|
||||||
|
|
||||||
repoName = "terminal";
|
repoName = "terminal";
|
||||||
|
|
||||||
|
@ -31,7 +32,7 @@ stdenv.mkDerivation rec {
|
||||||
owner = "elementary";
|
owner = "elementary";
|
||||||
repo = repoName;
|
repo = repoName;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-giVmL0zYEVYJ40ZBQ9dDb4hOx4HaYRt7tUTOu37lMYU=";
|
sha256 = "08akr4sv4jy9kd4s26kib6j7i8hc3vs0sp71fifv7ww4mi9cm6jc";
|
||||||
};
|
};
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
|
@ -57,6 +58,7 @@ stdenv.mkDerivation rec {
|
||||||
granite
|
granite
|
||||||
gtk3
|
gtk3
|
||||||
libgee
|
libgee
|
||||||
|
libhandy
|
||||||
libnotify
|
libnotify
|
||||||
pcre2
|
pcre2
|
||||||
vte
|
vte
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ lib, stdenv
|
{ lib, stdenv
|
||||||
, fetchurl, perl, gcc
|
, fetchurl, perl, gcc
|
||||||
, ncurses6, gmp, glibc, libiconv, numactl
|
, ncurses5
|
||||||
|
, ncurses6, gmp, libiconv, numactl
|
||||||
, llvmPackages
|
, llvmPackages
|
||||||
|
|
||||||
# minimal = true; will remove files that aren't strictly necessary for
|
# minimal = true; will remove files that aren't strictly necessary for
|
||||||
|
@ -14,68 +15,191 @@
|
||||||
assert stdenv.targetPlatform == stdenv.hostPlatform;
|
assert stdenv.targetPlatform == stdenv.hostPlatform;
|
||||||
|
|
||||||
let
|
let
|
||||||
|
downloadsUrl = "https://downloads.haskell.org/ghc";
|
||||||
|
|
||||||
|
version = "8.10.2";
|
||||||
|
|
||||||
|
# Information about available bindists that we use in the build.
|
||||||
|
#
|
||||||
|
# # Bindist library checking
|
||||||
|
#
|
||||||
|
# The field `archSpecificLibraries` also provides a way for us get notified
|
||||||
|
# early when the upstream bindist changes its dependencies (e.g. because a
|
||||||
|
# newer Debian version is used that uses a new `ncurses` version).
|
||||||
|
#
|
||||||
|
# Usage:
|
||||||
|
#
|
||||||
|
# * You can find the `fileToCheckFor` of libraries by running `readelf -d`
|
||||||
|
# on the compiler binary (`exePathForLibraryCheck`).
|
||||||
|
# * To skip library checking for an architecture,
|
||||||
|
# set `exePathForLibraryCheck = null`.
|
||||||
|
# * To skip file checking for a specific arch specfic library,
|
||||||
|
# set `fileToCheckFor = null`.
|
||||||
|
ghcBinDists = {
|
||||||
|
# Binary distributions for the default libc (e.g. glibc, or libSystem on Darwin)
|
||||||
|
# nixpkgs uses for the respective system.
|
||||||
|
defaultLibc = {
|
||||||
|
i686-linux = {
|
||||||
|
src = {
|
||||||
|
url = "${downloadsUrl}/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
|
||||||
|
sha256 = "0bvwisl4w0z5z8z0da10m9sv0mhm9na2qm43qxr8zl23mn32mblx";
|
||||||
|
};
|
||||||
|
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
|
||||||
|
archSpecificLibraries = [
|
||||||
|
# The i686-linux bindist provided by GHC HQ is currently built on Debian 9,
|
||||||
|
# which link it against `libtinfo.so.5` (ncurses 5).
|
||||||
|
# Other bindists are linked `libtinfo.so.6` (ncurses 6).
|
||||||
|
{ nixPackage = ncurses5; fileToCheckFor = "libtinfo.so.5"; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
x86_64-linux = {
|
||||||
|
src = {
|
||||||
|
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-deb10-linux.tar.xz";
|
||||||
|
sha256 = "0chnzy9j23b2wa8clx5arwz8wnjfxyjmz9qkj548z14cqf13slcl";
|
||||||
|
};
|
||||||
|
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
|
||||||
|
archSpecificLibraries = [
|
||||||
|
{ nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
armv7l-linux = {
|
||||||
|
src = {
|
||||||
|
url = "${downloadsUrl}/${version}/ghc-${version}-armv7-deb10-linux.tar.xz";
|
||||||
|
sha256 = "1j41cq5d3rmlgz7hzw8f908fs79gc5mn3q5wz277lk8zdf19g75v";
|
||||||
|
};
|
||||||
|
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
|
||||||
|
archSpecificLibraries = [
|
||||||
|
{ nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
aarch64-linux = {
|
||||||
|
src = {
|
||||||
|
url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-deb10-linux.tar.xz";
|
||||||
|
sha256 = "14smwl3741ixnbgi0l51a7kh7xjkiannfqx15b72svky0y4l3wjw";
|
||||||
|
};
|
||||||
|
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
|
||||||
|
archSpecificLibraries = [
|
||||||
|
{ nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
|
||||||
|
{ nixPackage = numactl; fileToCheckFor = null; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
x86_64-darwin = {
|
||||||
|
src = {
|
||||||
|
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
|
||||||
|
sha256 = "1hngyq14l4f950hzhh2d204ca2gfc98pc9xdasxihzqd1jq75dzd";
|
||||||
|
};
|
||||||
|
exePathForLibraryCheck = null; # we don't have a library check for darwin yet
|
||||||
|
archSpecificLibraries = [
|
||||||
|
{ nixPackage = ncurses6; fileToCheckFor = null; }
|
||||||
|
{ nixPackage = libiconv; fileToCheckFor = null; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# Binary distributions for the musl libc for the respective system.
|
||||||
|
musl = {
|
||||||
|
x86_64-linux = {
|
||||||
|
src = {
|
||||||
|
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-alpine3.10-linux-integer-simple.tar.xz";
|
||||||
|
sha256 = "0xpcbyaxqyhbl6f0i3s4rp2jm67nqpkfh2qlbj3i2fiaix89ml0l";
|
||||||
|
};
|
||||||
|
exePathForLibraryCheck = "bin/ghc";
|
||||||
|
archSpecificLibraries = [
|
||||||
|
# In contrast to glibc builds, the musl-bindist uses `libncursesw.so.*`
|
||||||
|
# instead of `libtinfo.so.*.`
|
||||||
|
{ nixPackage = ncurses6; fileToCheckFor = "libncursesw.so.6"; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
distSetName = if stdenv.hostPlatform.isMusl then "musl" else "defaultLibc";
|
||||||
|
|
||||||
|
binDistUsed = ghcBinDists.${distSetName}.${stdenv.hostPlatform.system}
|
||||||
|
or (throw "cannot bootstrap GHC on this platform ('${stdenv.hostPlatform.system}' with libc '${distSetName}')");
|
||||||
|
|
||||||
useLLVM = !stdenv.targetPlatform.isx86;
|
useLLVM = !stdenv.targetPlatform.isx86;
|
||||||
|
|
||||||
libPath = lib.makeLibraryPath ([
|
libPath =
|
||||||
ncurses6 gmp
|
lib.makeLibraryPath (
|
||||||
] ++ lib.optional (stdenv.hostPlatform.isDarwin) libiconv
|
[
|
||||||
++ lib.optional (stdenv.hostPlatform.isAarch64) numactl);
|
gmp
|
||||||
|
]
|
||||||
|
# Add arch-specific libraries.
|
||||||
|
++ map ({ nixPackage, ... }: nixPackage) binDistUsed.archSpecificLibraries
|
||||||
|
);
|
||||||
|
|
||||||
libEnvVar = lib.optionalString stdenv.hostPlatform.isDarwin "DY"
|
libEnvVar = lib.optionalString stdenv.hostPlatform.isDarwin "DY"
|
||||||
+ "LD_LIBRARY_PATH";
|
+ "LD_LIBRARY_PATH";
|
||||||
|
|
||||||
glibcDynLinker = assert stdenv.isLinux;
|
|
||||||
if stdenv.hostPlatform.libc == "glibc" then
|
|
||||||
# Could be stdenv.cc.bintools.dynamicLinker, keeping as-is to avoid rebuild.
|
|
||||||
''"$(cat $NIX_CC/nix-support/dynamic-linker)"''
|
|
||||||
else
|
|
||||||
"${lib.getLib glibc}/lib/ld-linux*";
|
|
||||||
|
|
||||||
downloadsUrl = "https://downloads.haskell.org/ghc";
|
|
||||||
|
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "8.10.2";
|
inherit version;
|
||||||
|
|
||||||
name = "ghc-${version}-binary";
|
name = "ghc-${version}-binary";
|
||||||
|
|
||||||
# https://downloads.haskell.org/~ghc/8.10.2/
|
src = fetchurl binDistUsed.src;
|
||||||
src = fetchurl ({
|
|
||||||
i686-linux = {
|
|
||||||
url = "${downloadsUrl}/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
|
|
||||||
sha256 = "0bvwisl4w0z5z8z0da10m9sv0mhm9na2qm43qxr8zl23mn32mblx";
|
|
||||||
};
|
|
||||||
x86_64-linux = {
|
|
||||||
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-deb10-linux.tar.xz";
|
|
||||||
sha256 = "0chnzy9j23b2wa8clx5arwz8wnjfxyjmz9qkj548z14cqf13slcl";
|
|
||||||
};
|
|
||||||
armv7l-linux = {
|
|
||||||
url = "${downloadsUrl}/${version}/ghc-${version}-armv7-deb10-linux.tar.xz";
|
|
||||||
sha256 = "1j41cq5d3rmlgz7hzw8f908fs79gc5mn3q5wz277lk8zdf19g75v";
|
|
||||||
};
|
|
||||||
aarch64-linux = {
|
|
||||||
url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-deb10-linux.tar.xz";
|
|
||||||
sha256 = "14smwl3741ixnbgi0l51a7kh7xjkiannfqx15b72svky0y4l3wjw";
|
|
||||||
};
|
|
||||||
x86_64-darwin = {
|
|
||||||
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
|
|
||||||
sha256 = "1hngyq14l4f950hzhh2d204ca2gfc98pc9xdasxihzqd1jq75dzd";
|
|
||||||
};
|
|
||||||
}.${stdenv.hostPlatform.system}
|
|
||||||
or (throw "cannot bootstrap GHC on this platform"));
|
|
||||||
|
|
||||||
nativeBuildInputs = [ perl ];
|
nativeBuildInputs = [ perl ];
|
||||||
propagatedBuildInputs = lib.optionals useLLVM [ llvmPackages.llvm ];
|
propagatedBuildInputs =
|
||||||
|
lib.optionals useLLVM [ llvmPackages.llvm ]
|
||||||
|
# Because musl bindists currently provide no way to tell where
|
||||||
|
# libgmp is (see not [musl bindists have no .buildinfo]), we need
|
||||||
|
# to propagate `gmp`, otherwise programs built by this ghc will
|
||||||
|
# fail linking with `cannot find -lgmp` errors.
|
||||||
|
# Also, as of writing, the release pages of musl bindists claim
|
||||||
|
# that they use `integer-simple` and do not require `gmp`; however
|
||||||
|
# that is incorrect, so `gmp` is required until a release has been
|
||||||
|
# made that includes https://gitlab.haskell.org/ghc/ghc/-/issues/20059.
|
||||||
|
# (Note that for packaging the `-binary` compiler, nixpkgs does not care
|
||||||
|
# about whether or not `gmp` is used; this comment is just here to explain
|
||||||
|
# why the `gmp` dependency exists despite what the release page says.)
|
||||||
|
++ lib.optionals stdenv.hostPlatform.isMusl [ gmp ]; # musl bindist needs this
|
||||||
|
|
||||||
|
# Set LD_LIBRARY_PATH or equivalent so that the programs running as part
|
||||||
|
# of the bindist installer can find the libraries they expect.
|
||||||
# Cannot patchelf beforehand due to relative RPATHs that anticipate
|
# Cannot patchelf beforehand due to relative RPATHs that anticipate
|
||||||
# the final install location/
|
# the final install location.
|
||||||
${libEnvVar} = libPath;
|
${libEnvVar} = libPath;
|
||||||
|
|
||||||
postUnpack =
|
postUnpack =
|
||||||
|
# Verify our assumptions of which `libtinfo.so` (ncurses) version is used,
|
||||||
|
# so that we know when ghc bindists upgrade that and we need to update the
|
||||||
|
# version used in `libPath`.
|
||||||
|
lib.optionalString
|
||||||
|
(binDistUsed.exePathForLibraryCheck != null)
|
||||||
|
# Note the `*` glob because some GHCs have a suffix when unpacked, e.g.
|
||||||
|
# the musl bindist has dir `ghc-VERSION-x86_64-unknown-linux/`.
|
||||||
|
# As a result, don't shell-quote this glob when splicing the string.
|
||||||
|
(let buildExeGlob = ''ghc-${version}*/"${binDistUsed.exePathForLibraryCheck}"''; in
|
||||||
|
lib.concatStringsSep "\n" [
|
||||||
|
(''
|
||||||
|
echo "Checking that ghc binary exists in bindist at ${buildExeGlob}"
|
||||||
|
if ! test -e ${buildExeGlob}; then
|
||||||
|
echo >&2 "GHC binary ${binDistUsed.exePathForLibraryCheck} could not be found in the bindist build directory (at ${buildExeGlob}) for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
|
||||||
|
fi
|
||||||
|
'')
|
||||||
|
(lib.concatMapStringsSep
|
||||||
|
"\n"
|
||||||
|
({ fileToCheckFor, nixPackage }:
|
||||||
|
lib.optionalString (fileToCheckFor != null) ''
|
||||||
|
echo "Checking bindist for ${fileToCheckFor} to ensure that is still used"
|
||||||
|
if ! readelf -d ${buildExeGlob} | grep "${fileToCheckFor}"; then
|
||||||
|
echo >&2 "File ${fileToCheckFor} could not be found in ${binDistUsed.exePathForLibraryCheck} for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Checking that the nix package ${nixPackage} contains ${fileToCheckFor}"
|
||||||
|
if ! test -e "${lib.getLib nixPackage}/lib/${fileToCheckFor}"; then
|
||||||
|
echo >&2 "Nix package ${nixPackage} did not contain ${fileToCheckFor} for arch ${stdenv.hostPlatform.system}, please check that ghcBinDists correctly reflect the bindist dependencies!"; exit 1;
|
||||||
|
fi
|
||||||
|
''
|
||||||
|
)
|
||||||
|
binDistUsed.archSpecificLibraries
|
||||||
|
)
|
||||||
|
])
|
||||||
# GHC has dtrace probes, which causes ld to try to open /usr/lib/libdtrace.dylib
|
# GHC has dtrace probes, which causes ld to try to open /usr/lib/libdtrace.dylib
|
||||||
# during linking
|
# during linking
|
||||||
lib.optionalString stdenv.isDarwin ''
|
+ lib.optionalString stdenv.isDarwin ''
|
||||||
export NIX_LDFLAGS+=" -no_dtrace_dof"
|
export NIX_LDFLAGS+=" -no_dtrace_dof"
|
||||||
# not enough room in the object files for the full path to libiconv :(
|
# not enough room in the object files for the full path to libiconv :(
|
||||||
for exe in $(find . -type f -executable); do
|
for exe in $(find . -type f -executable); do
|
||||||
|
@ -91,6 +215,9 @@ stdenv.mkDerivation rec {
|
||||||
patchShebangs ghc-${version}/configure
|
patchShebangs ghc-${version}/configure
|
||||||
'' +
|
'' +
|
||||||
# We have to patch the GMP paths for the integer-gmp package.
|
# We have to patch the GMP paths for the integer-gmp package.
|
||||||
|
# Note [musl bindists have no .buildinfo]
|
||||||
|
# Note that musl bindists do not contain them; unclear if that's intended;
|
||||||
|
# see: https://gitlab.haskell.org/ghc/ghc/-/issues/20073#note_363231
|
||||||
''
|
''
|
||||||
find . -name integer-gmp.buildinfo \
|
find . -name integer-gmp.buildinfo \
|
||||||
-exec sed -i "s@extra-lib-dirs: @extra-lib-dirs: ${gmp.out}/lib@" {} \;
|
-exec sed -i "s@extra-lib-dirs: @extra-lib-dirs: ${gmp.out}/lib@" {} \;
|
||||||
|
@ -106,21 +233,8 @@ stdenv.mkDerivation rec {
|
||||||
'' +
|
'' +
|
||||||
# Rename needed libraries and binaries, fix interpreter
|
# Rename needed libraries and binaries, fix interpreter
|
||||||
lib.optionalString stdenv.isLinux ''
|
lib.optionalString stdenv.isLinux ''
|
||||||
find . -type f -perm -0100 -exec patchelf \
|
find . -type f -executable -exec patchelf \
|
||||||
--replace-needed libncurses${lib.optionalString stdenv.is64bit "w"}.so.6 libncurses.so \
|
--interpreter ${stdenv.cc.bintools.dynamicLinker} {} \;
|
||||||
--interpreter ${glibcDynLinker} {} \;
|
|
||||||
|
|
||||||
sed -i "s|/usr/bin/perl|perl\x00 |" ghc-${version}/ghc/stage2/build/tmp/ghc-stage2
|
|
||||||
sed -i "s|/usr/bin/gcc|gcc\x00 |" ghc-${version}/ghc/stage2/build/tmp/ghc-stage2
|
|
||||||
'' +
|
|
||||||
# We're kludging a glibc bindist into working with non-glibc...
|
|
||||||
# Here we patch up the use of `__strdup` (part of glibc binary ABI)
|
|
||||||
# to instead use `strdup` since musl doesn't provide __strdup
|
|
||||||
# (`__strdup` is defined to be an alias of `strdup` anyway[1]).
|
|
||||||
# [1] http://refspecs.linuxbase.org/LSB_4.0.0/LSB-Core-generic/LSB-Core-generic/baselib---strdup-1.html
|
|
||||||
# Use objcopy magic to make the change:
|
|
||||||
lib.optionalString stdenv.hostPlatform.isMusl ''
|
|
||||||
find ./ghc-${version}/rts -name "libHSrts*.a" -exec ''${OBJCOPY:-objcopy} --redefine-sym __strdup=strdup {} \;
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# fix for `configure: error: Your linker is affected by binutils #16177`
|
# fix for `configure: error: Your linker is affected by binutils #16177`
|
||||||
|
@ -130,15 +244,33 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
configurePlatforms = [ ];
|
configurePlatforms = [ ];
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
"--with-gmp-libraries=${lib.getLib gmp}/lib"
|
|
||||||
"--with-gmp-includes=${lib.getDev gmp}/include"
|
"--with-gmp-includes=${lib.getDev gmp}/include"
|
||||||
|
# Note `--with-gmp-libraries` does nothing for GHC bindists:
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6124
|
||||||
] ++ lib.optional stdenv.isDarwin "--with-gcc=${./gcc-clang-wrapper.sh}"
|
] ++ lib.optional stdenv.isDarwin "--with-gcc=${./gcc-clang-wrapper.sh}"
|
||||||
|
# From: https://github.com/NixOS/nixpkgs/pull/43369/commits
|
||||||
++ lib.optional stdenv.hostPlatform.isMusl "--disable-ld-override";
|
++ lib.optional stdenv.hostPlatform.isMusl "--disable-ld-override";
|
||||||
|
|
||||||
# No building is necessary, but calling make without flags ironically
|
# No building is necessary, but calling make without flags ironically
|
||||||
# calls install-strip ...
|
# calls install-strip ...
|
||||||
dontBuild = true;
|
dontBuild = true;
|
||||||
|
|
||||||
|
# Apparently necessary for the ghc Alpine (musl) bindist:
|
||||||
|
# When we strip, and then run the
|
||||||
|
# patchelf --set-rpath "${libPath}:$(patchelf --print-rpath $p)" $p
|
||||||
|
# below, running ghc (e.g. during `installCheckPhase)` gives some apparently
|
||||||
|
# corrupted rpath or whatever makes the loader work on nonsensical strings:
|
||||||
|
# running install tests
|
||||||
|
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: : symbol not found
|
||||||
|
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: ir6zf6c9f86pfx8sr30n2vjy-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/../lib/x86_64-linux-ghc-8.10.5/libHSexceptions-0.10.4-ghc8.10.5.so: symbol not found
|
||||||
|
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: y/lib/ghc-8.10.5/bin/../lib/x86_64-linux-ghc-8.10.5/libHStemplate-haskell-2.16.0.0-ghc8.10.5.so: symbol not found
|
||||||
|
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: 8.10.5/libHStemplate-haskell-2.16.0.0-ghc8.10.5.so: symbol not found
|
||||||
|
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: <20>: symbol not found
|
||||||
|
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: <20>?: symbol not found
|
||||||
|
# Error relocating /nix/store/...-ghc-8.10.2-binary/lib/ghc-8.10.5/bin/ghc: 64-linux-ghc-8.10.5/libHSexceptions-0.10.4-ghc8.10.5.so: symbol not found
|
||||||
|
# This is extremely bogus and should be investigated.
|
||||||
|
dontStrip = if stdenv.hostPlatform.isMusl then true else false; # `if` for explicitness
|
||||||
|
|
||||||
# On Linux, use patchelf to modify the executables so that they can
|
# On Linux, use patchelf to modify the executables so that they can
|
||||||
# find editline/gmp.
|
# find editline/gmp.
|
||||||
postFixup = lib.optionalString stdenv.isLinux
|
postFixup = lib.optionalString stdenv.isLinux
|
||||||
|
@ -186,13 +318,23 @@ stdenv.mkDerivation rec {
|
||||||
find $out -type f -name '*.p_o' -delete
|
find $out -type f -name '*.p_o' -delete
|
||||||
find $out -type f -name '*.p_hi' -delete
|
find $out -type f -name '*.p_hi' -delete
|
||||||
find $out -type f -name '*_p.a' -delete
|
find $out -type f -name '*_p.a' -delete
|
||||||
rm $out/lib/ghc-*/bin/ghc-iserv-prof
|
# `-f` because e.g. musl bindist does not have this file.
|
||||||
|
rm -f $out/lib/ghc-*/bin/ghc-iserv-prof
|
||||||
# Hydra will redistribute this derivation, so we have to keep the docs for
|
# Hydra will redistribute this derivation, so we have to keep the docs for
|
||||||
# legal reasons (retaining the legal notices etc)
|
# legal reasons (retaining the legal notices etc)
|
||||||
# As a last resort we could unpack the docs separately and symlink them in.
|
# As a last resort we could unpack the docs separately and symlink them in.
|
||||||
# They're in $out/share/{doc,man}.
|
# They're in $out/share/{doc,man}.
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# In nixpkgs, musl based builds currently enable `pie` hardening by default
|
||||||
|
# (see `defaultHardeningFlags` in `make-derivation.nix`).
|
||||||
|
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
|
||||||
|
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
|
||||||
|
# See:
|
||||||
|
# * https://github.com/NixOS/nixpkgs/issues/129247
|
||||||
|
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
|
||||||
|
hardeningDisable = lib.optional stdenv.targetPlatform.isMusl "pie";
|
||||||
|
|
||||||
doInstallCheck = true;
|
doInstallCheck = true;
|
||||||
installCheckPhase = ''
|
installCheckPhase = ''
|
||||||
unset ${libEnvVar}
|
unset ${libEnvVar}
|
||||||
|
@ -221,7 +363,16 @@ stdenv.mkDerivation rec {
|
||||||
homepage = "http://haskell.org/ghc";
|
homepage = "http://haskell.org/ghc";
|
||||||
description = "The Glasgow Haskell Compiler";
|
description = "The Glasgow Haskell Compiler";
|
||||||
license = lib.licenses.bsd3;
|
license = lib.licenses.bsd3;
|
||||||
platforms = ["x86_64-linux" "armv7l-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
|
# HACK: since we can't encode the libc / abi in platforms, we need
|
||||||
|
# to make the platform list dependent on the evaluation platform
|
||||||
|
# in order to avoid eval errors with musl which supports less
|
||||||
|
# platforms than the default libcs (i. e. glibc / libSystem).
|
||||||
|
# This is done for the benefit of Hydra, so `packagePlatforms`
|
||||||
|
# won't return any platforms that would cause an evaluation
|
||||||
|
# failure for `pkgsMusl.haskell.compiler.ghc8102Binary`, as
|
||||||
|
# long as the evaluator runs on a platform that supports
|
||||||
|
# `pkgsMusl`.
|
||||||
|
platforms = builtins.attrNames ghcBinDists.${distSetName};
|
||||||
hydraPlatforms = builtins.filter (p: minimal || p != "aarch64-linux") platforms;
|
hydraPlatforms = builtins.filter (p: minimal || p != "aarch64-linux") platforms;
|
||||||
maintainers = with lib.maintainers; [ lostnet ];
|
maintainers = with lib.maintainers; [ lostnet ];
|
||||||
};
|
};
|
||||||
|
|
|
@ -38,6 +38,20 @@
|
||||||
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
||||||
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
||||||
|
|
||||||
|
, # Whether to build sphinx documentation.
|
||||||
|
enableDocs ? (
|
||||||
|
# Docs disabled for musl and cross because it's a large task to keep
|
||||||
|
# all `sphinx` dependencies building in those environments.
|
||||||
|
# `sphinx` pulls in among others:
|
||||||
|
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
||||||
|
(stdenv.targetPlatform == stdenv.hostPlatform)
|
||||||
|
&& !stdenv.hostPlatform.isMusl
|
||||||
|
)
|
||||||
|
|
||||||
|
, enableHaddockProgram ?
|
||||||
|
# Disabled for cross; see note [HADDOCK_DOCS].
|
||||||
|
(stdenv.targetPlatform == stdenv.hostPlatform)
|
||||||
|
|
||||||
, # Whether to disable the large address space allocator
|
, # Whether to disable the large address space allocator
|
||||||
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
||||||
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
|
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
|
||||||
|
@ -45,6 +59,10 @@
|
||||||
|
|
||||||
assert !enableIntegerSimple -> gmp != null;
|
assert !enableIntegerSimple -> gmp != null;
|
||||||
|
|
||||||
|
# Cross cannot currently build the `haddock` program for silly reasons,
|
||||||
|
# see note [HADDOCK_DOCS].
|
||||||
|
assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
||||||
|
|
||||||
|
@ -60,14 +78,26 @@ let
|
||||||
ifneq \"\$(BuildFlavour)\" \"\"
|
ifneq \"\$(BuildFlavour)\" \"\"
|
||||||
include mk/flavours/\$(BuildFlavour).mk
|
include mk/flavours/\$(BuildFlavour).mk
|
||||||
endif
|
endif
|
||||||
|
BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
|
||||||
|
BUILD_SPHINX_PDF = NO
|
||||||
|
'' +
|
||||||
|
# Note [HADDOCK_DOCS]:
|
||||||
|
# Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
|
||||||
|
# program is built (which we generally always want to have a complete GHC install)
|
||||||
|
# and whether it is run on the GHC sources to generate hyperlinked source code
|
||||||
|
# (which is impossible for cross-compilation); see:
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/20077
|
||||||
|
# This implies that currently a cross-compiled GHC will never have a `haddock`
|
||||||
|
# program, so it can never generate haddocks for any packages.
|
||||||
|
# If this is solved in the future, we'd like to unconditionally
|
||||||
|
# build the haddock program (removing the `enableHaddockProgram` option).
|
||||||
|
''
|
||||||
|
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
||||||
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
||||||
INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
|
INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
|
||||||
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
||||||
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
CrossCompilePrefix = ${targetPrefix}
|
||||||
HADDOCK_DOCS = NO
|
|
||||||
BUILD_SPHINX_HTML = NO
|
|
||||||
BUILD_SPHINX_PDF = NO
|
|
||||||
'' + lib.optionalString (!enableProfiledLibs) ''
|
'' + lib.optionalString (!enableProfiledLibs) ''
|
||||||
GhcLibWays = "v dyn"
|
GhcLibWays = "v dyn"
|
||||||
'' + lib.optionalString enableRelocatedStaticLibs ''
|
'' + lib.optionalString enableRelocatedStaticLibs ''
|
||||||
|
@ -217,8 +247,10 @@ stdenv.mkDerivation (rec {
|
||||||
dontAddExtraLibs = true;
|
dontAddExtraLibs = true;
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
perl autoconf automake m4 python3 sphinx
|
perl autoconf automake m4 python3
|
||||||
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
||||||
|
] ++ lib.optionals enableDocs [
|
||||||
|
sphinx
|
||||||
];
|
];
|
||||||
|
|
||||||
# For building runtime libs
|
# For building runtime libs
|
||||||
|
@ -238,7 +270,16 @@ stdenv.mkDerivation (rec {
|
||||||
|
|
||||||
checkTarget = "test";
|
checkTarget = "test";
|
||||||
|
|
||||||
hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
hardeningDisable =
|
||||||
|
[ "format" ]
|
||||||
|
# In nixpkgs, musl based builds currently enable `pie` hardening by default
|
||||||
|
# (see `defaultHardeningFlags` in `make-derivation.nix`).
|
||||||
|
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
|
||||||
|
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
|
||||||
|
# See:
|
||||||
|
# * https://github.com/NixOS/nixpkgs/issues/129247
|
||||||
|
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
|
||||||
|
++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
# Install the bash completion file.
|
# Install the bash completion file.
|
||||||
|
|
|
@ -121,8 +121,9 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
configurePlatforms = [ ];
|
configurePlatforms = [ ];
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
"--with-gmp-libraries=${lib.getLib gmp}/lib"
|
|
||||||
"--with-gmp-includes=${lib.getDev gmp}/include"
|
"--with-gmp-includes=${lib.getDev gmp}/include"
|
||||||
|
# Note `--with-gmp-libraries` does nothing for GHC bindists:
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6124
|
||||||
] ++ lib.optional stdenv.isDarwin "--with-gcc=${./gcc-clang-wrapper.sh}"
|
] ++ lib.optional stdenv.isDarwin "--with-gcc=${./gcc-clang-wrapper.sh}"
|
||||||
++ lib.optional stdenv.hostPlatform.isMusl "--disable-ld-override";
|
++ lib.optional stdenv.hostPlatform.isMusl "--disable-ld-override";
|
||||||
|
|
||||||
|
@ -152,6 +153,15 @@ stdenv.mkDerivation rec {
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# In nixpkgs, musl based builds currently enable `pie` hardening by default
|
||||||
|
# (see `defaultHardeningFlags` in `make-derivation.nix`).
|
||||||
|
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
|
||||||
|
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
|
||||||
|
# See:
|
||||||
|
# * https://github.com/NixOS/nixpkgs/issues/129247
|
||||||
|
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
|
||||||
|
hardeningDisable = lib.optional stdenv.targetPlatform.isMusl "pie";
|
||||||
|
|
||||||
doInstallCheck = true;
|
doInstallCheck = true;
|
||||||
installCheckPhase = ''
|
installCheckPhase = ''
|
||||||
unset ${libEnvVar}
|
unset ${libEnvVar}
|
||||||
|
@ -180,5 +190,7 @@ stdenv.mkDerivation rec {
|
||||||
license = lib.licenses.bsd3;
|
license = lib.licenses.bsd3;
|
||||||
platforms = ["x86_64-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
|
platforms = ["x86_64-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
|
||||||
hydraPlatforms = builtins.filter (p: p != "aarch64-linux") platforms;
|
hydraPlatforms = builtins.filter (p: p != "aarch64-linux") platforms;
|
||||||
|
# build segfaults, use ghc8102Binary which has proper musl support instead
|
||||||
|
broken = stdenv.hostPlatform.isMusl;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,6 +38,20 @@
|
||||||
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
||||||
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
||||||
|
|
||||||
|
, # Whether to build sphinx documentation.
|
||||||
|
enableDocs ? (
|
||||||
|
# Docs disabled for musl and cross because it's a large task to keep
|
||||||
|
# all `sphinx` dependencies building in those environments.
|
||||||
|
# `sphinx` pullls in among others:
|
||||||
|
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
||||||
|
(stdenv.targetPlatform == stdenv.hostPlatform)
|
||||||
|
&& !stdenv.hostPlatform.isMusl
|
||||||
|
)
|
||||||
|
|
||||||
|
, enableHaddockProgram ?
|
||||||
|
# Disabled for cross; see note [HADDOCK_DOCS].
|
||||||
|
(stdenv.targetPlatform == stdenv.hostPlatform)
|
||||||
|
|
||||||
, # Whether to disable the large address space allocator
|
, # Whether to disable the large address space allocator
|
||||||
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
||||||
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
|
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
|
||||||
|
@ -45,6 +59,10 @@
|
||||||
|
|
||||||
assert !enableIntegerSimple -> gmp != null;
|
assert !enableIntegerSimple -> gmp != null;
|
||||||
|
|
||||||
|
# Cross cannot currently build the `haddock` program for silly reasons,
|
||||||
|
# see note [HADDOCK_DOCS].
|
||||||
|
assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
||||||
|
|
||||||
|
@ -60,6 +78,21 @@ let
|
||||||
ifneq \"\$(BuildFlavour)\" \"\"
|
ifneq \"\$(BuildFlavour)\" \"\"
|
||||||
include mk/flavours/\$(BuildFlavour).mk
|
include mk/flavours/\$(BuildFlavour).mk
|
||||||
endif
|
endif
|
||||||
|
BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
|
||||||
|
BUILD_SPHINX_PDF = NO
|
||||||
|
'' +
|
||||||
|
# Note [HADDOCK_DOCS]:
|
||||||
|
# Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
|
||||||
|
# program is built (which we generally always want to have a complete GHC install)
|
||||||
|
# and whether it is run on the GHC sources to generate hyperlinked source code
|
||||||
|
# (which is impossible for cross-compilation); see:
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/20077
|
||||||
|
# This implies that currently a cross-compiled GHC will never have a `haddock`
|
||||||
|
# program, so it can never generate haddocks for any packages.
|
||||||
|
# If this is solved in the future, we'd like to unconditionally
|
||||||
|
# build the haddock program (removing the `enableHaddockProgram` option).
|
||||||
|
''
|
||||||
|
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
||||||
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
||||||
INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
|
INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
|
||||||
''
|
''
|
||||||
|
@ -72,9 +105,6 @@ let
|
||||||
+ lib.optionalString (targetPlatform != hostPlatform) ''
|
+ lib.optionalString (targetPlatform != hostPlatform) ''
|
||||||
Stage1Only = ${if (targetPlatform.system == hostPlatform.system && !targetPlatform.isiOS) then "NO" else "YES"}
|
Stage1Only = ${if (targetPlatform.system == hostPlatform.system && !targetPlatform.isiOS) then "NO" else "YES"}
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
CrossCompilePrefix = ${targetPrefix}
|
||||||
HADDOCK_DOCS = NO
|
|
||||||
BUILD_SPHINX_HTML = NO
|
|
||||||
BUILD_SPHINX_PDF = NO
|
|
||||||
'' + lib.optionalString dontStrip ''
|
'' + lib.optionalString dontStrip ''
|
||||||
STRIP_CMD = :
|
STRIP_CMD = :
|
||||||
'' + lib.optionalString (!enableProfiledLibs) ''
|
'' + lib.optionalString (!enableProfiledLibs) ''
|
||||||
|
@ -142,11 +172,14 @@ stdenv.mkDerivation (rec {
|
||||||
postPatch = "patchShebangs .";
|
postPatch = "patchShebangs .";
|
||||||
|
|
||||||
# GHC is a bit confused on its cross terminology.
|
# GHC is a bit confused on its cross terminology.
|
||||||
preConfigure = lib.optionalString stdenv.isAarch64 ''
|
preConfigure =
|
||||||
# Aarch64 allow backward bootstrapping since earlier versions are unstable.
|
# Aarch64 allow backward bootstrapping since earlier versions are unstable.
|
||||||
find . -name \*\.cabal\* -exec sed -i -e 's/\(base.*\)4.14/\14.16/' {} \; \
|
# Same for musl, as earlier versions do not provide a musl bindist for bootstrapping.
|
||||||
-exec sed -i -e 's/\(prim.*\)0.6/\10.8/' {} \;
|
lib.optionalString (stdenv.isAarch64 || stdenv.hostPlatform.isMusl) ''
|
||||||
'' + ''
|
find . -name \*\.cabal\* -exec sed -i -e 's/\(base.*\)4.14/\14.16/' {} \; \
|
||||||
|
-exec sed -i -e 's/\(prim.*\)0.6/\10.8/' {} \;
|
||||||
|
''
|
||||||
|
+ ''
|
||||||
for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
|
for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
|
||||||
export "''${env#TARGET_}=''${!env}"
|
export "''${env#TARGET_}=''${!env}"
|
||||||
done
|
done
|
||||||
|
@ -224,8 +257,10 @@ stdenv.mkDerivation (rec {
|
||||||
dontAddExtraLibs = true;
|
dontAddExtraLibs = true;
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
perl autoconf automake m4 python3 sphinx
|
perl autoconf automake m4 python3
|
||||||
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
||||||
|
] ++ lib.optionals enableDocs [
|
||||||
|
sphinx
|
||||||
];
|
];
|
||||||
|
|
||||||
# For building runtime libs
|
# For building runtime libs
|
||||||
|
@ -245,7 +280,16 @@ stdenv.mkDerivation (rec {
|
||||||
|
|
||||||
checkTarget = "test";
|
checkTarget = "test";
|
||||||
|
|
||||||
hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
hardeningDisable =
|
||||||
|
[ "format" ]
|
||||||
|
# In nixpkgs, musl based builds currently enable `pie` hardening by default
|
||||||
|
# (see `defaultHardeningFlags` in `make-derivation.nix`).
|
||||||
|
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
|
||||||
|
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
|
||||||
|
# See:
|
||||||
|
# * https://github.com/NixOS/nixpkgs/issues/129247
|
||||||
|
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
|
||||||
|
++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
# Install the bash completion file.
|
# Install the bash completion file.
|
||||||
|
|
|
@ -39,6 +39,20 @@
|
||||||
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
||||||
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
||||||
|
|
||||||
|
, # Whether to build sphinx documentation.
|
||||||
|
enableDocs ? (
|
||||||
|
# Docs disabled for musl and cross because it's a large task to keep
|
||||||
|
# all `sphinx` dependencies building in those environments.
|
||||||
|
# `sphinx` pullls in among others:
|
||||||
|
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
||||||
|
(stdenv.targetPlatform == stdenv.hostPlatform)
|
||||||
|
&& !stdenv.hostPlatform.isMusl
|
||||||
|
)
|
||||||
|
|
||||||
|
, enableHaddockProgram ?
|
||||||
|
# Disabled for cross; see note [HADDOCK_DOCS].
|
||||||
|
(stdenv.targetPlatform == stdenv.hostPlatform)
|
||||||
|
|
||||||
, # Whether to disable the large address space allocator
|
, # Whether to disable the large address space allocator
|
||||||
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
||||||
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
|
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
|
||||||
|
@ -46,6 +60,10 @@
|
||||||
|
|
||||||
assert !enableIntegerSimple -> gmp != null;
|
assert !enableIntegerSimple -> gmp != null;
|
||||||
|
|
||||||
|
# Cross cannot currently build the `haddock` program for silly reasons,
|
||||||
|
# see note [HADDOCK_DOCS].
|
||||||
|
assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
||||||
|
|
||||||
|
@ -61,14 +79,26 @@ let
|
||||||
ifneq \"\$(BuildFlavour)\" \"\"
|
ifneq \"\$(BuildFlavour)\" \"\"
|
||||||
include mk/flavours/\$(BuildFlavour).mk
|
include mk/flavours/\$(BuildFlavour).mk
|
||||||
endif
|
endif
|
||||||
|
BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
|
||||||
|
BUILD_SPHINX_PDF = NO
|
||||||
|
'' +
|
||||||
|
# Note [HADDOCK_DOCS]:
|
||||||
|
# Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
|
||||||
|
# program is built (which we generally always want to have a complete GHC install)
|
||||||
|
# and whether it is run on the GHC sources to generate hyperlinked source code
|
||||||
|
# (which is impossible for cross-compilation); see:
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/20077
|
||||||
|
# This implies that currently a cross-compiled GHC will never have a `haddock`
|
||||||
|
# program, so it can never generate haddocks for any packages.
|
||||||
|
# If this is solved in the future, we'd like to unconditionally
|
||||||
|
# build the haddock program (removing the `enableHaddockProgram` option).
|
||||||
|
''
|
||||||
|
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
||||||
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
||||||
INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
|
INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
|
||||||
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
||||||
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
CrossCompilePrefix = ${targetPrefix}
|
||||||
HADDOCK_DOCS = NO
|
|
||||||
BUILD_SPHINX_HTML = NO
|
|
||||||
BUILD_SPHINX_PDF = NO
|
|
||||||
'' + lib.optionalString (!enableProfiledLibs) ''
|
'' + lib.optionalString (!enableProfiledLibs) ''
|
||||||
GhcLibWays = "v dyn"
|
GhcLibWays = "v dyn"
|
||||||
'' + lib.optionalString enableRelocatedStaticLibs ''
|
'' + lib.optionalString enableRelocatedStaticLibs ''
|
||||||
|
@ -143,7 +173,7 @@ stdenv.mkDerivation (rec {
|
||||||
|
|
||||||
echo -n "${buildMK}" > mk/build.mk
|
echo -n "${buildMK}" > mk/build.mk
|
||||||
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
|
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
|
||||||
'' + lib.optionalString (stdenv.isLinux) ''
|
'' + lib.optionalString (stdenv.isLinux && hostPlatform.libc == "glibc") ''
|
||||||
export LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"
|
export LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"
|
||||||
'' + lib.optionalString (!stdenv.isDarwin) ''
|
'' + lib.optionalString (!stdenv.isDarwin) ''
|
||||||
export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
|
export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
|
||||||
|
@ -204,8 +234,10 @@ stdenv.mkDerivation (rec {
|
||||||
dontAddExtraLibs = true;
|
dontAddExtraLibs = true;
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
perl autoconf automake m4 python3 sphinx
|
perl autoconf automake m4 python3
|
||||||
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
||||||
|
] ++ lib.optionals enableDocs [
|
||||||
|
sphinx
|
||||||
];
|
];
|
||||||
|
|
||||||
# For building runtime libs
|
# For building runtime libs
|
||||||
|
@ -225,7 +257,16 @@ stdenv.mkDerivation (rec {
|
||||||
|
|
||||||
checkTarget = "test";
|
checkTarget = "test";
|
||||||
|
|
||||||
hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
hardeningDisable =
|
||||||
|
[ "format" ]
|
||||||
|
# In nixpkgs, musl based builds currently enable `pie` hardening by default
|
||||||
|
# (see `defaultHardeningFlags` in `make-derivation.nix`).
|
||||||
|
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
|
||||||
|
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
|
||||||
|
# See:
|
||||||
|
# * https://github.com/NixOS/nixpkgs/issues/129247
|
||||||
|
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
|
||||||
|
++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
# Install the bash completion file.
|
# Install the bash completion file.
|
||||||
|
|
|
@ -46,6 +46,20 @@
|
||||||
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
||||||
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
||||||
|
|
||||||
|
, # Whether to build sphinx documentation.
|
||||||
|
enableDocs ? (
|
||||||
|
# Docs disabled for musl and cross because it's a large task to keep
|
||||||
|
# all `sphinx` dependencies building in those environments.
|
||||||
|
# `sphinx` pullls in among others:
|
||||||
|
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
||||||
|
(stdenv.targetPlatform == stdenv.hostPlatform)
|
||||||
|
&& !stdenv.hostPlatform.isMusl
|
||||||
|
)
|
||||||
|
|
||||||
|
, enableHaddockProgram ?
|
||||||
|
# Disabled for cross; see note [HADDOCK_DOCS].
|
||||||
|
(stdenv.targetPlatform == stdenv.hostPlatform)
|
||||||
|
|
||||||
, # Whether to disable the large address space allocator
|
, # Whether to disable the large address space allocator
|
||||||
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
||||||
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
|
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
|
||||||
|
@ -53,6 +67,10 @@
|
||||||
|
|
||||||
assert !enableNativeBignum -> gmp != null;
|
assert !enableNativeBignum -> gmp != null;
|
||||||
|
|
||||||
|
# Cross cannot currently build the `haddock` program for silly reasons,
|
||||||
|
# see note [HADDOCK_DOCS].
|
||||||
|
assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
||||||
|
|
||||||
|
@ -68,14 +86,26 @@ let
|
||||||
ifneq \"\$(BuildFlavour)\" \"\"
|
ifneq \"\$(BuildFlavour)\" \"\"
|
||||||
include mk/flavours/\$(BuildFlavour).mk
|
include mk/flavours/\$(BuildFlavour).mk
|
||||||
endif
|
endif
|
||||||
|
BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
|
||||||
|
BUILD_SPHINX_PDF = NO
|
||||||
|
'' +
|
||||||
|
# Note [HADDOCK_DOCS]:
|
||||||
|
# Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
|
||||||
|
# program is built (which we generally always want to have a complete GHC install)
|
||||||
|
# and whether it is run on the GHC sources to generate hyperlinked source code
|
||||||
|
# (which is impossible for cross-compilation); see:
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/20077
|
||||||
|
# This implies that currently a cross-compiled GHC will never have a `haddock`
|
||||||
|
# program, so it can never generate haddocks for any packages.
|
||||||
|
# If this is solved in the future, we'd like to unconditionally
|
||||||
|
# build the haddock program (removing the `enableHaddockProgram` option).
|
||||||
|
''
|
||||||
|
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
||||||
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
||||||
BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
|
BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
|
||||||
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
||||||
Stage1Only = ${if (targetPlatform.system == hostPlatform.system && !targetPlatform.isiOS) then "NO" else "YES"}
|
Stage1Only = ${if (targetPlatform.system == hostPlatform.system && !targetPlatform.isiOS) then "NO" else "YES"}
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
CrossCompilePrefix = ${targetPrefix}
|
||||||
HADDOCK_DOCS = NO
|
|
||||||
BUILD_SPHINX_HTML = NO
|
|
||||||
BUILD_SPHINX_PDF = NO
|
|
||||||
'' + lib.optionalString dontStrip ''
|
'' + lib.optionalString dontStrip ''
|
||||||
STRIP_CMD = :
|
STRIP_CMD = :
|
||||||
'' + lib.optionalString (!enableProfiledLibs) ''
|
'' + lib.optionalString (!enableProfiledLibs) ''
|
||||||
|
@ -221,8 +251,10 @@ stdenv.mkDerivation (rec {
|
||||||
dontAddExtraLibs = true;
|
dontAddExtraLibs = true;
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
perl autoconf autoreconfHook automake m4 python3 sphinx
|
perl autoconf autoreconfHook automake m4 python3
|
||||||
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
||||||
|
] ++ lib.optionals enableDocs [
|
||||||
|
sphinx
|
||||||
];
|
];
|
||||||
|
|
||||||
# For building runtime libs
|
# For building runtime libs
|
||||||
|
@ -242,7 +274,16 @@ stdenv.mkDerivation (rec {
|
||||||
|
|
||||||
checkTarget = "test";
|
checkTarget = "test";
|
||||||
|
|
||||||
hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
hardeningDisable =
|
||||||
|
[ "format" ]
|
||||||
|
# In nixpkgs, musl based builds currently enable `pie` hardening by default
|
||||||
|
# (see `defaultHardeningFlags` in `make-derivation.nix`).
|
||||||
|
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
|
||||||
|
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
|
||||||
|
# See:
|
||||||
|
# * https://github.com/NixOS/nixpkgs/issues/129247
|
||||||
|
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
|
||||||
|
++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
# Install the bash completion file.
|
# Install the bash completion file.
|
||||||
|
|
|
@ -8,10 +8,10 @@
|
||||||
}:
|
}:
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
pname = "cabal2nix";
|
pname = "cabal2nix";
|
||||||
version = "unstable-2021-06-12";
|
version = "unstable-2021-07-08";
|
||||||
src = fetchzip {
|
src = fetchzip {
|
||||||
url = "https://github.com/NixOS/cabal2nix/archive/01feffa0aeee835504e0c0ccf4bca2e33a698252.tar.gz";
|
url = "https://github.com/NixOS/cabal2nix/archive/b28902718d89f6a14a836d95a7093bc46e4f8bb5.tar.gz";
|
||||||
sha256 = "0clckh0qqvjcb8szy1d6qqlxj6sqp28jc2p3vhzhkf95cv491si9";
|
sha256 = "1jdbz0krwzzsl3vb10xgman642v49bbgwyl6dw3p9aw6s7a8nfgk";
|
||||||
};
|
};
|
||||||
isLibrary = true;
|
isLibrary = true;
|
||||||
isExecutable = true;
|
isExecutable = true;
|
||||||
|
|
|
@ -1828,22 +1828,30 @@ EOT
|
||||||
|
|
||||||
# 2021-05-09: compilation requires patches from master,
|
# 2021-05-09: compilation requires patches from master,
|
||||||
# remove at next release (current is 0.1.0.4).
|
# remove at next release (current is 0.1.0.4).
|
||||||
large-hashable = appendPatches super.large-hashable [
|
large-hashable = overrideCabal super.large-hashable (drv: {
|
||||||
# Fix compilation of TH code for GHC >= 8.8
|
# fix line endings which are an issue all of a sudden for an unknown reason
|
||||||
(pkgs.fetchpatch {
|
prePatch = ''
|
||||||
url = "https://github.com/factisresearch/large-hashable/commit/ee7afe4bd181cf15a324c7f4823f7a348e4a0e6b.patch";
|
find . -type f -print0 | xargs -0 ${pkgs.buildPackages.dos2unix}/bin/dos2unix
|
||||||
sha256 = "1ha77v0bc6prxacxhpdfgcsgw8348gvhl9y81smigifgjbinphxv";
|
'' + (drv.prePatch or "");
|
||||||
excludes = [
|
# allow newer template haskell
|
||||||
".travis.yml"
|
jailbreak = true;
|
||||||
"stack**"
|
patches = [
|
||||||
];
|
# Fix compilation of TH code for GHC >= 8.8
|
||||||
})
|
(pkgs.fetchpatch {
|
||||||
# Fix cpp invocation
|
url = "https://github.com/factisresearch/large-hashable/commit/ee7afe4bd181cf15a324c7f4823f7a348e4a0e6b.patch";
|
||||||
(pkgs.fetchpatch {
|
sha256 = "1ha77v0bc6prxacxhpdfgcsgw8348gvhl9y81smigifgjbinphxv";
|
||||||
url = "https://github.com/factisresearch/large-hashable/commit/7b7c2ed6ac6e096478e8ee00160fa9d220df853a.patch";
|
excludes = [
|
||||||
sha256 = "1sf9h3k8jbbgfshzrclaawlwx7k2frb09z2a64f93jhvk6ci6vgx";
|
".travis.yml"
|
||||||
})
|
"stack**"
|
||||||
];
|
];
|
||||||
|
})
|
||||||
|
# Fix cpp invocation
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
url = "https://github.com/factisresearch/large-hashable/commit/7b7c2ed6ac6e096478e8ee00160fa9d220df853a.patch";
|
||||||
|
sha256 = "1sf9h3k8jbbgfshzrclaawlwx7k2frb09z2a64f93jhvk6ci6vgx";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
});
|
||||||
|
|
||||||
# BSON defaults to requiring network instead of network-bsd which is
|
# BSON defaults to requiring network instead of network-bsd which is
|
||||||
# required nowadays: https://github.com/mongodb-haskell/bson/issues/26
|
# required nowadays: https://github.com/mongodb-haskell/bson/issues/26
|
||||||
|
@ -1938,6 +1946,14 @@ EOT
|
||||||
|
|
||||||
# Flakey tests
|
# Flakey tests
|
||||||
# upstream https://github.com/circuithub/rel8/issues/86
|
# upstream https://github.com/circuithub/rel8/issues/86
|
||||||
rel8 = dontCheck super.rel8;
|
rel8 = dontCheck (super.rel8.override {
|
||||||
|
opaleye = dontCheck super.opaleye_0_7_2_0;
|
||||||
|
});
|
||||||
|
|
||||||
|
# Release 1.0.0.0 added version bounds (was unrestricted before),
|
||||||
|
# but with too strict lower bounds for our lts-18.
|
||||||
|
graphql = assert pkgs.lib.versionOlder self.parser-combinators.version "1.3.0";
|
||||||
|
assert pkgs.lib.versionOlder self.hspec.version "2.8.2";
|
||||||
|
doJailbreak super.graphql;
|
||||||
|
|
||||||
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
|
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
|
||||||
|
|
|
@ -106,7 +106,7 @@ self: super: {
|
||||||
retry = dontCheck super.retry;
|
retry = dontCheck super.retry;
|
||||||
|
|
||||||
# hlint 3.3 needs a ghc-lib-parser newer than the one from stackage
|
# hlint 3.3 needs a ghc-lib-parser newer than the one from stackage
|
||||||
hlint = super.hlint_3_3_0.overrideScope (self: super: {
|
hlint = super.hlint_3_3_1.overrideScope (self: super: {
|
||||||
ghc-lib-parser = overrideCabal self.ghc-lib-parser_9_0_1_20210324 {
|
ghc-lib-parser = overrideCabal self.ghc-lib-parser_9_0_1_20210324 {
|
||||||
doHaddock = false;
|
doHaddock = false;
|
||||||
};
|
};
|
||||||
|
|
|
@ -91,6 +91,7 @@ broken-packages:
|
||||||
- Agata
|
- Agata
|
||||||
- agda-language-server
|
- agda-language-server
|
||||||
- agda-snippets
|
- agda-snippets
|
||||||
|
- agda-unused
|
||||||
- AGI
|
- AGI
|
||||||
- ag-pictgen
|
- ag-pictgen
|
||||||
- AhoCorasick
|
- AhoCorasick
|
||||||
|
@ -661,6 +662,7 @@ broken-packages:
|
||||||
- clock-extras
|
- clock-extras
|
||||||
- clogparse
|
- clogparse
|
||||||
- clone-all
|
- clone-all
|
||||||
|
- closed-intervals
|
||||||
- closure
|
- closure
|
||||||
- cloudfront-signer
|
- cloudfront-signer
|
||||||
- clr-inline
|
- clr-inline
|
||||||
|
@ -1090,6 +1092,7 @@ broken-packages:
|
||||||
- doctest-prop
|
- doctest-prop
|
||||||
- docusign-example
|
- docusign-example
|
||||||
- docvim
|
- docvim
|
||||||
|
- dominion
|
||||||
- domplate
|
- domplate
|
||||||
- do-spaces
|
- do-spaces
|
||||||
- dotfs
|
- dotfs
|
||||||
|
@ -1778,6 +1781,7 @@ broken-packages:
|
||||||
- hakismet
|
- hakismet
|
||||||
- hakka
|
- hakka
|
||||||
- hako
|
- hako
|
||||||
|
- hakyll-agda
|
||||||
- hakyll-blaze-templates
|
- hakyll-blaze-templates
|
||||||
- hakyll-contrib
|
- hakyll-contrib
|
||||||
- hakyll-contrib-csv
|
- hakyll-contrib-csv
|
||||||
|
@ -2205,6 +2209,7 @@ broken-packages:
|
||||||
- Hricket
|
- Hricket
|
||||||
- hs2bf
|
- hs2bf
|
||||||
- hs2ps
|
- hs2ps
|
||||||
|
- hsakamai
|
||||||
- hsaml2
|
- hsaml2
|
||||||
- hsay
|
- hsay
|
||||||
- hsbc
|
- hsbc
|
||||||
|
@ -2382,6 +2387,7 @@ broken-packages:
|
||||||
- hw-json-simd
|
- hw-json-simd
|
||||||
- hw-mquery
|
- hw-mquery
|
||||||
- hworker
|
- hworker
|
||||||
|
- hw-prim-bits
|
||||||
- hw-simd
|
- hw-simd
|
||||||
- hwsl2
|
- hwsl2
|
||||||
- hx
|
- hx
|
||||||
|
@ -3108,6 +3114,7 @@ broken-packages:
|
||||||
- MuCheck
|
- MuCheck
|
||||||
- mud
|
- mud
|
||||||
- muesli
|
- muesli
|
||||||
|
- mu-graphql
|
||||||
- mulang
|
- mulang
|
||||||
- multext-east-msd
|
- multext-east-msd
|
||||||
- multiaddr
|
- multiaddr
|
||||||
|
@ -3266,6 +3273,8 @@ broken-packages:
|
||||||
- np-extras
|
- np-extras
|
||||||
- np-linear
|
- np-linear
|
||||||
- nptools
|
- nptools
|
||||||
|
- nri-kafka
|
||||||
|
- nri-postgresql
|
||||||
- ntp-control
|
- ntp-control
|
||||||
- ntrip-client
|
- ntrip-client
|
||||||
- n-tuple
|
- n-tuple
|
||||||
|
@ -4508,6 +4517,7 @@ broken-packages:
|
||||||
- streamdeck
|
- streamdeck
|
||||||
- streamed
|
- streamed
|
||||||
- stream-fusion
|
- stream-fusion
|
||||||
|
- streaming-benchmarks
|
||||||
- streaming-conduit
|
- streaming-conduit
|
||||||
- streaming-events
|
- streaming-events
|
||||||
- streaming-lzma
|
- streaming-lzma
|
||||||
|
@ -4535,6 +4545,7 @@ broken-packages:
|
||||||
- stripe-http-streams
|
- stripe-http-streams
|
||||||
- stripe-signature
|
- stripe-signature
|
||||||
- stripe-tests
|
- stripe-tests
|
||||||
|
- strong-path
|
||||||
- strongswan-sql
|
- strongswan-sql
|
||||||
- structural-traversal
|
- structural-traversal
|
||||||
- structures
|
- structures
|
||||||
|
@ -4749,6 +4760,7 @@ broken-packages:
|
||||||
- thrift
|
- thrift
|
||||||
- Thrift
|
- Thrift
|
||||||
- throttled-io-loop
|
- throttled-io-loop
|
||||||
|
- throwable-exceptions
|
||||||
- th-sccs
|
- th-sccs
|
||||||
- th-tc
|
- th-tc
|
||||||
- th-to-exp
|
- th-to-exp
|
||||||
|
@ -4793,6 +4805,7 @@ broken-packages:
|
||||||
- Titim
|
- Titim
|
||||||
- tkhs
|
- tkhs
|
||||||
- tkyprof
|
- tkyprof
|
||||||
|
- tmp-postgres
|
||||||
- todo
|
- todo
|
||||||
- tofromxml
|
- tofromxml
|
||||||
- to-haskell
|
- to-haskell
|
||||||
|
|
|
@ -115,6 +115,7 @@ extra-packages:
|
||||||
- crackNum < 3.0 # 2021-05-21: 3.0 removed the lib which sbv 7.13 uses
|
- crackNum < 3.0 # 2021-05-21: 3.0 removed the lib which sbv 7.13 uses
|
||||||
- ShellCheck == 0.7.1 # 2021-05-09: haskell-ci 0.12.1 pins this version
|
- ShellCheck == 0.7.1 # 2021-05-09: haskell-ci 0.12.1 pins this version
|
||||||
- hackage-db < 2.1.1 # 2021-06-10: Need older hackage-db as long as Cabal < 3.4, see https://github.com/NixOS/cabal2nix/issues/501
|
- hackage-db < 2.1.1 # 2021-06-10: Need older hackage-db as long as Cabal < 3.4, see https://github.com/NixOS/cabal2nix/issues/501
|
||||||
|
- opaleye < 0.7.3.0 # 2021-07-11: for rel8 <= 1.0.0.1, see https://github.com/circuithub/rel8/issues/95#issuecomment-877616118
|
||||||
|
|
||||||
package-maintainers:
|
package-maintainers:
|
||||||
abbradar:
|
abbradar:
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Stackage LTS 18.0
|
# Stackage LTS 18.1
|
||||||
# This file is auto-generated by
|
# This file is auto-generated by
|
||||||
# maintainers/scripts/haskell/update-stackage.sh
|
# maintainers/scripts/haskell/update-stackage.sh
|
||||||
default-package-overrides:
|
default-package-overrides:
|
||||||
|
@ -33,7 +33,7 @@ default-package-overrides:
|
||||||
- aeson-with ==0.1.2.0
|
- aeson-with ==0.1.2.0
|
||||||
- aeson-yak ==0.1.1.3
|
- aeson-yak ==0.1.1.3
|
||||||
- aeson-yaml ==1.1.0.0
|
- aeson-yaml ==1.1.0.0
|
||||||
- Agda ==2.6.1.3
|
- Agda ==2.6.2
|
||||||
- agda2lagda ==0.2021.6.1
|
- agda2lagda ==0.2021.6.1
|
||||||
- al ==0.1.4.2
|
- al ==0.1.4.2
|
||||||
- alarmclock ==0.7.0.5
|
- alarmclock ==0.7.0.5
|
||||||
|
@ -202,8 +202,8 @@ default-package-overrides:
|
||||||
- auto-update ==0.1.6
|
- auto-update ==0.1.6
|
||||||
- avro ==0.5.2.0
|
- avro ==0.5.2.0
|
||||||
- aws-cloudfront-signed-cookies ==0.2.0.8
|
- aws-cloudfront-signed-cookies ==0.2.0.8
|
||||||
- aws-xray-client ==0.1.0.0
|
- aws-xray-client ==0.1.0.1
|
||||||
- aws-xray-client-wai ==0.1.0.0
|
- aws-xray-client-wai ==0.1.0.1
|
||||||
- backprop ==0.2.6.4
|
- backprop ==0.2.6.4
|
||||||
- backtracking ==0.1.0
|
- backtracking ==0.1.0
|
||||||
- bank-holidays-england ==0.2.0.6
|
- bank-holidays-england ==0.2.0.6
|
||||||
|
@ -211,7 +211,7 @@ default-package-overrides:
|
||||||
- base16 ==0.3.0.1
|
- base16 ==0.3.0.1
|
||||||
- base16-bytestring ==1.0.1.0
|
- base16-bytestring ==1.0.1.0
|
||||||
- base16-lens ==0.1.3.2
|
- base16-lens ==0.1.3.2
|
||||||
- base32 ==0.2.0.0
|
- base32 ==0.2.1.0
|
||||||
- base32-lens ==0.1.1.1
|
- base32-lens ==0.1.1.1
|
||||||
- base32string ==0.9.1
|
- base32string ==0.9.1
|
||||||
- base58-bytestring ==0.1.0
|
- base58-bytestring ==0.1.0
|
||||||
|
@ -233,7 +233,7 @@ default-package-overrides:
|
||||||
- bcp47 ==0.2.0.4
|
- bcp47 ==0.2.0.4
|
||||||
- bcp47-orphans ==0.1.0.4
|
- bcp47-orphans ==0.1.0.4
|
||||||
- bcrypt ==0.0.11
|
- bcrypt ==0.0.11
|
||||||
- bech32 ==1.1.0
|
- bech32 ==1.1.1
|
||||||
- bech32-th ==1.0.2
|
- bech32-th ==1.0.2
|
||||||
- bench ==1.0.12
|
- bench ==1.0.12
|
||||||
- benchpress ==0.2.2.17
|
- benchpress ==0.2.2.17
|
||||||
|
@ -304,7 +304,7 @@ default-package-overrides:
|
||||||
- buffer-pipe ==0.0
|
- buffer-pipe ==0.0
|
||||||
- bugsnag-haskell ==0.0.4.1
|
- bugsnag-haskell ==0.0.4.1
|
||||||
- bugsnag-hs ==0.2.0.4
|
- bugsnag-hs ==0.2.0.4
|
||||||
- bugzilla-redhat ==0.3.1
|
- bugzilla-redhat ==0.3.2
|
||||||
- burrito ==1.2.0.2
|
- burrito ==1.2.0.2
|
||||||
- butcher ==1.3.3.2
|
- butcher ==1.3.3.2
|
||||||
- buttplug-hs-core ==0.1.0.0
|
- buttplug-hs-core ==0.1.0.0
|
||||||
|
@ -420,13 +420,13 @@ default-package-overrides:
|
||||||
- Color ==0.3.2
|
- Color ==0.3.2
|
||||||
- colorful-monoids ==0.2.1.3
|
- colorful-monoids ==0.2.1.3
|
||||||
- colorize-haskell ==1.0.1
|
- colorize-haskell ==1.0.1
|
||||||
- colour ==2.3.5
|
- colour ==2.3.6
|
||||||
- combinatorial ==0.1.0.1
|
- combinatorial ==0.1.0.1
|
||||||
- comfort-array ==0.4.1
|
- comfort-array ==0.4.1
|
||||||
- comfort-graph ==0.0.3.1
|
- comfort-graph ==0.0.3.1
|
||||||
- commonmark ==0.2
|
- commonmark ==0.2.1
|
||||||
- commonmark-extensions ==0.2.1.2
|
- commonmark-extensions ==0.2.1.2
|
||||||
- commonmark-pandoc ==0.2.1
|
- commonmark-pandoc ==0.2.1.1
|
||||||
- commutative ==0.0.2
|
- commutative ==0.0.2
|
||||||
- comonad ==5.0.8
|
- comonad ==5.0.8
|
||||||
- comonad-extras ==4.0.1
|
- comonad-extras ==4.0.1
|
||||||
|
@ -490,7 +490,7 @@ default-package-overrides:
|
||||||
- crc32c ==0.0.0
|
- crc32c ==0.0.0
|
||||||
- credential-store ==0.1.2
|
- credential-store ==0.1.2
|
||||||
- criterion ==1.5.9.0
|
- criterion ==1.5.9.0
|
||||||
- criterion-measurement ==0.1.2.0
|
- criterion-measurement ==0.1.3.0
|
||||||
- cron ==0.7.0
|
- cron ==0.7.0
|
||||||
- crypto-api ==0.13.3
|
- crypto-api ==0.13.3
|
||||||
- crypto-cipher-types ==0.0.9
|
- crypto-cipher-types ==0.0.9
|
||||||
|
@ -555,7 +555,7 @@ default-package-overrides:
|
||||||
- data-hash ==0.2.0.1
|
- data-hash ==0.2.0.1
|
||||||
- data-interval ==2.1.0
|
- data-interval ==2.1.0
|
||||||
- data-inttrie ==0.1.4
|
- data-inttrie ==0.1.4
|
||||||
- data-lens-light ==0.1.2.2
|
- data-lens-light ==0.1.2.3
|
||||||
- data-memocombinators ==0.5.1
|
- data-memocombinators ==0.5.1
|
||||||
- data-msgpack ==0.0.13
|
- data-msgpack ==0.0.13
|
||||||
- data-msgpack-types ==0.0.3
|
- data-msgpack-types ==0.0.3
|
||||||
|
@ -680,7 +680,7 @@ default-package-overrides:
|
||||||
- elynx-seq ==0.5.1.1
|
- elynx-seq ==0.5.1.1
|
||||||
- elynx-tools ==0.5.1.1
|
- elynx-tools ==0.5.1.1
|
||||||
- elynx-tree ==0.5.1.1
|
- elynx-tree ==0.5.1.1
|
||||||
- email-validate ==2.3.2.13
|
- email-validate ==2.3.2.15
|
||||||
- emd ==0.2.0.0
|
- emd ==0.2.0.0
|
||||||
- emojis ==0.1
|
- emojis ==0.1
|
||||||
- enclosed-exceptions ==1.0.3
|
- enclosed-exceptions ==1.0.3
|
||||||
|
@ -703,7 +703,7 @@ default-package-overrides:
|
||||||
- errors ==2.3.0
|
- errors ==2.3.0
|
||||||
- errors-ext ==0.4.2
|
- errors-ext ==0.4.2
|
||||||
- ersatz ==0.4.9
|
- ersatz ==0.4.9
|
||||||
- esqueleto ==3.5.0.0
|
- esqueleto ==3.5.2.0
|
||||||
- essence-of-live-coding ==0.2.5
|
- essence-of-live-coding ==0.2.5
|
||||||
- essence-of-live-coding-gloss ==0.2.5
|
- essence-of-live-coding-gloss ==0.2.5
|
||||||
- essence-of-live-coding-pulse ==0.2.5
|
- essence-of-live-coding-pulse ==0.2.5
|
||||||
|
@ -729,7 +729,7 @@ default-package-overrides:
|
||||||
- expiring-cache-map ==0.0.6.1
|
- expiring-cache-map ==0.0.6.1
|
||||||
- explicit-exception ==0.1.10
|
- explicit-exception ==0.1.10
|
||||||
- exp-pairs ==0.2.1.0
|
- exp-pairs ==0.2.1.0
|
||||||
- express ==0.1.14
|
- express ==0.1.16
|
||||||
- extended-reals ==0.2.4.0
|
- extended-reals ==0.2.4.0
|
||||||
- extensible-effects ==5.0.0.1
|
- extensible-effects ==5.0.0.1
|
||||||
- extensible-exceptions ==0.1.1.4
|
- extensible-exceptions ==0.1.1.4
|
||||||
|
@ -803,7 +803,7 @@ default-package-overrides:
|
||||||
- forkable-monad ==0.2.0.3
|
- forkable-monad ==0.2.0.3
|
||||||
- forma ==1.1.3
|
- forma ==1.1.3
|
||||||
- format-numbers ==0.1.0.1
|
- format-numbers ==0.1.0.1
|
||||||
- formatting ==7.1.2
|
- formatting ==7.1.3
|
||||||
- foundation ==0.0.26.1
|
- foundation ==0.0.26.1
|
||||||
- fourmolu ==0.3.0.0
|
- fourmolu ==0.3.0.0
|
||||||
- free ==5.1.7
|
- free ==5.1.7
|
||||||
|
@ -850,8 +850,8 @@ default-package-overrides:
|
||||||
- generics-eot ==0.4.0.1
|
- generics-eot ==0.4.0.1
|
||||||
- generics-sop ==0.5.1.1
|
- generics-sop ==0.5.1.1
|
||||||
- generics-sop-lens ==0.2.0.1
|
- generics-sop-lens ==0.2.0.1
|
||||||
- geniplate-mirror ==0.7.7
|
- geniplate-mirror ==0.7.8
|
||||||
- genvalidity ==0.11.0.0
|
- genvalidity ==0.11.0.2
|
||||||
- genvalidity-aeson ==0.3.0.0
|
- genvalidity-aeson ==0.3.0.0
|
||||||
- genvalidity-bytestring ==0.6.0.0
|
- genvalidity-bytestring ==0.6.0.0
|
||||||
- genvalidity-containers ==0.9.0.0
|
- genvalidity-containers ==0.9.0.0
|
||||||
|
@ -898,11 +898,11 @@ default-package-overrides:
|
||||||
- ghc-prof ==1.4.1.8
|
- ghc-prof ==1.4.1.8
|
||||||
- ghc-source-gen ==0.4.0.0
|
- ghc-source-gen ==0.4.0.0
|
||||||
- ghc-syntax-highlighter ==0.0.6.0
|
- ghc-syntax-highlighter ==0.0.6.0
|
||||||
- ghc-tcplugins-extra ==0.4.1
|
- ghc-tcplugins-extra ==0.4.2
|
||||||
- ghc-trace-events ==0.1.2.2
|
- ghc-trace-events ==0.1.2.3
|
||||||
- ghc-typelits-extra ==0.4.2
|
- ghc-typelits-extra ==0.4.3
|
||||||
- ghc-typelits-knownnat ==0.7.5
|
- ghc-typelits-knownnat ==0.7.6
|
||||||
- ghc-typelits-natnormalise ==0.7.4
|
- ghc-typelits-natnormalise ==0.7.6
|
||||||
- ghc-typelits-presburger ==0.6.0.0
|
- ghc-typelits-presburger ==0.6.0.0
|
||||||
- ghost-buster ==0.1.1.0
|
- ghost-buster ==0.1.1.0
|
||||||
- gi-atk ==2.0.23
|
- gi-atk ==2.0.23
|
||||||
|
@ -923,7 +923,7 @@ default-package-overrides:
|
||||||
- ginger ==0.10.1.0
|
- ginger ==0.10.1.0
|
||||||
- gingersnap ==0.3.1.0
|
- gingersnap ==0.3.1.0
|
||||||
- gi-pango ==1.0.24
|
- gi-pango ==1.0.24
|
||||||
- githash ==0.1.6.0
|
- githash ==0.1.6.1
|
||||||
- github-release ==1.3.7
|
- github-release ==1.3.7
|
||||||
- github-rest ==1.0.3
|
- github-rest ==1.0.3
|
||||||
- github-types ==0.2.1
|
- github-types ==0.2.1
|
||||||
|
@ -974,7 +974,7 @@ default-package-overrides:
|
||||||
- hamtsolo ==1.0.3
|
- hamtsolo ==1.0.3
|
||||||
- HandsomeSoup ==0.4.2
|
- HandsomeSoup ==0.4.2
|
||||||
- hapistrano ==0.4.2.0
|
- hapistrano ==0.4.2.0
|
||||||
- happstack-server ==7.7.1
|
- happstack-server ==7.7.1.1
|
||||||
- happy ==1.20.0
|
- happy ==1.20.0
|
||||||
- happy-meta ==0.2.0.11
|
- happy-meta ==0.2.0.11
|
||||||
- HasBigDecimal ==0.1.1
|
- HasBigDecimal ==0.1.1
|
||||||
|
@ -1006,7 +1006,7 @@ default-package-overrides:
|
||||||
- hasql-optparse-applicative ==0.3.0.6
|
- hasql-optparse-applicative ==0.3.0.6
|
||||||
- hasql-pool ==0.5.2
|
- hasql-pool ==0.5.2
|
||||||
- hasql-queue ==1.2.0.2
|
- hasql-queue ==1.2.0.2
|
||||||
- hasql-transaction ==1.0.0.2
|
- hasql-transaction ==1.0.1
|
||||||
- hasty-hamiltonian ==1.3.4
|
- hasty-hamiltonian ==1.3.4
|
||||||
- HaTeX ==3.22.3.0
|
- HaTeX ==3.22.3.0
|
||||||
- HaXml ==1.25.5
|
- HaXml ==1.25.5
|
||||||
|
@ -1015,7 +1015,7 @@ default-package-overrides:
|
||||||
- hdaemonize ==0.5.6
|
- hdaemonize ==0.5.6
|
||||||
- HDBC ==2.4.0.3
|
- HDBC ==2.4.0.3
|
||||||
- HDBC-session ==0.1.2.0
|
- HDBC-session ==0.1.2.0
|
||||||
- headroom ==0.4.1.0
|
- headroom ==0.4.2.0
|
||||||
- heap ==1.0.4
|
- heap ==1.0.4
|
||||||
- heaps ==0.4
|
- heaps ==0.4
|
||||||
- hebrew-time ==0.1.2
|
- hebrew-time ==0.1.2
|
||||||
|
@ -1025,7 +1025,7 @@ default-package-overrides:
|
||||||
- hedgehog-fn ==1.0
|
- hedgehog-fn ==1.0
|
||||||
- hedgehog-quickcheck ==0.1.1
|
- hedgehog-quickcheck ==0.1.1
|
||||||
- hedis ==0.14.4
|
- hedis ==0.14.4
|
||||||
- hedn ==0.3.0.2
|
- hedn ==0.3.0.3
|
||||||
- here ==1.2.13
|
- here ==1.2.13
|
||||||
- heredoc ==0.2.0.0
|
- heredoc ==0.2.0.0
|
||||||
- heterocephalus ==1.0.5.4
|
- heterocephalus ==1.0.5.4
|
||||||
|
@ -1163,7 +1163,7 @@ default-package-overrides:
|
||||||
- http-media ==0.8.0.0
|
- http-media ==0.8.0.0
|
||||||
- http-query ==0.1.0.1
|
- http-query ==0.1.0.1
|
||||||
- http-reverse-proxy ==0.6.0
|
- http-reverse-proxy ==0.6.0
|
||||||
- http-streams ==0.8.7.2
|
- http-streams ==0.8.8.1
|
||||||
- http-types ==0.12.3
|
- http-types ==0.12.3
|
||||||
- human-readable-duration ==0.2.1.4
|
- human-readable-duration ==0.2.1.4
|
||||||
- HUnit ==1.6.2.0
|
- HUnit ==1.6.2.0
|
||||||
|
@ -1212,7 +1212,7 @@ default-package-overrides:
|
||||||
- hybrid-vectors ==0.2.2
|
- hybrid-vectors ==0.2.2
|
||||||
- hyper ==0.2.1.1
|
- hyper ==0.2.1.1
|
||||||
- hyperloglog ==0.4.4
|
- hyperloglog ==0.4.4
|
||||||
- hyphenation ==0.8.1
|
- hyphenation ==0.8.2
|
||||||
- iconv ==0.4.1.3
|
- iconv ==0.4.1.3
|
||||||
- identicon ==0.2.2
|
- identicon ==0.2.2
|
||||||
- ieee754 ==0.8.0
|
- ieee754 ==0.8.0
|
||||||
|
@ -1240,7 +1240,7 @@ default-package-overrides:
|
||||||
- influxdb ==1.9.1.2
|
- influxdb ==1.9.1.2
|
||||||
- ini ==0.4.1
|
- ini ==0.4.1
|
||||||
- inj ==1.0
|
- inj ==1.0
|
||||||
- inline-c ==0.9.1.4
|
- inline-c ==0.9.1.5
|
||||||
- inline-c-cpp ==0.4.0.3
|
- inline-c-cpp ==0.4.0.3
|
||||||
- inline-r ==0.10.4
|
- inline-r ==0.10.4
|
||||||
- inliterate ==0.1.0
|
- inliterate ==0.1.0
|
||||||
|
@ -1394,7 +1394,7 @@ default-package-overrides:
|
||||||
- lift-generics ==0.2
|
- lift-generics ==0.2
|
||||||
- lift-type ==0.1.0.1
|
- lift-type ==0.1.0.1
|
||||||
- line ==4.0.1
|
- line ==4.0.1
|
||||||
- linear ==1.21.5
|
- linear ==1.21.6
|
||||||
- linear-circuit ==0.1.0.2
|
- linear-circuit ==0.1.0.2
|
||||||
- linenoise ==0.3.2
|
- linenoise ==0.3.2
|
||||||
- linux-file-extents ==0.2.0.0
|
- linux-file-extents ==0.2.0.0
|
||||||
|
@ -1606,7 +1606,7 @@ default-package-overrides:
|
||||||
- netlib-comfort-array ==0.0.0.1
|
- netlib-comfort-array ==0.0.0.1
|
||||||
- netlib-ffi ==0.1.1
|
- netlib-ffi ==0.1.1
|
||||||
- net-mqtt ==0.7.1.1
|
- net-mqtt ==0.7.1.1
|
||||||
- net-mqtt-lens ==0.1.0.0
|
- net-mqtt-lens ==0.1.1.0
|
||||||
- netpbm ==1.0.4
|
- netpbm ==1.0.4
|
||||||
- nettle ==0.3.0
|
- nettle ==0.3.0
|
||||||
- netwire ==5.0.3
|
- netwire ==5.0.3
|
||||||
|
@ -1646,7 +1646,7 @@ default-package-overrides:
|
||||||
- nowdoc ==0.1.1.0
|
- nowdoc ==0.1.1.0
|
||||||
- nqe ==0.6.3
|
- nqe ==0.6.3
|
||||||
- nri-env-parser ==0.1.0.7
|
- nri-env-parser ==0.1.0.7
|
||||||
- nri-observability ==0.1.0.3
|
- nri-observability ==0.1.1.1
|
||||||
- nri-prelude ==0.6.0.2
|
- nri-prelude ==0.6.0.2
|
||||||
- nsis ==0.3.3
|
- nsis ==0.3.3
|
||||||
- numbers ==3000.2.0.2
|
- numbers ==3000.2.0.2
|
||||||
|
@ -1673,7 +1673,7 @@ default-package-overrides:
|
||||||
- OneTuple ==0.2.2.1
|
- OneTuple ==0.2.2.1
|
||||||
- Only ==0.1
|
- Only ==0.1
|
||||||
- oo-prototypes ==0.1.0.0
|
- oo-prototypes ==0.1.0.0
|
||||||
- opaleye ==0.7.1.0
|
- opaleye ==0.7.3.0
|
||||||
- OpenAL ==1.7.0.5
|
- OpenAL ==1.7.0.5
|
||||||
- openapi3 ==3.1.0
|
- openapi3 ==3.1.0
|
||||||
- open-browser ==0.2.1.0
|
- open-browser ==0.2.1.0
|
||||||
|
@ -1698,7 +1698,7 @@ default-package-overrides:
|
||||||
- options ==1.2.1.1
|
- options ==1.2.1.1
|
||||||
- optparse-applicative ==0.16.1.0
|
- optparse-applicative ==0.16.1.0
|
||||||
- optparse-generic ==1.4.4
|
- optparse-generic ==1.4.4
|
||||||
- optparse-simple ==0.1.1.3
|
- optparse-simple ==0.1.1.4
|
||||||
- optparse-text ==0.1.1.0
|
- optparse-text ==0.1.1.0
|
||||||
- ordered-containers ==0.2.2
|
- ordered-containers ==0.2.2
|
||||||
- ormolu ==0.1.4.1
|
- ormolu ==0.1.4.1
|
||||||
|
@ -1708,12 +1708,12 @@ default-package-overrides:
|
||||||
- pager ==0.1.1.0
|
- pager ==0.1.1.0
|
||||||
- pagination ==0.2.2
|
- pagination ==0.2.2
|
||||||
- pagure-cli ==0.2
|
- pagure-cli ==0.2
|
||||||
- pandoc ==2.14.0.2
|
- pandoc ==2.14.0.3
|
||||||
- pandoc-dhall-decoder ==0.1.0.1
|
- pandoc-dhall-decoder ==0.1.0.1
|
||||||
- pandoc-plot ==1.2.3
|
- pandoc-plot ==1.2.3
|
||||||
- pandoc-throw ==0.1.0.0
|
- pandoc-throw ==0.1.0.0
|
||||||
- pandoc-types ==1.22
|
- pandoc-types ==1.22
|
||||||
- pantry ==0.5.2.2
|
- pantry ==0.5.2.3
|
||||||
- parallel ==3.2.2.0
|
- parallel ==3.2.2.0
|
||||||
- parameterized ==0.5.0.0
|
- parameterized ==0.5.0.0
|
||||||
- paripari ==0.7.0.0
|
- paripari ==0.7.0.0
|
||||||
|
@ -1758,11 +1758,11 @@ default-package-overrides:
|
||||||
- persist ==0.1.1.5
|
- persist ==0.1.1.5
|
||||||
- persistable-record ==0.6.0.5
|
- persistable-record ==0.6.0.5
|
||||||
- persistable-types-HDBC-pg ==0.0.3.5
|
- persistable-types-HDBC-pg ==0.0.3.5
|
||||||
- persistent ==2.13.0.2
|
- persistent ==2.13.1.1
|
||||||
- persistent-mtl ==0.2.2.0
|
- persistent-mtl ==0.2.2.0
|
||||||
- persistent-mysql ==2.13.0.1
|
- persistent-mysql ==2.13.0.1
|
||||||
- persistent-pagination ==0.1.1.2
|
- persistent-pagination ==0.1.1.2
|
||||||
- persistent-postgresql ==2.13.0.2
|
- persistent-postgresql ==2.13.0.3
|
||||||
- persistent-qq ==2.12.0.1
|
- persistent-qq ==2.12.0.1
|
||||||
- persistent-sqlite ==2.13.0.3
|
- persistent-sqlite ==2.13.0.3
|
||||||
- persistent-template ==2.12.0.0
|
- persistent-template ==2.12.0.0
|
||||||
|
@ -1770,7 +1770,7 @@ default-package-overrides:
|
||||||
- persistent-typed-db ==0.1.0.4
|
- persistent-typed-db ==0.1.0.4
|
||||||
- pg-harness-client ==0.6.0
|
- pg-harness-client ==0.6.0
|
||||||
- pgp-wordlist ==0.1.0.3
|
- pgp-wordlist ==0.1.0.3
|
||||||
- pg-transact ==0.3.1.1
|
- pg-transact ==0.3.2.0
|
||||||
- phantom-state ==0.2.1.2
|
- phantom-state ==0.2.1.2
|
||||||
- pid1 ==0.1.2.0
|
- pid1 ==0.1.2.0
|
||||||
- pinboard ==0.10.2.0
|
- pinboard ==0.10.2.0
|
||||||
|
@ -2083,7 +2083,7 @@ default-package-overrides:
|
||||||
- sequenceTools ==1.5.0
|
- sequenceTools ==1.5.0
|
||||||
- serf ==0.1.1.0
|
- serf ==0.1.1.0
|
||||||
- serialise ==0.2.3.0
|
- serialise ==0.2.3.0
|
||||||
- servant ==0.18.2
|
- servant ==0.18.3
|
||||||
- servant-auth ==0.4.0.0
|
- servant-auth ==0.4.0.0
|
||||||
- servant-auth-client ==0.4.1.0
|
- servant-auth-client ==0.4.1.0
|
||||||
- servant-auth-docs ==0.2.10.0
|
- servant-auth-docs ==0.2.10.0
|
||||||
|
@ -2091,23 +2091,23 @@ default-package-overrides:
|
||||||
- servant-auth-swagger ==0.2.10.1
|
- servant-auth-swagger ==0.2.10.1
|
||||||
- servant-auth-wordpress ==1.0.0.2
|
- servant-auth-wordpress ==1.0.0.2
|
||||||
- servant-blaze ==0.9.1
|
- servant-blaze ==0.9.1
|
||||||
- servant-client ==0.18.2
|
- servant-client ==0.18.3
|
||||||
- servant-client-core ==0.18.2
|
- servant-client-core ==0.18.3
|
||||||
- servant-conduit ==0.15.1
|
- servant-conduit ==0.15.1
|
||||||
- servant-docs ==0.11.8
|
- servant-docs ==0.11.9
|
||||||
- servant-elm ==0.7.2
|
- servant-elm ==0.7.2
|
||||||
- servant-errors ==0.1.6.0
|
- servant-errors ==0.1.6.0
|
||||||
- servant-exceptions ==0.2.1
|
- servant-exceptions ==0.2.1
|
||||||
- servant-exceptions-server ==0.2.1
|
- servant-exceptions-server ==0.2.1
|
||||||
- servant-foreign ==0.15.3
|
- servant-foreign ==0.15.4
|
||||||
- servant-http-streams ==0.18.2
|
- servant-http-streams ==0.18.3
|
||||||
- servant-machines ==0.15.1
|
- servant-machines ==0.15.1
|
||||||
- servant-multipart ==0.12.1
|
- servant-multipart ==0.12.1
|
||||||
- servant-multipart-api ==0.12.1
|
- servant-multipart-api ==0.12.1
|
||||||
- servant-openapi3 ==2.0.1.2
|
- servant-openapi3 ==2.0.1.2
|
||||||
- servant-pipes ==0.15.2
|
- servant-pipes ==0.15.3
|
||||||
- servant-rawm ==1.0.0.0
|
- servant-rawm ==1.0.0.0
|
||||||
- servant-server ==0.18.2
|
- servant-server ==0.18.3
|
||||||
- servant-swagger ==1.1.10
|
- servant-swagger ==1.1.10
|
||||||
- servant-swagger-ui ==0.3.5.3.47.1
|
- servant-swagger-ui ==0.3.5.3.47.1
|
||||||
- servant-swagger-ui-core ==0.3.5
|
- servant-swagger-ui-core ==0.3.5
|
||||||
|
@ -2118,9 +2118,9 @@ default-package-overrides:
|
||||||
- set-cover ==0.1.1
|
- set-cover ==0.1.1
|
||||||
- setenv ==0.1.1.3
|
- setenv ==0.1.1.3
|
||||||
- setlocale ==1.0.0.10
|
- setlocale ==1.0.0.10
|
||||||
- sexp-grammar ==2.3.0
|
- sexp-grammar ==2.3.1
|
||||||
- SHA ==1.6.4.4
|
- SHA ==1.6.4.4
|
||||||
- shake ==0.19.4
|
- shake ==0.19.5
|
||||||
- shake-language-c ==0.12.0
|
- shake-language-c ==0.12.0
|
||||||
- shake-plus ==0.3.3.1
|
- shake-plus ==0.3.3.1
|
||||||
- shake-plus-extended ==0.4.1.0
|
- shake-plus-extended ==0.4.1.0
|
||||||
|
@ -2143,7 +2143,7 @@ default-package-overrides:
|
||||||
- simple-affine-space ==0.1.1
|
- simple-affine-space ==0.1.1
|
||||||
- simple-cabal ==0.1.3
|
- simple-cabal ==0.1.3
|
||||||
- simple-cmd ==0.2.3
|
- simple-cmd ==0.2.3
|
||||||
- simple-cmd-args ==0.1.6
|
- simple-cmd-args ==0.1.7
|
||||||
- simple-log ==0.9.12
|
- simple-log ==0.9.12
|
||||||
- simple-reflect ==0.3.3
|
- simple-reflect ==0.3.3
|
||||||
- simple-sendfile ==0.2.30
|
- simple-sendfile ==0.2.30
|
||||||
|
@ -2161,8 +2161,8 @@ default-package-overrides:
|
||||||
- skein ==1.0.9.4
|
- skein ==1.0.9.4
|
||||||
- skews ==0.1.0.3
|
- skews ==0.1.0.3
|
||||||
- skip-var ==0.1.1.0
|
- skip-var ==0.1.1.0
|
||||||
- skylighting ==0.10.5.1
|
- skylighting ==0.10.5.2
|
||||||
- skylighting-core ==0.10.5.1
|
- skylighting-core ==0.10.5.2
|
||||||
- slack-api ==0.12
|
- slack-api ==0.12
|
||||||
- slack-progressbar ==0.1.0.1
|
- slack-progressbar ==0.1.0.1
|
||||||
- slick ==1.1.1.0
|
- slick ==1.1.1.0
|
||||||
|
@ -2244,7 +2244,7 @@ default-package-overrides:
|
||||||
- Stream ==0.4.7.2
|
- Stream ==0.4.7.2
|
||||||
- streaming ==0.2.3.0
|
- streaming ==0.2.3.0
|
||||||
- streaming-attoparsec ==1.0.0.1
|
- streaming-attoparsec ==1.0.0.1
|
||||||
- streaming-bytestring ==0.2.0
|
- streaming-bytestring ==0.2.1
|
||||||
- streaming-commons ==0.2.2.1
|
- streaming-commons ==0.2.2.1
|
||||||
- streamly ==0.7.3
|
- streamly ==0.7.3
|
||||||
- streams ==3.3
|
- streams ==3.3
|
||||||
|
@ -2264,7 +2264,7 @@ default-package-overrides:
|
||||||
- string-random ==0.1.4.1
|
- string-random ==0.1.4.1
|
||||||
- stringsearch ==0.3.6.6
|
- stringsearch ==0.3.6.6
|
||||||
- string-transform ==1.1.1
|
- string-transform ==1.1.1
|
||||||
- stripe-concepts ==1.0.2.8
|
- stripe-concepts ==1.0.3
|
||||||
- stripe-core ==2.6.2
|
- stripe-core ==2.6.2
|
||||||
- stripe-haskell ==2.6.2
|
- stripe-haskell ==2.6.2
|
||||||
- stripe-http-client ==2.6.2
|
- stripe-http-client ==2.6.2
|
||||||
|
@ -2329,7 +2329,7 @@ default-package-overrides:
|
||||||
- tasty-program ==1.0.5
|
- tasty-program ==1.0.5
|
||||||
- tasty-quickcheck ==0.10.1.2
|
- tasty-quickcheck ==0.10.1.2
|
||||||
- tasty-rerun ==1.1.18
|
- tasty-rerun ==1.1.18
|
||||||
- tasty-silver ==3.2.1
|
- tasty-silver ==3.2.2
|
||||||
- tasty-smallcheck ==0.8.2
|
- tasty-smallcheck ==0.8.2
|
||||||
- tasty-test-reporter ==0.1.1.4
|
- tasty-test-reporter ==0.1.1.4
|
||||||
- tasty-th ==0.1.7
|
- tasty-th ==0.1.7
|
||||||
|
@ -2338,7 +2338,7 @@ default-package-overrides:
|
||||||
- TCache ==0.12.1
|
- TCache ==0.12.1
|
||||||
- tce-conf ==1.3
|
- tce-conf ==1.3
|
||||||
- tdigest ==0.2.1.1
|
- tdigest ==0.2.1.1
|
||||||
- template-haskell-compat-v0208 ==0.1.5
|
- template-haskell-compat-v0208 ==0.1.6
|
||||||
- temporary ==1.3
|
- temporary ==1.3
|
||||||
- temporary-rc ==1.2.0.3
|
- temporary-rc ==1.2.0.3
|
||||||
- temporary-resourcet ==0.1.0.1
|
- temporary-resourcet ==0.1.0.1
|
||||||
|
@ -2408,7 +2408,7 @@ default-package-overrides:
|
||||||
- th-test-utils ==1.1.0
|
- th-test-utils ==1.1.0
|
||||||
- th-utilities ==0.2.4.3
|
- th-utilities ==0.2.4.3
|
||||||
- thyme ==0.3.5.5
|
- thyme ==0.3.5.5
|
||||||
- tidal ==1.7.5
|
- tidal ==1.7.7
|
||||||
- tile ==0.3.0.0
|
- tile ==0.3.0.0
|
||||||
- time-compat ==1.9.5
|
- time-compat ==1.9.5
|
||||||
- timeit ==2.0
|
- timeit ==2.0
|
||||||
|
@ -2443,7 +2443,7 @@ default-package-overrides:
|
||||||
- transformers-bifunctors ==0.1
|
- transformers-bifunctors ==0.1
|
||||||
- transformers-compat ==0.6.6
|
- transformers-compat ==0.6.6
|
||||||
- transformers-fix ==1.0
|
- transformers-fix ==1.0
|
||||||
- traverse-with-class ==1.0.1.0
|
- traverse-with-class ==1.0.1.1
|
||||||
- tree-diff ==0.2
|
- tree-diff ==0.2
|
||||||
- tree-fun ==0.8.1.0
|
- tree-fun ==0.8.1.0
|
||||||
- tree-view ==0.5.1
|
- tree-view ==0.5.1
|
||||||
|
@ -2451,7 +2451,7 @@ default-package-overrides:
|
||||||
- triplesec ==0.2.2.1
|
- triplesec ==0.2.2.1
|
||||||
- trivial-constraint ==0.7.0.0
|
- trivial-constraint ==0.7.0.0
|
||||||
- tsv2csv ==0.1.0.2
|
- tsv2csv ==0.1.0.2
|
||||||
- ttc ==1.1.0.0
|
- ttc ==1.1.0.1
|
||||||
- ttl-hashtables ==1.4.1.0
|
- ttl-hashtables ==1.4.1.0
|
||||||
- ttrie ==0.1.2.1
|
- ttrie ==0.1.2.1
|
||||||
- tuple ==0.3.0.2
|
- tuple ==0.3.0.2
|
||||||
|
@ -2502,7 +2502,7 @@ default-package-overrides:
|
||||||
- unipatterns ==0.0.0.0
|
- unipatterns ==0.0.0.0
|
||||||
- uniplate ==1.6.13
|
- uniplate ==1.6.13
|
||||||
- uniprot-kb ==0.1.2.0
|
- uniprot-kb ==0.1.2.0
|
||||||
- uniq-deep ==1.2.0
|
- uniq-deep ==1.2.1
|
||||||
- unique ==0.0.1
|
- unique ==0.0.1
|
||||||
- unique-logic ==0.4
|
- unique-logic ==0.4
|
||||||
- unique-logic-tf ==0.5.1
|
- unique-logic-tf ==0.5.1
|
||||||
|
@ -2527,7 +2527,7 @@ default-package-overrides:
|
||||||
- unordered-containers ==0.2.14.0
|
- unordered-containers ==0.2.14.0
|
||||||
- unsafe ==0.0
|
- unsafe ==0.0
|
||||||
- urbit-hob ==0.3.3
|
- urbit-hob ==0.3.3
|
||||||
- uri-bytestring ==0.3.3.0
|
- uri-bytestring ==0.3.3.1
|
||||||
- uri-bytestring-aeson ==0.1.0.8
|
- uri-bytestring-aeson ==0.1.0.8
|
||||||
- uri-encode ==1.5.0.7
|
- uri-encode ==1.5.0.7
|
||||||
- url ==2.1.3
|
- url ==2.1.3
|
||||||
|
@ -2541,7 +2541,7 @@ default-package-overrides:
|
||||||
- uuid-types ==1.0.5
|
- uuid-types ==1.0.5
|
||||||
- validation ==1.1.1
|
- validation ==1.1.1
|
||||||
- validation-selective ==0.1.0.1
|
- validation-selective ==0.1.0.1
|
||||||
- validity ==0.11.0.0
|
- validity ==0.11.0.1
|
||||||
- validity-aeson ==0.2.0.4
|
- validity-aeson ==0.2.0.4
|
||||||
- validity-bytestring ==0.4.1.1
|
- validity-bytestring ==0.4.1.1
|
||||||
- validity-containers ==0.5.0.4
|
- validity-containers ==0.5.0.4
|
||||||
|
@ -2568,7 +2568,7 @@ default-package-overrides:
|
||||||
- vector-instances ==3.4
|
- vector-instances ==3.4
|
||||||
- vector-mmap ==0.0.3
|
- vector-mmap ==0.0.3
|
||||||
- vector-rotcev ==0.1.0.0
|
- vector-rotcev ==0.1.0.0
|
||||||
- vector-sized ==1.4.3.1
|
- vector-sized ==1.4.4
|
||||||
- vector-space ==0.16
|
- vector-space ==0.16
|
||||||
- vector-split ==1.0.0.2
|
- vector-split ==1.0.0.2
|
||||||
- vector-th-unbox ==0.2.1.9
|
- vector-th-unbox ==0.2.1.9
|
||||||
|
@ -2604,7 +2604,7 @@ default-package-overrides:
|
||||||
- wai-slack-middleware ==0.2.0
|
- wai-slack-middleware ==0.2.0
|
||||||
- wai-websockets ==3.0.1.2
|
- wai-websockets ==3.0.1.2
|
||||||
- wakame ==0.1.0.0
|
- wakame ==0.1.0.0
|
||||||
- warp ==3.3.16
|
- warp ==3.3.17
|
||||||
- warp-tls ==3.3.1
|
- warp-tls ==3.3.1
|
||||||
- warp-tls-uid ==0.2.0.6
|
- warp-tls-uid ==0.2.0.6
|
||||||
- wave ==0.2.0
|
- wave ==0.2.0
|
||||||
|
@ -2658,7 +2658,7 @@ default-package-overrides:
|
||||||
- xdg-basedir ==0.2.2
|
- xdg-basedir ==0.2.2
|
||||||
- xdg-userdirs ==0.1.0.2
|
- xdg-userdirs ==0.1.0.2
|
||||||
- xeno ==0.4.2
|
- xeno ==0.4.2
|
||||||
- xlsx ==0.8.3
|
- xlsx ==0.8.4
|
||||||
- xlsx-tabular ==0.2.2.1
|
- xlsx-tabular ==0.2.2.1
|
||||||
- xml ==1.3.14
|
- xml ==1.3.14
|
||||||
- xml-basic ==0.1.3.1
|
- xml-basic ==0.1.3.1
|
||||||
|
@ -2681,12 +2681,12 @@ default-package-overrides:
|
||||||
- xxhash-ffi ==0.2.0.0
|
- xxhash-ffi ==0.2.0.0
|
||||||
- yaml ==0.11.5.0
|
- yaml ==0.11.5.0
|
||||||
- yamlparse-applicative ==0.2.0.0
|
- yamlparse-applicative ==0.2.0.0
|
||||||
- yesod ==1.6.1.1
|
- yesod ==1.6.1.2
|
||||||
- yesod-auth ==1.6.10.3
|
- yesod-auth ==1.6.10.3
|
||||||
- yesod-auth-hashdb ==1.7.1.7
|
- yesod-auth-hashdb ==1.7.1.7
|
||||||
- yesod-auth-oauth2 ==0.6.3.4
|
- yesod-auth-oauth2 ==0.6.3.4
|
||||||
- yesod-bin ==1.6.1
|
- yesod-bin ==1.6.1
|
||||||
- yesod-core ==1.6.20.1
|
- yesod-core ==1.6.20.2
|
||||||
- yesod-fb ==0.6.1
|
- yesod-fb ==0.6.1
|
||||||
- yesod-form ==1.7.0
|
- yesod-form ==1.7.0
|
||||||
- yesod-gitrev ==0.2.1
|
- yesod-gitrev ==0.2.1
|
||||||
|
|
|
@ -480,6 +480,7 @@ dont-distribute-packages:
|
||||||
- avers-api
|
- avers-api
|
||||||
- avers-api-docs
|
- avers-api-docs
|
||||||
- avers-server
|
- avers-server
|
||||||
|
- aviation-navigation
|
||||||
- avro-piper
|
- avro-piper
|
||||||
- awesomium
|
- awesomium
|
||||||
- awesomium-glut
|
- awesomium-glut
|
||||||
|
@ -808,7 +809,6 @@ dont-distribute-packages:
|
||||||
- convertible-text
|
- convertible-text
|
||||||
- coordinate
|
- coordinate
|
||||||
- copilot
|
- copilot
|
||||||
- copilot-c99
|
|
||||||
- copilot-cbmc
|
- copilot-cbmc
|
||||||
- copilot-language
|
- copilot-language
|
||||||
- copilot-libraries
|
- copilot-libraries
|
||||||
|
@ -1444,6 +1444,7 @@ dont-distribute-packages:
|
||||||
- hasql-cursor-query
|
- hasql-cursor-query
|
||||||
- hasql-postgres
|
- hasql-postgres
|
||||||
- hasql-postgres-options
|
- hasql-postgres-options
|
||||||
|
- hasql-queue
|
||||||
- hasql-th
|
- hasql-th
|
||||||
- hastache-aeson
|
- hastache-aeson
|
||||||
- haste-app
|
- haste-app
|
||||||
|
@ -1833,6 +1834,11 @@ dont-distribute-packages:
|
||||||
- keera-hails-reactive-yampa
|
- keera-hails-reactive-yampa
|
||||||
- keera-hails-reactivelenses
|
- keera-hails-reactivelenses
|
||||||
- keera-posture
|
- keera-posture
|
||||||
|
- keid-core
|
||||||
|
- keid-geometry
|
||||||
|
- keid-render-basic
|
||||||
|
- keid-resource-gltf
|
||||||
|
- keid-ui-dearimgui
|
||||||
- kevin
|
- kevin
|
||||||
- keysafe
|
- keysafe
|
||||||
- keyvaluehash
|
- keyvaluehash
|
||||||
|
@ -2334,6 +2340,7 @@ dont-distribute-packages:
|
||||||
- polysemy-fs
|
- polysemy-fs
|
||||||
- polysemy-fskvstore
|
- polysemy-fskvstore
|
||||||
- polysemy-http
|
- polysemy-http
|
||||||
|
- polysemy-keyed-state
|
||||||
- polysemy-kvstore-jsonfile
|
- polysemy-kvstore-jsonfile
|
||||||
- polysemy-log
|
- polysemy-log
|
||||||
- polysemy-log-co
|
- polysemy-log-co
|
||||||
|
@ -2886,6 +2893,7 @@ dont-distribute-packages:
|
||||||
- swearjure
|
- swearjure
|
||||||
- sweet-egison
|
- sweet-egison
|
||||||
- switch
|
- switch
|
||||||
|
- sydtest-persistent-postgresql
|
||||||
- sylvia
|
- sylvia
|
||||||
- sym-plot
|
- sym-plot
|
||||||
- symantic-atom
|
- symantic-atom
|
||||||
|
|
|
@ -914,4 +914,9 @@ self: super: builtins.intersectAttrs super {
|
||||||
|
|
||||||
cachix = generateOptparseApplicativeCompletion "cachix" super.cachix;
|
cachix = generateOptparseApplicativeCompletion "cachix" super.cachix;
|
||||||
|
|
||||||
|
# Enable extra optimisations which increase build time, but also
|
||||||
|
# later compiler performance, so we should do this for user's benefit.
|
||||||
|
# Flag added in Agda 2.6.2
|
||||||
|
Agda = appendConfigureFlag super.Agda "-foptimise-heavily";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
2422
pkgs/development/haskell-modules/hackage-packages.nix
generated
2422
pkgs/development/haskell-modules/hackage-packages.nix
generated
File diff suppressed because it is too large
Load diff
|
@ -348,7 +348,7 @@ in package-set { inherit pkgs lib callPackage; } self // {
|
||||||
# );
|
# );
|
||||||
# });
|
# });
|
||||||
# in
|
# in
|
||||||
# hpkgs.shellFor {
|
# haskellPkgs.shellFor {
|
||||||
# packages = p: [ p.foo ];
|
# packages = p: [ p.foo ];
|
||||||
# genericBuilderArgsModifier = args: args // { doCheck = true; doBenchmark = true };
|
# genericBuilderArgsModifier = args: args // { doCheck = true; doBenchmark = true };
|
||||||
# }
|
# }
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "standard-library";
|
pname = "standard-library";
|
||||||
version = "1.6";
|
version = "1.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
repo = "agda-stdlib";
|
repo = "agda-stdlib";
|
||||||
owner = "agda";
|
owner = "agda";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1smvnid7r1mc4lp34pfrbzgzrcl0gmw0dlkga8z0r3g2zhj98lz1";
|
sha256 = "14h3jprm6924g9576v25axn9v6xnip354hvpzlcqsc5qqyj7zzjs";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ (ghcWithPackages (self : [ self.filemanip ])) ];
|
nativeBuildInputs = [ (ghcWithPackages (self : [ self.filemanip ])) ];
|
||||||
|
@ -16,7 +16,7 @@ mkDerivation rec {
|
||||||
runhaskell GenerateEverything.hs
|
runhaskell GenerateEverything.hs
|
||||||
# We will only build/consider Everything.agda, in particular we don't want Everything*.agda
|
# We will only build/consider Everything.agda, in particular we don't want Everything*.agda
|
||||||
# do be copied to the store.
|
# do be copied to the store.
|
||||||
rm EverythingSafe.agda EverythingSafeGuardedness.agda EverythingSafeSizedTypes.agda
|
rm EverythingSafe.agda
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.tests = { inherit (nixosTests) agda; };
|
passthru.tests = { inherit (nixosTests) agda; };
|
||||||
|
|
|
@ -34,7 +34,11 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
patchFlags = lib.optional stdenv.hostPlatform.isDarwin "-p0";
|
patchFlags = lib.optional stdenv.hostPlatform.isDarwin "-p0";
|
||||||
|
|
||||||
preConfigure = lib.optionalString stdenv.hostPlatform.isLinux "export CFLAGS='-fgnu89-inline'";
|
# For currently unknown reason, `-fPIC` has to be passed explicitly, otherwise
|
||||||
|
# downstream software like `elfutils` will get `recompile errors like:
|
||||||
|
# libargp.a(argp-help.o): relocation R_X86_64_PC32 against symbol `program_invocation_short_name' can not be used when making a shared object; recompile with -fPIC
|
||||||
|
# It seems that nixpkgs's on-by-default `-fPIC` is not in effect here.
|
||||||
|
preConfigure = lib.optionalString stdenv.hostPlatform.isLinux "export CFLAGS='-fgnu89-inline -fPIC'";
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
mkdir -p $out/lib $out/include
|
mkdir -p $out/lib $out/include
|
||||||
|
|
|
@ -205,8 +205,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "vscode-tailwindcss";
|
name = "vscode-tailwindcss";
|
||||||
publisher = "bradlc";
|
publisher = "bradlc";
|
||||||
version = "0.6.6";
|
version = "0.6.13";
|
||||||
sha256 = "sha256-CRd+caKHFOXBnePr/LqNkzw0kRGYvNSkf4ecNgedpdA=";
|
sha256 = "098vrm28b7jpzk0c2d0cgxvdw4jsswzf18cx1m9jwsm1j40fp5f4";
|
||||||
};
|
};
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
license = licenses.mpl20;
|
license = licenses.mpl20;
|
||||||
|
@ -270,8 +270,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "bracket-pair-colorizer-2";
|
name = "bracket-pair-colorizer-2";
|
||||||
publisher = "CoenraadS";
|
publisher = "CoenraadS";
|
||||||
version = "0.2.0";
|
version = "0.2.1";
|
||||||
sha256 = "0nppgfbmw0d089rka9cqs3sbd5260dhhiipmjfga3nar9vp87slh";
|
sha256 = "0bfvzs4ac537zqhnqaa38jf4lhiy1fmqcv6lq89nnx8k963380z7";
|
||||||
};
|
};
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
|
@ -454,8 +454,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "vscode-great-icons";
|
name = "vscode-great-icons";
|
||||||
publisher = "emmanuelbeziat";
|
publisher = "emmanuelbeziat";
|
||||||
version = "2.1.64";
|
version = "2.1.79";
|
||||||
sha256 = "sha256-qsL1vWiEAYeWkMDNSrr1yzg0QxroEQQeznoDL3Ujy/o=";
|
sha256 = "1cr1pxgxlfr643sfxbcr2xd53s1dnzcpacjj0ffkgizfda2psy78";
|
||||||
};
|
};
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
|
@ -474,8 +474,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "prettier-vscode";
|
name = "prettier-vscode";
|
||||||
publisher = "esbenp";
|
publisher = "esbenp";
|
||||||
version = "5.8.0";
|
version = "8.0.1";
|
||||||
sha256 = "0h7wc4pffyq1i8vpj4a5az02g2x04y7y1chilmcfmzg2w42xpby7";
|
sha256 = "017lqpmzjxq5f1zr49akcm9gfki0qq8v7pj7gks6a3szjdx16mnl";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -776,8 +776,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "svg";
|
name = "svg";
|
||||||
publisher = "jock";
|
publisher = "jock";
|
||||||
version = "1.4.4";
|
version = "1.4.7";
|
||||||
sha256 = "0kn2ic7pgbd4rbvzpsxfwyiwxa1iy92l0h3jsppxc8gk8xbqm2nc";
|
sha256 = "04ghqg4s7g7yylmvbxzwzpnyy4zin2bwlgvflh18m77w4j0ckpiq";
|
||||||
};
|
};
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
|
@ -824,8 +824,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "magit";
|
name = "magit";
|
||||||
publisher = "kahole";
|
publisher = "kahole";
|
||||||
version = "0.6.15";
|
version = "0.6.18";
|
||||||
sha256 = "sha256-fRXm70FXnHduoywI4YC9ya6/J7wyd6EBzbnrcijBIbA=";
|
sha256 = "0sqzz5bbqqg60aypvwxcqnxrr72gmwfj9sv0amgkyaf60zg5sf7w";
|
||||||
};
|
};
|
||||||
meta = {
|
meta = {
|
||||||
license = lib.licenses.mit;
|
license = lib.licenses.mit;
|
||||||
|
@ -1096,8 +1096,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "crates";
|
name = "crates";
|
||||||
publisher = "serayuzgur";
|
publisher = "serayuzgur";
|
||||||
version = "0.5.3";
|
version = "0.5.9";
|
||||||
sha256 = "1xk7ayv590hsm3scqpyh6962kvgdlinnpkx0vapr7vs4y08dx72f";
|
sha256 = "0l26pyvw7n3bszf97yx6qps72acq112akg3q4jq5mvlibng1nwk0";
|
||||||
};
|
};
|
||||||
meta = {
|
meta = {
|
||||||
license = lib.licenses.mit;
|
license = lib.licenses.mit;
|
||||||
|
@ -1198,8 +1198,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "svelte-vscode";
|
name = "svelte-vscode";
|
||||||
publisher = "svelte";
|
publisher = "svelte";
|
||||||
version = "105.0.0";
|
version = "105.3.0";
|
||||||
sha256 = "sha256-my3RzwUW5MnajAbEnqxtrIR701XH+AKYLbnKD7ivASE=";
|
sha256 = "11plqsj3c4dv0xg2d76pxrcn382qr9wbh1lhln2x8mzv840icvwr";
|
||||||
};
|
};
|
||||||
meta = {
|
meta = {
|
||||||
license = lib.licenses.mit;
|
license = lib.licenses.mit;
|
||||||
|
@ -1252,8 +1252,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "shellcheck";
|
name = "shellcheck";
|
||||||
publisher = "timonwong";
|
publisher = "timonwong";
|
||||||
version = "0.14.1";
|
version = "0.14.4";
|
||||||
sha256 = "sha256-X3ihMxANcqNLWl9oTZjCgwRt1uBsSN2BmC2D4dPRFLE=";
|
sha256 = "05z314sw9nqym3qlj7dcwm0fz1hb23xppzqn3nr2wcj17hs8zz4m";
|
||||||
};
|
};
|
||||||
nativeBuildInputs = [ jq ];
|
nativeBuildInputs = [ jq ];
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
|
@ -1323,8 +1323,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "vim";
|
name = "vim";
|
||||||
publisher = "vscodevim";
|
publisher = "vscodevim";
|
||||||
version = "1.11.3";
|
version = "1.21.5";
|
||||||
sha256 = "1smzsgcrkhghbnpy51gp28kh74l7y4s2m8pfxabb4ffb751254j0";
|
sha256 = "1v1xs1wcigisr6xip31i02cfryxrb157sla34y59pwlnhc5x1gny";
|
||||||
};
|
};
|
||||||
meta = {
|
meta = {
|
||||||
license = lib.licenses.mit;
|
license = lib.licenses.mit;
|
||||||
|
|
|
@ -48,7 +48,7 @@ EOF
|
||||||
if [ $# -ne 0 ]; then
|
if [ $# -ne 0 ]; then
|
||||||
CODE=$1
|
CODE=$1
|
||||||
else
|
else
|
||||||
CODE=$(command -v code)
|
CODE=$(command -v code || command -v codium)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$CODE" ]; then
|
if [ -z "$CODE" ]; then
|
||||||
|
|
|
@ -5,13 +5,13 @@
|
||||||
with lib;
|
with lib;
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "lxcfs";
|
pname = "lxcfs";
|
||||||
version = "4.0.8";
|
version = "4.0.9";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "lxc";
|
owner = "lxc";
|
||||||
repo = "lxcfs";
|
repo = "lxcfs";
|
||||||
rev = "lxcfs-${version}";
|
rev = "lxcfs-${version}";
|
||||||
sha256 = "sha256-8Tack2gM3AU3coGXs5hEbAaBCo5ss1sGUFFEjZDn5Lg=";
|
sha256 = "0zx58lair8hwi4bxm5h7i8n1j5fcdgw5cr6f4wk9qhks0sr5dip5";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config help2man autoreconfHook makeWrapper ];
|
nativeBuildInputs = [ pkg-config help2man autoreconfHook makeWrapper ];
|
||||||
|
|
|
@ -4,4 +4,5 @@ lib.recurseIntoAttrs {
|
||||||
shellFor = callPackage ./shellFor { };
|
shellFor = callPackage ./shellFor { };
|
||||||
documentationTarball = callPackage ./documentationTarball { };
|
documentationTarball = callPackage ./documentationTarball { };
|
||||||
setBuildTarget = callPackage ./setBuildTarget { };
|
setBuildTarget = callPackage ./setBuildTarget { };
|
||||||
|
writers = callPackage ./writers { };
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,11 @@ let
|
||||||
drv = haskellPackages.vector;
|
drv = haskellPackages.vector;
|
||||||
docs = pkgs.haskell.lib.documentationTarball drv;
|
docs = pkgs.haskell.lib.documentationTarball drv;
|
||||||
|
|
||||||
in pkgs.runCommand "test haskell.lib.documentationTarball" { } ''
|
in pkgs.runCommand "test haskell.lib.documentationTarball" {
|
||||||
|
meta = {
|
||||||
|
inherit (docs.meta) platforms;
|
||||||
|
};
|
||||||
|
} ''
|
||||||
tar xvzf "${docs}/${drv.name}-docs.tar.gz"
|
tar xvzf "${docs}/${drv.name}-docs.tar.gz"
|
||||||
|
|
||||||
# Check for Haddock html
|
# Check for Haddock html
|
||||||
|
|
|
@ -30,7 +30,12 @@ let
|
||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
|
|
||||||
in pkgs.runCommand "test haskell.lib.setBuildTarget" {} ''
|
in
|
||||||
|
pkgs.runCommand "test haskell.lib.setBuildTarget" {
|
||||||
|
meta = {
|
||||||
|
inherit (drv.meta) platforms;
|
||||||
|
};
|
||||||
|
} ''
|
||||||
${test "foo" "bar"}
|
${test "foo" "bar"}
|
||||||
${test "bar" "foo"}
|
${test "bar" "foo"}
|
||||||
touch "$out"
|
touch "$out"
|
||||||
|
|
|
@ -29,5 +29,8 @@
|
||||||
additionalMaintainers = with lib.maintainers; [ cdepillabout ];
|
additionalMaintainers = with lib.maintainers; [ cdepillabout ];
|
||||||
allMaintainers = oldMaintainers ++ additionalMaintainers;
|
allMaintainers = oldMaintainers ++ additionalMaintainers;
|
||||||
in
|
in
|
||||||
oldMeta // { maintainers = allMaintainers; };
|
oldMeta // {
|
||||||
|
maintainers = allMaintainers;
|
||||||
|
inherit (cabal-install.meta) platforms;
|
||||||
|
};
|
||||||
})
|
})
|
||||||
|
|
26
pkgs/test/haskell/writers/default.nix
Normal file
26
pkgs/test/haskell/writers/default.nix
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
# Wrap only the haskell-related tests from tests.writers
|
||||||
|
# in their own derivation for Hydra CI in the haskell-updates
|
||||||
|
# jobset. Can presumably removed as soon as tests.writers is
|
||||||
|
# always green on darwin as well:
|
||||||
|
# https://github.com/NixOS/nixpkgs/issues/126182
|
||||||
|
{ runCommand, tests }:
|
||||||
|
|
||||||
|
let
|
||||||
|
inherit (tests.writers)
|
||||||
|
writeTest
|
||||||
|
bin
|
||||||
|
simple
|
||||||
|
path
|
||||||
|
;
|
||||||
|
in
|
||||||
|
|
||||||
|
runCommand "test-haskell-writers" {
|
||||||
|
meta = {
|
||||||
|
inherit (tests.writers.meta) platforms;
|
||||||
|
};
|
||||||
|
} ''
|
||||||
|
${writeTest "success" "test-haskell-bin-writer" "${bin.haskell}/bin/${bin.haskell.name}"}
|
||||||
|
${writeTest "success" "test-haskell-simple-writer" simple.haskell}
|
||||||
|
${writeTest "success" "test-haskell-path-writer" path.haskell}
|
||||||
|
touch $out
|
||||||
|
''
|
|
@ -57,7 +57,8 @@ in {
|
||||||
|
|
||||||
ghc884 = callPackage ../development/compilers/ghc/8.8.4.nix {
|
ghc884 = callPackage ../development/compilers/ghc/8.8.4.nix {
|
||||||
# aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
|
# aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
|
||||||
bootPkgs = if stdenv.isAarch64 then
|
# Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them
|
||||||
|
bootPkgs = if stdenv.isAarch64 || stdenv.targetPlatform.isMusl then
|
||||||
packages.ghc8102BinaryMinimal
|
packages.ghc8102BinaryMinimal
|
||||||
else
|
else
|
||||||
packages.ghc865Binary;
|
packages.ghc865Binary;
|
||||||
|
@ -67,7 +68,8 @@ in {
|
||||||
};
|
};
|
||||||
ghc8104 = callPackage ../development/compilers/ghc/8.10.4.nix {
|
ghc8104 = callPackage ../development/compilers/ghc/8.10.4.nix {
|
||||||
# aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
|
# aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
|
||||||
bootPkgs = if stdenv.isAarch64 || stdenv.isAarch32 then
|
# Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them
|
||||||
|
bootPkgs = if stdenv.isAarch64 || stdenv.isAarch32 || stdenv.targetPlatform.isMusl then
|
||||||
packages.ghc8102BinaryMinimal
|
packages.ghc8102BinaryMinimal
|
||||||
else
|
else
|
||||||
packages.ghc865Binary;
|
packages.ghc865Binary;
|
||||||
|
|
|
@ -89,11 +89,13 @@ let
|
||||||
haskellPackages = packagePlatforms pkgs.haskellPackages;
|
haskellPackages = packagePlatforms pkgs.haskellPackages;
|
||||||
haskell.compiler = packagePlatforms pkgs.haskell.compiler;
|
haskell.compiler = packagePlatforms pkgs.haskell.compiler;
|
||||||
|
|
||||||
tests = let
|
tests.haskell = packagePlatforms pkgs.tests.haskell;
|
||||||
testPlatforms = packagePlatforms pkgs.tests;
|
|
||||||
in {
|
pkgsMusl.haskell.compiler = packagePlatforms pkgs.pkgsMusl.haskell.compiler // {
|
||||||
haskell = testPlatforms.haskell;
|
# remove musl ghc865Binary since it is known to be broken and
|
||||||
writers = testPlatforms.writers;
|
# causes an evaluation error on darwin.
|
||||||
|
# TODO: remove ghc865Binary altogether and use ghc8102Binary
|
||||||
|
ghc865Binary = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
# test some statically linked packages to catch regressions
|
# test some statically linked packages to catch regressions
|
||||||
|
@ -247,11 +249,10 @@ let
|
||||||
};
|
};
|
||||||
constituents = accumulateDerivations [
|
constituents = accumulateDerivations [
|
||||||
# haskell specific tests
|
# haskell specific tests
|
||||||
jobs.tests.haskell
|
#
|
||||||
# writeHaskell and writeHaskellBin
|
# TODO: The writers test appears to be failing on darwin for unknown
|
||||||
# TODO: writeHaskell currently fails on darwin
|
# reasons. See https://github.com/NixOS/nixpkgs/pull/129606#issuecomment-881307871.
|
||||||
jobs.tests.writers.x86_64-linux
|
(lib.recursiveUpdate jobs.tests.haskell { writers.x86_64-darwin = null; })
|
||||||
jobs.tests.writers.aarch64-linux
|
|
||||||
# important top-level packages
|
# important top-level packages
|
||||||
jobs.cabal-install
|
jobs.cabal-install
|
||||||
jobs.cabal2nix
|
jobs.cabal2nix
|
||||||
|
@ -309,6 +310,21 @@ let
|
||||||
jobs.pkgsStatic.haskell.packages.integer-simple.ghc8104.random.aarch64-linux
|
jobs.pkgsStatic.haskell.packages.integer-simple.ghc8104.random.aarch64-linux
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
muslGHCs = pkgs.releaseTools.aggregate {
|
||||||
|
name = "haskell-pkgsMusl-ghcs";
|
||||||
|
meta = {
|
||||||
|
description = "GHCs built with musl";
|
||||||
|
maintainers = with lib.maintainers; [
|
||||||
|
nh2
|
||||||
|
];
|
||||||
|
};
|
||||||
|
constituents = accumulateDerivations [
|
||||||
|
jobs.pkgsMusl.haskell.compiler.ghc8102Binary
|
||||||
|
jobs.pkgsMusl.haskell.compiler.ghc884
|
||||||
|
jobs.pkgsMusl.haskell.compiler.ghc8104
|
||||||
|
jobs.pkgsMusl.haskell.compiler.ghc901
|
||||||
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue