nixpkgs/pkgs/applications/window-managers/taffybar/default.nix

29 lines
705 B
Nix

{ lib, stdenv, ghcWithPackages, taffybar, makeWrapper, packages ? (x: []) }:
let
taffybarEnv = ghcWithPackages (self: [
self.taffybar
] ++ packages self);
in stdenv.mkDerivation {
name = "taffybar-with-packages-${taffybarEnv.version}";
nativeBuildInputs = [ makeWrapper ];
buildCommand = ''
mkdir -p $out/bin
makeWrapper ${taffybarEnv}/bin/taffybar $out/bin/taffybar \
--set NIX_GHC "${taffybarEnv}/bin/ghc"
'';
# Trivial derivation
preferLocalBuild = true;
allowSubstitutes = false;
# For hacking purposes
passthru.env = taffybarEnv;
buildInputs = [ taffybarEnv ];
shellHook = "eval $(egrep ^export ${taffybarEnv}/bin/ghc)";
inherit (taffybar) meta;
}