aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/agda.scm30
-rw-r--r--gnu/packages/patches/agda-categories-remove-incompatible-flags.patch31
-rw-r--r--gnu/packages/patches/agda-categories-use-find.patch31
4 files changed, 94 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 2da6c5d59f..9adf593318 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -885,6 +885,8 @@ dist_patch_DATA = \
%D%/packages/patches/aegisub-icu59-include-unistr.patch \
%D%/packages/patches/aegisub-boost68.patch \
%D%/packages/patches/aegisub-make43.patch \
+ %D%/packages/patches/agda-categories-remove-incompatible-flags.patch \
+ %D%/packages/patches/agda-categories-use-find.patch \
%D%/packages/patches/agda-libdirs-env-variable.patch \
%D%/packages/patches/agda-stdlib-use-runhaskell.patch \
%D%/packages/patches/agg-am_c_prototype.patch \
diff --git a/gnu/packages/agda.scm b/gnu/packages/agda.scm
index dd427bff02..16573e6d57 100644
--- a/gnu/packages/agda.scm
+++ b/gnu/packages/agda.scm
@@ -232,3 +232,33 @@ try agda-prelude instead.")
(home-page "https://wiki.portal.chalmers.se/agda/pmwiki.php")
(license license:expat)))
+(define-public agda-categories
+ (package
+ (name "agda-categories")
+ (version "0.1.7.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/agda/agda-categories.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0xwgm2mfl2pxipsv31bin8p14y1yhd9n27lv3clvsxd4z9yc034m"))
+ (patches (search-patches "agda-categories-remove-incompatible-flags.patch"
+ "agda-categories-use-find.patch"))))
+ (build-system agda-build-system)
+ (arguments
+ (list
+ #:gnu-and-haskell? #t
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'build
+ (lambda _
+ (invoke "make"))))))
+ (propagated-inputs
+ (list agda-stdlib))
+ (synopsis "New Categories library for Agda")
+ (description "A new Categories library for Agda")
+ (home-page "https://github.com/agda/agda-categories")
+ (license license:expat)))
diff --git a/gnu/packages/patches/agda-categories-remove-incompatible-flags.patch b/gnu/packages/patches/agda-categories-remove-incompatible-flags.patch
new file mode 100644
index 0000000000..dc33af7cf9
--- /dev/null
+++ b/gnu/packages/patches/agda-categories-remove-incompatible-flags.patch
@@ -0,0 +1,31 @@
+From 3d73d59617281c6ae9c19032eae381ff77fd2e65 Mon Sep 17 00:00:00 2001
+Message-Id: <3d73d59617281c6ae9c19032eae381ff77fd2e65.1682841188.git.dev@jpoiret.xyz>
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Sun, 30 Apr 2023 09:51:12 +0200
+Subject: [PATCH] Remove stdlib-incompatible flags
+
+From: Josselin Poiret <dev@jpoiret.xyz>
+
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 68846579..ba5923a2 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,6 +1,6 @@
+ .PHONY: test Everything.agda clean
+
+-OTHEROPTS = --auto-inline -Werror
++OTHEROPTS =
+
+ RTSARGS = +RTS -M6G -A128M -RTS ${OTHEROPTS}
+
+
+base-commit: 20397e93a60ed1439ed57ee76ae377c66a5eb8d9
+prerequisite-patch-id: da10df58fa86d08b31174a01db7b9a02377aba55
+prerequisite-patch-id: 508dabd923ba9ac1ee4d8dab6697432b4bd8ba18
+--
+2.39.2
+
diff --git a/gnu/packages/patches/agda-categories-use-find.patch b/gnu/packages/patches/agda-categories-use-find.patch
new file mode 100644
index 0000000000..772352a0cb
--- /dev/null
+++ b/gnu/packages/patches/agda-categories-use-find.patch
@@ -0,0 +1,31 @@
+From 53922aedd81d5111d9007b41235aa12eaa2a863d Mon Sep 17 00:00:00 2001
+Message-Id: <53922aedd81d5111d9007b41235aa12eaa2a863d.1682840933.git.dev@jpoiret.xyz>
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Sun, 30 Apr 2023 09:48:21 +0200
+Subject: [PATCH] Use find instead of git ls-tree in Makefile
+
+From: Josselin Poiret <dev@jpoiret.xyz>
+
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 158802d1..68846579 100644
+--- a/Makefile
++++ b/Makefile
+@@ -11,7 +11,7 @@ html: Everything.agda
+ agda ${RTSARGS} --html -i. Everything.agda
+
+ Everything.agda:
+- git ls-tree --full-tree -r --name-only HEAD | grep '^src/[^\.]*.agda' | sed -e 's|^src/[/]*|import |' -e 's|/|.|g' -e 's/.agda//' -e '/import Everything/d' | LC_COLLATE='C' sort > Everything.agda
++ find src -iname '*.agda' | sed -e 's|^src/[/]*|import |' -e 's|/|.|g' -e 's/.agda//' -e '/import Everything/d' | LC_COLLATE='C' sort > Everything.agda
+
+ clean:
+ find . -name '*.agdai' -exec rm \{\} \;
+
+base-commit: 20397e93a60ed1439ed57ee76ae377c66a5eb8d9
+prerequisite-patch-id: da10df58fa86d08b31174a01db7b9a02377aba55
+--
+2.39.2
+