blob: 11c129badd646e9b2609ac985f0985f53f48b30c (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
{ lib, mkDerivation, fetchFromGitHub, standard-library }:
mkDerivation rec {
version = "0.2.0";
pname = "agda-categories";
src = fetchFromGitHub {
owner = "agda";
repo = "agda-categories";
rev = "v${version}";
sha256 = "sha256-GQuQxzYSQxAIVSJ1vf0blRC0juoxAqD1AHW66H/6NSk=";
};
postPatch = ''
# Remove this once agda-categories incorporates this fix or once Agda's
# versioning system gets an overhaul in general. Right now there is no middle
# ground between "no version constraint" and "exact match down to patch". We
# do not want to need to change this postPatch directive on each minor
# version update of the stdlib, so we get rid of the version constraint
# altogether.
sed -Ei 's/standard-library-[0-9.]+/standard-library/' agda-categories.agda-lib
# The Makefile of agda-categories uses git(1) instead of find(1) to
# determine the list of source files. We cannot use git, as $PWD will not
# be a valid Git working directory.
find src -name '*.agda' | sed -e 's|^src/[/]*|import |' -e 's|/|.|g' -e 's/.agda//' -e '/import Everything/d' | LC_COLLATE='C' sort > Everything.agda
'';
# agda: Heap exhausted;
# agda: Current maximum heap size is 4294967296 bytes (4096 MB).
GHCRTS = "-M5G";
buildInputs = [ standard-library ];
meta = with lib; {
inherit (src.meta) homepage;
description = "A new Categories library";
license = licenses.bsd3;
platforms = platforms.unix;
maintainers = with maintainers; [ alexarice turion ];
};
}
|