diff options
Diffstat (limited to 'flake.nix')
-rw-r--r-- | flake.nix | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..6d8dda1 --- /dev/null +++ b/flake.nix @@ -0,0 +1,43 @@ +{ + description = "Personal XMonad configuration."; + + inputs = { + haskell-nix.url = "github:input-output-hk/haskell.nix"; + nixpkgs.follows = "haskell-nix/nixpkgs-unstable"; + flake-utils.follows = "haskell-nix/flake-utils"; + }; + + outputs = { nixpkgs, flake-utils, haskell-nix, ... }: + flake-utils.lib.eachDefaultSystem (system: + let + pkgs = import nixpkgs { + inherit system overlays; + inherit (haskell-nix) config; + }; + overlays = [ + haskell-nix.overlay + (final: _: { + xmonad-ng = final.haskell-nix.project' { + src = ./.; + + compiler-nix-name = "ghc8107"; + + shell = { + tools = { + brittany = { }; + cabal = { }; + haskell-language-server = { }; + hlint = { }; + }; + + buildInputs = with pkgs; [ nixfmt ]; + }; + }; + }) + ]; + + flake = pkgs.xmonad-ng.flake { }; + in flake // { + defaultPackage = flake.packages."xmonad-ng:exe:xmonad-ng"; + }); +} |