{ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; flake-parts.url = "github:hercules-ci/flake-parts"; haskell-flake.url = "github:srid/haskell-flake"; }; outputs = inputs@{ self, nixpkgs, flake-parts, ... }: flake-parts.lib.mkFlake { inherit inputs; } { systems = nixpkgs.lib.systems.flakeExposed; imports = [ inputs.haskell-flake.flakeModule ]; perSystem = { self', pkgs, ... }: { # Typically, you just want a single project named "default". But # multiple projects are also possible, each using different GHC version. haskellProjects.default = { # If you have a .cabal file in the root, this option is determined # automatically. Otherwise, specify all your local packages here. packages.xmobar-config.root = ./.; # The base package set representing a specific GHC version. # By default, this is pkgs.haskellPackages. # You may also create your own. See https://haskell.flake.page/package-set # basePackages = pkgs.haskellPackages; # Dependency overrides go here. See https://haskell.flake.page/dependency # source-overrides = { }; # overrides = self: super: { }; # devShell = { # # Enabled by default # enable = true; # # # Programs you want to make available in the shell. # # Default programs can be disabled by setting to 'null' # tools = hp: { fourmolu = hp.fourmolu; ghcid = null; }; # # hlsCheck.enable = true; # }; }; # haskell-flake doesn't set the default package, but you can do it here. packages.default = self'.packages.xmobar-config; }; }; }