voc-web/release.nix
2024-01-22 23:27:08 +10:00

36 lines
939 B
Nix

let sources = import ./nix/sources.nix;
in { compiler ? "ghc928", pkgs ? import sources.nixpkgs { } }:
let
inherit (pkgs.lib.trivial) flip pipe;
inherit (pkgs.haskell.lib) appendPatch appendConfigureFlags;
haskellPackages = pkgs.haskell.packages.${compiler}.override {
overrides = hpNew: hpOld: {
hakyll = pipe hpOld.hakyll [
(flip appendPatch ./hakyll.patch)
(flip appendConfigureFlags [ "-f" "watchServer" "-f" "previewServer" ])
];
voc-web = hpNew.callCabal2nix "voc-web" ./. { };
niv = import sources.niv { };
};
};
project = haskellPackages.voc-web;
in {
project = project;
shell = haskellPackages.shellFor {
packages = p: with p; [ project ];
buildInputs = with haskellPackages; [
ghcid # GHCi based IDE
hlint # or ormolu
pkgs.niv # Nix dependency management
pkgs.tea # Gitea official CLI client
];
withHoogle = true;
};
}