From 919bc2be0717df2ae2e3f49e03b869b52e612df9 Mon Sep 17 00:00:00 2001 From: Ivan Malison Date: Wed, 19 Jun 2019 21:56:34 -0700 Subject: [PATCH] [taffybar] Refactor nix files --- dotfiles/config/taffybar/base.nix | 19 +++++++++++++++++++ dotfiles/config/taffybar/default.nix | 7 +------ dotfiles/config/taffybar/shell.nix | 12 ++++++------ 3 files changed, 26 insertions(+), 12 deletions(-) create mode 100644 dotfiles/config/taffybar/base.nix diff --git a/dotfiles/config/taffybar/base.nix b/dotfiles/config/taffybar/base.nix new file mode 100644 index 00000000..73bebeac --- /dev/null +++ b/dotfiles/config/taffybar/base.nix @@ -0,0 +1,19 @@ +(import ./taffybar/nixpkgs.nix) { + overlays = [ + (import ./taffybar/overlay.nix) + (import ../xmonad/overlay.nix) + (_: super: { + haskellPackages = super.haskellPackages.override (old: { + overrides = super.lib.composeExtensions (old.overrides or (_: _: {})) (self: _: { + imalison-taffybar = + self.callCabal2nix "imalison-taffybar" + ( + super.lib.sourceByRegex ./. + ["taffybar.hs" "imalison-taffybar.cabal"] + ) + { }; + }); + }); + }) + ]; +} diff --git a/dotfiles/config/taffybar/default.nix b/dotfiles/config/taffybar/default.nix index 47cd42ca..922dacbd 100644 --- a/dotfiles/config/taffybar/default.nix +++ b/dotfiles/config/taffybar/default.nix @@ -1,6 +1 @@ -let - pkgs = (import ./taffybar/nixpkgs.nix) { overlays = [ - (import ./taffybar/overlay.nix) (import ../xmonad/overlay.nix) - ]; }; - source = pkgs.lib.sourceByRegex ./. ["taffybar.hs" "imalison-taffybar.cabal"]; -in pkgs.haskellPackages.callCabal2nix "imalison-taffybar" source { } +(import ./base.nix).haskellPackages.imalison-taffybar diff --git a/dotfiles/config/taffybar/shell.nix b/dotfiles/config/taffybar/shell.nix index 2c511610..b2269493 100644 --- a/dotfiles/config/taffybar/shell.nix +++ b/dotfiles/config/taffybar/shell.nix @@ -1,7 +1,7 @@ let - pkgs = (import ./taffybar/nixpkgs.nix) { overlays = [ - (import ./taffybar/overlay.nix) (import ../xmonad/overlay.nix) - ]; }; - source = pkgs.lib.sourceByRegex ./. ["taffybar.hs" "imalison-taffybar.cabal"]; - imalison-taffybar = pkgs.haskellPackages.callCabal2nix "imalison-taffybar" source { }; -in pkgs.haskellPackages.shellFor { packages = _: [imalison-taffybar pkgs.haskellPackages.taffybar]; } + pkgs = (import ./base.nix); +in pkgs.haskellPackages.shellFor { + packages = _: [ + pkgs.haskellPackages.imalison-taffybar pkgs.haskellPackages.taffybar + ]; +}