Use cabal2nix for flake expression

This commit is contained in:
Paul Brinkmeier 2024-06-25 22:30:15 +02:00
parent 19a1aa26e4
commit 5a36ec328f

View File

@ -3,33 +3,24 @@
outputs = { self, nixpkgs }: outputs = { self, nixpkgs }:
let let
pkgs = nixpkgs.legacyPackages.x86_64-linux; system = "x86_64-linux";
in { pkgs = nixpkgs.legacyPackages.${system};
apps.x86_64-linux.cabal = { opium = pkgs.haskellPackages.developPackage {
type = "app"; root = ./.;
program = "${nixpkgs.legacyPackages.x86_64-linux.cabal-install}/bin/cabal"; modifier = drv:
}; pkgs.haskell.lib.addBuildTools drv [
devShells.x86_64-linux.default = pkgs.mkShell {
packages = [
pkgs.cabal-install pkgs.cabal-install
pkgs.haskellPackages.implicit-hie pkgs.haskellPackages.implicit-hie
(pkgs.ghc.withPackages (hp: with hp; [
attoparsec
containers
bytestring
hspec
postgresql-libpq
text
time
transformers
vector
]))
pkgs.haskell-language-server pkgs.haskell-language-server
]; ];
shellHook = ''
PS1="<opium> ''${PS1}"
'';
}; };
in {
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.${system}.default = opium.env;
}; };
} }