mirror of
https://github.com/ilyakooo0/haskell.nix.git
synced 2024-10-26 01:27:40 +03:00
51 lines
1.5 KiB
Nix
51 lines
1.5 KiB
Nix
# Test a package set
|
|
{ stdenv, lib, testSrc, tool, compiler-nix-name, evalPackages }:
|
|
|
|
with lib;
|
|
|
|
let
|
|
# The hackage-security 0.6.0.1 was uploaded at 2020-04-06T20:54:35Z
|
|
# See https://hackage.haskell.org/package/hackage-security-0.6.0.1
|
|
version-used-at = index-state: ((tool compiler-nix-name "cabal" {
|
|
version = "3.2.0.0";
|
|
inherit index-state evalPackages;
|
|
cabalProject = ''
|
|
packages: .
|
|
allow-newer: cabal-install:base, hackage-security:*
|
|
package cabal-install
|
|
flags: -native-dns
|
|
'';
|
|
}).project.getPackage "hackage-security").components.library.version;
|
|
version-before = version-used-at "2020-04-06T20:54:34Z";
|
|
version-after = version-used-at "2020-04-06T20:54:35Z";
|
|
|
|
in
|
|
stdenv.mkDerivation {
|
|
name = "index-state-test";
|
|
|
|
buildCommand = ''
|
|
if [[ "${version-before}" != "0.6.0.0" ]]; then
|
|
echo 'Unexpected version ${version-before} (expected "0.6.0.0")'
|
|
exit 1
|
|
fi
|
|
if [[ "${version-after}" != "0.6.0.1" ]]; then
|
|
echo 'Unexpected version ${version-after} (expected "0.6.0.1")'
|
|
exit 1
|
|
fi
|
|
|
|
touch $out
|
|
'';
|
|
|
|
meta.platforms = platforms.all;
|
|
# This test will need to be updated to use newer hackage index-state for it
|
|
# to work with GHC 9 and above.
|
|
# Does not work for GHCJS
|
|
meta.disabled = stdenv.hostPlatform.isGhcjs || __elem compiler-nix-name ["ghc901" "ghc902" "ghc921" "ghc922" "ghc923" "ghc924"];
|
|
|
|
|
|
passthru = {
|
|
# Used for debugging with nix repl
|
|
inherit project packages;
|
|
};
|
|
}
|