mirror of
https://github.com/simplex-chat/haskell.nix.git
synced 2026-06-03 09:17:32 +00:00
4952abb034
* Add GHC-9.2.6 * More ghc 9.2.6 changes * ifdLevel 0 * ifdLevel 1 * More aarch64 materialization * Add spdx 3.19 materialization * ifdLevel 2 * Remaining materialization files * ifdLevel 3 * More materialization --------- Co-authored-by: Hamish Mackenzie <Hamish.K.Mackenzie@gmail.com>
42 lines
1.5 KiB
Nix
42 lines
1.5 KiB
Nix
{
|
|
description = "A very basic flake";
|
|
inputs.haskellNix.url = "github:input-output-hk/haskell.nix";
|
|
inputs.nixpkgs.follows = "haskellNix/nixpkgs-unstable";
|
|
inputs.flake-utils.url = "github:numtide/flake-utils";
|
|
outputs = { self, nixpkgs, flake-utils, haskellNix }:
|
|
flake-utils.lib.eachSystem [ "x86_64-linux" "x86_64-darwin" ] (system:
|
|
let
|
|
overlays = [ haskellNix.overlay
|
|
(final: prev: {
|
|
# This overlay adds our project to pkgs
|
|
helloProject =
|
|
final.haskell-nix.project' {
|
|
src = ./.;
|
|
compiler-nix-name = "ghc926";
|
|
# This is used by `nix develop .` to open a shell for use with
|
|
# `cabal`, `hlint` and `haskell-language-server`
|
|
shell.tools = {
|
|
cabal = {};
|
|
hlint = {};
|
|
haskell-language-server = {};
|
|
};
|
|
# Non-Haskell shell tools go here
|
|
shell.buildInputs = with pkgs; [
|
|
nixpkgs-fmt
|
|
];
|
|
# This adds `js-unknown-ghcjs-cabal` to the shell.
|
|
# shell.crossPlatforms = p: [p.ghcjs];
|
|
};
|
|
})
|
|
];
|
|
pkgs = import nixpkgs { inherit system overlays; inherit (haskellNix) config; };
|
|
flake = pkgs.helloProject.flake {
|
|
# This adds support for `nix build .#js-unknown-ghcjs:hello:exe:hello`
|
|
# crossPlatforms = p: [p.ghcjs];
|
|
};
|
|
in flake // {
|
|
# Built by `nix build .`
|
|
packages.default = flake.packages."hello:exe:hello";
|
|
});
|
|
}
|