Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
95 changes: 95 additions & 0 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

38 changes: 38 additions & 0 deletions flake.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
{
inputs = {
flake-utils.url = "github:numtide/flake-utils";
hdeps = {
url = "github:LightAndLight/hdeps";
inputs.flake-utils.follows = "flake-utils";
};
};
outputs = { self, nixpkgs, flake-utils, hdeps }:
{
overlays.default = final: prev: {
haskellPackages =
(prev.haskellPackages.extend (import ./nix/generated/overlay.nix)).extend (hfinal: hprev: {
hoogle = prev.haskell.lib.dontHaddock (hprev.callPackage ./hoogle.nix {});
});
};
} //
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = import nixpkgs { inherit system; };
in {
devShell = pkgs.mkShell {
buildInputs = with pkgs; [
# C
clang-tools clang gdb

# Haskell
ghc cabal-install haskell-language-server

# Project
just haskellPackages.fourmolu cabal2nix hdeps.packages.${system}.default haskellPackages.implicit-hie

zlib
];
};
}
);
}
2 changes: 1 addition & 1 deletion hoogle.cabal
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
cabal-version: 1.18
build-type: Simple
name: hoogle
version: 5.0.19.0
version: 5.0.20.0
license: BSD3
license-file: LICENSE
category: Development
Expand Down
34 changes: 34 additions & 0 deletions hoogle.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
{ mkDerivation, aeson, ansi-terminal, base, binary, blaze-html
, blaze-markup, bytestring, Cabal-syntax, cmdargs, conduit
, conduit-extra, containers, crypton-connection, data-default-class
, deepseq, directory, extra, filepath, ghc-lib-parser
, hackage-revdeps, hashable, haskell-src-exts, http-conduit
, http-types, js-flot, js-jquery, lib, mmap, old-locale
, process-extras, QuickCheck, resourcet, safe, storable-tuple, tar
, template-haskell, temporary, text, time, transformers, uniplate
, utf8-string, vector, wai, wai-logger, warp, warp-tls, zlib
}:
mkDerivation {
pname = "hoogle";
version = "5.0.20.0";
src = ./.;
isLibrary = true;
isExecutable = true;
enableSeparateDataOutput = true;
libraryHaskellDepends = [
aeson ansi-terminal base binary blaze-html blaze-markup bytestring
Cabal-syntax cmdargs conduit conduit-extra containers
crypton-connection data-default-class deepseq directory extra
filepath ghc-lib-parser hackage-revdeps hashable haskell-src-exts
http-conduit http-types js-flot js-jquery mmap old-locale
process-extras QuickCheck resourcet safe storable-tuple tar
template-haskell temporary text time transformers uniplate
utf8-string vector wai wai-logger warp warp-tls zlib
];
executableHaskellDepends = [ base ];
testFlags = [ "--no-net" ];
homepage = "https://hoogle.haskell.org/";
description = "Haskell API Search";
license = lib.licenses.bsd3;
mainProgram = "hoogle";
}
21 changes: 21 additions & 0 deletions nix/generated/hackage-revdeps/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{ mkDerivation, alfred-margaret, ansi-terminal, base, bytestring
, Cabal, cabal-install, Cabal-syntax, callPackage, containers
, filepath, lib, optparse-applicative, tar, text, time, zlib
}:
mkDerivation {
pname = "hackage-revdeps";
version = "0.3";
src = callPackage ./src.nix {};
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
alfred-margaret base bytestring Cabal-syntax containers filepath
tar text time zlib
];
executableHaskellDepends = [
ansi-terminal base Cabal cabal-install Cabal-syntax containers
filepath optparse-applicative time
];
description = "List Hackage reverse dependencies";
license = lib.licenses.bsd3;
}
5 changes: 5 additions & 0 deletions nix/generated/hackage-revdeps/src.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{ fetchzip }:
fetchzip {
url = "https://hackage.haskell.org/package/hackage-revdeps/hackage-revdeps-0.3.tar.gz";
sha256 = "1v4b7nb36hcz0wvi3qvrchzp09h26pbfky80m4m8yp4mnmg9wzrg";
}
3 changes: 3 additions & 0 deletions nix/generated/overlay.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
self: super: {
hackage-revdeps = self.callPackage ./hackage-revdeps {};
}
6 changes: 6 additions & 0 deletions nix/hdeps.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"hackage-revdeps": {
"type": "hackage",
"version": "0.3"
}
}
Loading