mirror of
https://github.com/infinisil/all-hies.git
synced 2024-11-22 04:43:27 +03:00
b8fb659620
* Remove update command Will be replaced with haskell.nix * Project revamp using haskell.nix - Only unstable HIE - Only GHC 8.6.5 and 8.8.3 (or more in the future), but on Linux for both glibc 2.27 (NixOS 19.09) and glibc 2.30 (NixOS 20.03/unstable) - Using haskell.nix for the builds. This makes evaluation slower, but makes things simpler overall. - No global installation intended anymore, instead you add HIE to your projects shell.nix file (to be documented in future commits) Co-authored-by: galagora <45048741+galagora@users.noreply.github.com> * Remove old files not needed anymore with the revamp * Add new haskell.nix-generated files * Add haskell.nix template * Add nixpkgs infra template * Build, push and test using GitHub Actions This builds and pushes all necessary configurations using GitHub Actions automatically. Also tests the templates * Update Readme for revamp * Add template documentation * Add warning for unsupported versions * Add haskell.nix + stack template * Minor Readme changes * Remove check-cache script * Don't CI on pushes to haskell.nix * Use same haskell.nix version for stack/cabal + cleanups Co-authored-by: galagora <45048741+galagora@users.noreply.github.com>
36 lines
1.2 KiB
Nix
36 lines
1.2 KiB
Nix
let
|
|
haskellNixVersion = "af5998fe8d6b201d2a9be09993f1b9fae74e0082";
|
|
haskellNixSrc = fetchTarball {
|
|
url = "https://github.com/input-output-hk/haskell.nix/tarball/${haskellNixVersion}";
|
|
sha256 = "0z5w99wkkpg2disvwjnsyp45w0bhdkrhvnrpz5nbwhhp21c71mbn";
|
|
};
|
|
haskellNix = import haskellNixSrc {};
|
|
|
|
glibcSpecificPkgs = {
|
|
"glibc-2.30" = import haskellNix.sources.nixpkgs-2003 haskellNix.nixpkgsArgs;
|
|
"glibc-2.27" = import haskellNix.sources.nixpkgs-1909 haskellNix.nixpkgsArgs;
|
|
};
|
|
|
|
pkgs = glibcSpecificPkgs."glibc-2.30";
|
|
|
|
hie = rec {
|
|
# unstable-2020-05-23
|
|
version = "fe630a1e31232013549518909e511924e19af4af";
|
|
src = fetchTarball {
|
|
url = "https://github.com/haskell/haskell-ide-engine/archive/${version}.tar.gz";
|
|
sha256 = "1lbbzk9kj39h79wb8imv5s22y592cyyrk06y24glrcxh5bzghb9l";
|
|
};
|
|
};
|
|
|
|
# String gets written to the generated directory, so CI can quickly know
|
|
# whether materialization files need to be updated
|
|
materializationId = builtins.toFile "materialization-id" ''
|
|
These materialization files were generated with
|
|
haskell.nix ${haskellNixVersion}
|
|
haskell-ide-engine ${hie.version}
|
|
'';
|
|
|
|
in {
|
|
inherit glibcSpecificPkgs pkgs hie materializationId;
|
|
}
|