depot/third_party/nixpkgs/pkgs/development/haskell-modules/cabal2nix-unstable.nix

108 lines
1.9 KiB
Nix

# This file defines cabal2nix-unstable, used by maintainers/scripts/haskell/regenerate-hackage-packages.sh.
{
mkDerivation,
aeson,
ansi-wl-pprint,
base,
bytestring,
Cabal,
containers,
deepseq,
directory,
distribution-nixpkgs,
fetchzip,
filepath,
hackage-db,
hopenssl,
hpack,
language-nix,
lens,
lib,
monad-par,
monad-par-extras,
mtl,
optparse-applicative,
pretty,
process,
split,
tasty,
tasty-golden,
text,
time,
transformers,
yaml,
}:
mkDerivation {
pname = "cabal2nix";
version = "unstable-2024-12-04";
src = fetchzip {
url = "https://github.com/NixOS/cabal2nix/archive/af1bc25377f7a44e008def494bda77a83578d9be.tar.gz";
sha256 = "0jjsy77vm88x81a5pwq5nhgnbiywjza8qyjsr2kclsdh860m3hmp";
};
postUnpack = "sourceRoot+=/cabal2nix; echo source root reset to $sourceRoot";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
aeson
ansi-wl-pprint
base
bytestring
Cabal
containers
deepseq
directory
distribution-nixpkgs
filepath
hackage-db
hopenssl
hpack
language-nix
lens
optparse-applicative
pretty
process
split
text
time
transformers
yaml
];
executableHaskellDepends = [
aeson
base
bytestring
Cabal
containers
directory
distribution-nixpkgs
filepath
hopenssl
language-nix
lens
monad-par
monad-par-extras
mtl
optparse-applicative
pretty
];
testHaskellDepends = [
base
Cabal
containers
directory
filepath
language-nix
lens
pretty
process
tasty
tasty-golden
];
preCheck = ''
export PATH="$PWD/dist/build/cabal2nix:$PATH"
export HOME="$TMPDIR/home"
'';
homepage = "https://github.com/nixos/cabal2nix#readme";
description = "Convert Cabal files into Nix build instructions";
license = lib.licenses.bsd3;
}