Use cabal2nix for flake expression
This commit is contained in:
parent
19a1aa26e4
commit
5a36ec328f
41
flake.nix
41
flake.nix
@ -3,33 +3,24 @@
|
||||
|
||||
outputs = { self, nixpkgs }:
|
||||
let
|
||||
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
||||
system = "x86_64-linux";
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
opium = pkgs.haskellPackages.developPackage {
|
||||
root = ./.;
|
||||
modifier = drv:
|
||||
pkgs.haskell.lib.addBuildTools drv [
|
||||
pkgs.cabal-install
|
||||
pkgs.haskellPackages.implicit-hie
|
||||
pkgs.haskell-language-server
|
||||
];
|
||||
};
|
||||
in {
|
||||
apps.x86_64-linux.cabal = {
|
||||
type = "app";
|
||||
program = "${nixpkgs.legacyPackages.x86_64-linux.cabal-install}/bin/cabal";
|
||||
packages.${system}.opium = pkgs.haskell.lib.overrideCabal opium {
|
||||
# Currently the tests require a running Postgres instance.
|
||||
# This is not automated yet, so don't export the tests.
|
||||
doCheck = false;
|
||||
};
|
||||
devShells.x86_64-linux.default = pkgs.mkShell {
|
||||
packages = [
|
||||
pkgs.cabal-install
|
||||
pkgs.haskellPackages.implicit-hie
|
||||
(pkgs.ghc.withPackages (hp: with hp; [
|
||||
attoparsec
|
||||
containers
|
||||
bytestring
|
||||
hspec
|
||||
postgresql-libpq
|
||||
text
|
||||
time
|
||||
transformers
|
||||
vector
|
||||
]))
|
||||
|
||||
pkgs.haskell-language-server
|
||||
];
|
||||
shellHook = ''
|
||||
PS1="<opium> ''${PS1}"
|
||||
'';
|
||||
};
|
||||
devShells.${system}.default = opium.env;
|
||||
};
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user