nix-conf-xmonad/modules/xmonad/buildXmonad.nix

32 lines
908 B
Nix

# Create the xmonad.dhall end result with all the binaries resolved
#
# Use it as such: callPackage ./buildXmonad.nix {} ./xmonad.dhall { inherit teams; }
{ lib, xmonad-masser, dhallPackages, runCommand }:
path:
packages:
let
xmonadDeps = with dhallPackages;
buildDhallDirectoryPackage {
name = "xmonad-masser";
src = "${xmonad-masser}/share/x86_64-linux-ghc-8.10.7/xmonad-masser-0.1.0.0/dhall";
file = "package.dhall";
source = false;
document = false;
dependencies = [ (Prelude.overridePackage { file = "package.dhall"; }) ];
};
xmonadInput = runCommand "packages.dhall"
packages
''
substituteAll ${path} $out
'';
xmonadConfig = with dhallPackages; buildDhallPackage {
name = "xmonad.dhall";
code = xmonadInput;
dependencies = [ Prelude xmonadDeps ];
source = true;
};
in xmonadConfig