{ 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"; }); }