summaryrefslogtreecommitdiffhomepage
path: root/flake.nix
diff options
context:
space:
mode:
Diffstat (limited to 'flake.nix')
-rw-r--r--flake.nix36
1 files changed, 36 insertions, 0 deletions
diff --git a/flake.nix b/flake.nix
new file mode 100644
index 0000000..0c79fad
--- /dev/null
+++ b/flake.nix
@@ -0,0 +1,36 @@
+{
+ inputs = {
+ git-ignore-nix.url = "github:hercules-ci/gitignore.nix/master";
+ flake-utils.url = "github:numtide/flake-utils";
+ };
+ outputs = { self, nixpkgs, flake-utils, git-ignore-nix }:
+ let
+ overlay = final: prev: {
+ haskellPackages = prev.haskellPackages.override (old: {
+ overrides = prev.lib.composeExtensions (old.overrides or (_: _: { }))
+ (hself: hsuper: {
+ xmobar = hself.callCabal2nix "xmobar"
+ (git-ignore-nix.lib.gitignoreSource ./.) { };
+ });
+ });
+ };
+ overlays = [ overlay ];
+ in flake-utils.lib.eachDefaultSystem (system:
+ let pkgs = import nixpkgs { inherit system overlays; };
+ in rec {
+ devShell = pkgs.haskellPackages.shellFor {
+ packages = p: [ p.xmobar ];
+ buildInputs = with pkgs; [
+ xorg.libX11
+ xorg.libXrandr
+ xorg.libXrender
+ xorg.libXScrnSaver
+ xorg.libXext
+ xorg.libXft
+ ];
+ };
+ defaultPackage = pkgs.haskellPackages.xmobar;
+ }) // {
+ inherit overlay overlays;
+ };
+}