* [bug#67921] [PATCH haskell-team 1/3] gnu: ghc-next: Update to version 9.4.8
@ 2023-12-20 7:10 Saku Laesvuori via Guix-patches via
2023-12-20 7:13 ` [bug#67921] [PATCH haskell-team 2/3] gnu: ghc: Use version 9.4.8 as the default Saku Laesvuori via Guix-patches via
` (4 more replies)
0 siblings, 5 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2023-12-20 7:10 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-9.4): Update to version 9.4.8.
[native-inputs]<ghc-testsuite>: Add a patch to fix the testsuite.
(ghc-happy-bootstrap-for-9.4): Update to version 1.20.1.1.
* gnu/packages/patches/ghc-9.4-testsuite-fixes.patch: New patch.
Change-Id: I5ef72f83e5feed1defb706bafa934077fda1553c
---
gnu/packages/haskell.scm | 11 +-
.../patches/ghc-9.4-testsuite-fixes.patch | 119 ++++++++++++++++++
2 files changed, 125 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 62815efbb1..88826fb31f 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1437,14 +1437,14 @@ (define ghc-happy-bootstrap-for-9.4
(hidden-package
(package
(name "ghc-happy")
- (version "1.20.0")
+ (version "1.20.1.1")
(source
(origin
(method url-fetch)
(uri (hackage-uri "happy" version))
(sha256
(base32
- "1346r2x5ravs5fqma65bzjragqbb2g6v41wz9maknwm2jf7kl79v"))))
+ "06w8g3lfk2ynrfhqznhp1mnp8a5b64lj6qviixpndzf5lv2psklb"))))
(build-system haskell-build-system)
(arguments
(list #:haskell ghc-bootstrap-for-9.4
@@ -1462,14 +1462,14 @@ (define-public ghc-9.4
(package
(inherit base)
(name "ghc-next")
- (version "9.4.4")
+ (version "9.4.8")
(source (origin
(method url-fetch)
(uri (string-append "https://www.haskell.org/ghc/dist/" version
"/ghc-" version "-src.tar.xz"))
(sha256
(base32
- "1qk7rlqf02s3b6m6sqqngmjq1mxnrz88h159lz6k25gddmdg5kp8"))))
+ "0pmqg9846lanb0hcyxhgr9ipzq33rfldxj7ln0j3qgpyczmhgx0b"))))
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:phases phases '%standard-phases)
@@ -1487,7 +1487,8 @@ (define-public ghc-9.4
version "/ghc-" version "-testsuite.tar.xz"))
(sha256
(base32
- "04p2lawxxg3nyv6frzhyjyh3arhqqyh5ka3alxa2pxhcd2hdcja3"))))
+ "159wsqnqpqb0pxa3zyhvyg07wxr2zz7v52h52wkplw4pn12dsidc"))
+ (patches (search-patches "ghc-9.4-testsuite-fixes.patch"))))
("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
,@(filter (match-lambda
diff --git a/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch b/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
new file mode 100644
index 0000000000..f394632add
--- /dev/null
+++ b/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
@@ -0,0 +1,119 @@
+From 3acd8aa948a27465cffc8e2ab56229485e2a5b98 Mon Sep 17 00:00:00 2001
+From: Saku Laesvuori <saku@laesvuori.fi>
+Date: Tue, 5 Dec 2023 22:49:45 +0200
+Subject: [PATCH] Fix tests
+
+* replaces egrep with grep -E
+* removes unnecessary escaping in some grep regular expressions
+* adds a missing include header to a makefile
+---
+ testsuite/tests/cabal/cabal01/Makefile | 2 +-
+ testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile | 4 ++++
+ testsuite/tests/haddock/perf/Makefile | 8 ++++----
+ testsuite/tests/hsc2hs/Makefile | 4 ++--
+ testsuite/tests/numeric/should_run/T7014.primops | 4 ++--
+ testsuite/tests/simplCore/should_compile/Makefile | 4 ++--
+ 6 files changed, 15 insertions(+), 11 deletions(-)
+
+diff --git a/testsuite/tests/cabal/cabal01/Makefile b/testsuite/tests/cabal/cabal01/Makefile
+index 004e4c75..6ec499c9 100644
+--- a/testsuite/tests/cabal/cabal01/Makefile
++++ b/testsuite/tests/cabal/cabal01/Makefile
+@@ -5,7 +5,7 @@ include $(TOP)/mk/test.mk
+ # Find all the env variables starting with CI_ to unset them.
+ # Otherwise, we might run into environment length limitations on Windows.
+ # (See `xargs --show-limits`.)
+-VARS_TO_UNSET := $(shell env | grep ^CI_ | egrep -o '^[^=]+')
++VARS_TO_UNSET := $(shell env | grep ^CI_ | grep -E -o '^[^=]+')
+ unexport $(VARS_TO_UNSET)
+
+ clean:
+diff --git a/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile b/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
+index fd64d23f..cb669db3 100644
+--- a/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
++++ b/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
+@@ -1,3 +1,7 @@
++TOP=../../../..
++include $(TOP)/mk/boilerplate.mk
++include $(TOP)/mk/test.mk
++
+ .PHONY: GHCiPrimCall
+ GHCiPrimCall:
+ '$(TEST_HC)' $(TEST_HC_OPTS) -fPIC -v0 -c GHCiPrimCall_cmm.cmm
+diff --git a/testsuite/tests/haddock/perf/Makefile b/testsuite/tests/haddock/perf/Makefile
+index b67b52f2..ff2f7ebb 100644
+--- a/testsuite/tests/haddock/perf/Makefile
++++ b/testsuite/tests/haddock/perf/Makefile
+@@ -4,12 +4,12 @@ include $(TOP)/mk/test.mk
+
+ # We accept a 5% increase in parser allocations due to -haddock
+ haddock_parser_perf :
+- WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Parser | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
+- WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Parser | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Parser | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Parser | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
+ awk "BEGIN { ratio = ($$WithHaddock / $$WithoutHaddock); if (ratio > 1.05) {print \"-haddock allocation ratio too high:\", ratio; exit 1} else {exit 0} }"
+
+ # Similarly for the renamer
+ haddock_renamer_perf :
+- WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Renamer | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
+- WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Renamer | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Renamer | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Renamer | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
+ awk "BEGIN { ratio = ($$WithHaddock / $$WithoutHaddock); if (ratio > 1.05) {print \"-haddock allocation ratio too high:\", ratio; exit 1} else {exit 0} }"
+diff --git a/testsuite/tests/hsc2hs/Makefile b/testsuite/tests/hsc2hs/Makefile
+index d0b2d249..95b011c8 100644
+--- a/testsuite/tests/hsc2hs/Makefile
++++ b/testsuite/tests/hsc2hs/Makefile
+@@ -52,9 +52,9 @@ T11004:
+ T12504:
+ '$(HSC2HS)' $(HSC2HS_OPTS) T12504/path/to/$@.hsc
+ ifeq "$(WINDOWS)" "YES"
+- grep '{-# LINE 1 \"T12504\\\\path\\\\to\\\\$@\.hsc\" #-}' T12504/path/to/$@.hs
++ grep '{-# LINE 1 "T12504\\\\path\\\\to\\\\$@\.hsc" #-}' T12504/path/to/$@.hs
+ else
+- grep '{-# LINE 1 \"T12504/path/to/$@\.hsc\" #-}' T12504/path/to/$@.hs
++ grep '{-# LINE 1 "T12504/path/to/$@\.hsc" #-}' T12504/path/to/$@.hs
+ endif
+
+ .PHONY: T15758
+diff --git a/testsuite/tests/numeric/should_run/T7014.primops b/testsuite/tests/numeric/should_run/T7014.primops
+index 3243666d..c807fb45 100644
+--- a/testsuite/tests/numeric/should_run/T7014.primops
++++ b/testsuite/tests/numeric/should_run/T7014.primops
+@@ -1,8 +1,8 @@
+ and#
+ or#
+ uncheckedShift.*#
+-\+#
+-\-#
+++#
++-#
+ \*#
+ quotInt#
+ remInt#
+diff --git a/testsuite/tests/simplCore/should_compile/Makefile b/testsuite/tests/simplCore/should_compile/Makefile
+index b5041800..c56e04f6 100644
+--- a/testsuite/tests/simplCore/should_compile/Makefile
++++ b/testsuite/tests/simplCore/should_compile/Makefile
+@@ -66,7 +66,7 @@ T13367:
+
+ T8832:
+ $(RM) -f T8832.o T8832.hi
+- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c -ddump-simpl -dsuppress-ticks T8832.hs | egrep '^[a-zA-Z0-9]+ ='
++ '$(TEST_HC)' $(TEST_HC_OPTS) -O -c -ddump-simpl -dsuppress-ticks T8832.hs | grep -E '^[a-zA-Z0-9]+ ='
+
+ T12603:
+ $(RM) -f T12603.o T12603.hi
+@@ -259,7 +259,7 @@ str-rules:
+ # g should have been collapsed into one defininition by CSE.
+ .PHONY: T13340
+ T13340:
+- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T13340.hs -ddump-simpl -dsuppress-all | grep -c '\+#'
++ '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T13340.hs -ddump-simpl -dsuppress-all | grep -c '+#'
+
+
+ # We expect to see all dictionaries specialized away.
+--
+2.41.0
+
base-commit: dc2b59ddc1e8f510935777db40e881896f7a0cab
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 2/3] gnu: ghc: Use version 9.4.8 as the default
2023-12-20 7:10 [bug#67921] [PATCH haskell-team 1/3] gnu: ghc-next: Update to version 9.4.8 Saku Laesvuori via Guix-patches via
@ 2023-12-20 7:13 ` Saku Laesvuori via Guix-patches via
2023-12-22 10:07 ` Lars-Dominik Braun
2023-12-20 7:13 ` [bug#67921] [PATCH haskell-team 3/3] guix: haskell-build-system: Hide dependecies from ghc's package db Saku Laesvuori via Guix-patches via
` (3 subsequent siblings)
4 siblings, 1 reply; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2023-12-20 7:13 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-9.4): Rename from ghc-next to ghc.
(ghc): Redefine as ghc-9.4 instead of ghc-9.2.
Change-Id: I5696907ea6e2fac656d21d68c2ac89d549767ec2
---
gnu/packages/haskell.scm | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 88826fb31f..ebe5bc6dc8 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1392,12 +1392,6 @@ (define-public ghc-9.2
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
-;; Versions newer than ghc defined below (i.e. the compiler
-;; haskell-build-system uses) should use ghc-next as their name to
-;; ensure ghc (without version specification) and ghc-* packages are
-;; always compatible. See https://issues.guix.gnu.org/issue/47335.
-(define-public ghc ghc-9.2)
-
;; 9.4 is the last version to support the make-based build system,
;; but it boot with 9.2, only 9.0 is supported.
(define ghc-bootstrap-for-9.4 ghc-9.0)
@@ -1461,7 +1455,7 @@ (define-public ghc-9.4
(let ((base ghc-9.2))
(package
(inherit base)
- (name "ghc-next")
+ (name "ghc")
(version "9.4.8")
(source (origin
(method url-fetch)
@@ -1503,4 +1497,10 @@ (define-public ghc-9.4
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
+;; Versions newer than ghc defined below (i.e. the compiler
+;; haskell-build-system uses) should use ghc-next as their name to
+;; ensure ghc (without version specification) and ghc-* packages are
+;; always compatible. See https://issues.guix.gnu.org/issue/47335.
+(define-public ghc ghc-9.4)
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 3/3] guix: haskell-build-system: Hide dependecies from ghc's package db
2023-12-20 7:10 [bug#67921] [PATCH haskell-team 1/3] gnu: ghc-next: Update to version 9.4.8 Saku Laesvuori via Guix-patches via
2023-12-20 7:13 ` [bug#67921] [PATCH haskell-team 2/3] gnu: ghc: Use version 9.4.8 as the default Saku Laesvuori via Guix-patches via
@ 2023-12-20 7:13 ` Saku Laesvuori via Guix-patches via
2024-01-06 18:42 ` Lars-Dominik Braun
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (2 subsequent siblings)
4 siblings, 1 reply; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2023-12-20 7:13 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
A Haskell package P contains information about all other haskell
packages P_n it depends on. This commit hides the packages P_n in the
package database stored in P, which enables being explicit about which
haskell packages one wants to be visible in their profile.
* guix/build/haskell-build-system.scm
(register)[install-transitive-deps]: Set the 'exposed' field to False in
the dependencies' .conf files. Remove a comment about symlinking because
the copied files are now modified.
Fixes: https://issues.guix.gnu.org/66347
Change-Id: I66332cd49e6036689873d9435036c9f876216f1b
---
guix/build/haskell-build-system.scm | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/guix/build/haskell-build-system.scm b/guix/build/haskell-build-system.scm
index 0e94cf59a5..83c742427a 100644
--- a/guix/build/haskell-build-system.scm
+++ b/guix/build/haskell-build-system.scm
@@ -214,7 +214,10 @@ (define* (register #:key name system inputs outputs #:allow-other-keys)
(unless dep-conf*-exists?
(unless dep-conf-exists?
(error (format #f "File ~a does not exist. This usually means the dependency ~a is missing. Was checking conf-file ~a." dep-conf id conf-file)))
- (copy-file dep-conf dep-conf*)) ;XXX: maybe symlink instead?
+ (copy-file dep-conf dep-conf*)
+ (substitute* dep-conf*
+ (("(exposed:[ \t]*)True" _ field)
+ (string-append field "False"))))
(loop (vhash-cons id #t seen) next-tail))
(loop seen tail))))))
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 2/3] gnu: ghc: Use version 9.4.8 as the default
2023-12-20 7:13 ` [bug#67921] [PATCH haskell-team 2/3] gnu: ghc: Use version 9.4.8 as the default Saku Laesvuori via Guix-patches via
@ 2023-12-22 10:07 ` Lars-Dominik Braun
2023-12-22 10:33 ` Saku Laesvuori via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Lars-Dominik Braun @ 2023-12-22 10:07 UTC (permalink / raw)
To: Saku Laesvuori; +Cc: 67921
Hi,
> * gnu/packages/haskell.scm (ghc-9.4): Rename from ghc-next to ghc.
why 9.4 and not 9.6? Stackage 22.0 for 9.6 has just been released and
if we go for a big upgrade (you’ll have to update the entire Haskell
ecosystem if you update GHC), we might as well just make the jump to
GHC 9.6 and Stackage 22.0.
Lars
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 2/3] gnu: ghc: Use version 9.4.8 as the default
2023-12-22 10:07 ` Lars-Dominik Braun
@ 2023-12-22 10:33 ` Saku Laesvuori via Guix-patches via
2023-12-22 11:03 ` Lars-Dominik Braun
0 siblings, 1 reply; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2023-12-22 10:33 UTC (permalink / raw)
To: Lars-Dominik Braun; +Cc: 67921
[-- Attachment #1: Type: text/plain, Size: 1206 bytes --]
> Hi,
>
> > * gnu/packages/haskell.scm (ghc-9.4): Rename from ghc-next to ghc.
>
> why 9.4 and not 9.6? Stackage 22.0 for 9.6 has just been released and
> if we go for a big upgrade (you’ll have to update the entire Haskell
> ecosystem if you update GHC), we might as well just make the jump to
> GHC 9.6 and Stackage 22.0.
Because I wrote that patch when there wasn't yet a Stackage release for
ghc 9.6. But if a stackage release for it has now been released I'll try
updating it to 9.6.
Regarding the big upgrade, I have been wondering how could the cabal
revisions be updated automatically. Is there a simpler way than to
1. include a procedure for editing the declaration in the <upstream-updater>
2. refactor the entire updater code to use that procedure
3. implement completely new logic for adding fields to package definitions?
That seems like a lot of work in code that I don't know all that well.
Is there some reason why the revision is not part of the package
version? Moving it there would probably be much easier than modifying
guix refresh (but then again, if those modifications should be done
anyway it doesn't really reduce the amount of work)
- Saku
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 2/3] gnu: ghc: Use version 9.4.8 as the default
2023-12-22 10:33 ` Saku Laesvuori via Guix-patches via
@ 2023-12-22 11:03 ` Lars-Dominik Braun
0 siblings, 0 replies; 123+ messages in thread
From: Lars-Dominik Braun @ 2023-12-22 11:03 UTC (permalink / raw)
To: Saku Laesvuori; +Cc: 67921
[-- Attachment #1: Type: text/plain, Size: 1174 bytes --]
Hi Saku,
> Because I wrote that patch when there wasn't yet a Stackage release for
> ghc 9.6. But if a stackage release for it has now been released I'll try
> updating it to 9.6.
oh, I see. I believe 9.6 drops the Makefile-based build-system, making
it a slightly more involved upgrade.
> Regarding the big upgrade, I have been wondering how could the cabal
> revisions be updated automatically.
I’ve been using the script attached, which basically overwrites the
entire package, except for synopsis and description.
> Is there some reason why the revision is not part of the package
> version?
I don’t know.
> Moving it there would probably be much easier than modifying
> guix refresh (but then again, if those modifications should be done
> anyway it doesn't really reduce the amount of work)
The thing is that we still need the cabal file hash somewhere and it
needs to be updated. My idea was to create a new HACKAGE-URI procedure,
which accepts package name, version, revision and cabal file hash and
add some black magic to combine the new cabal file with the tarball from
hackage. Code exists for this, but I’ve never been able to finalize it.
Lars
[-- Attachment #2: haskell-update.scm --]
[-- Type: application/vnd.lotus-screencam, Size: 8688 bytes --]
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 3/3] guix: haskell-build-system: Hide dependecies from ghc's package db
2023-12-20 7:13 ` [bug#67921] [PATCH haskell-team 3/3] guix: haskell-build-system: Hide dependecies from ghc's package db Saku Laesvuori via Guix-patches via
@ 2024-01-06 18:42 ` Lars-Dominik Braun
2024-01-08 7:09 ` Saku Laesvuori via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Lars-Dominik Braun @ 2024-01-06 18:42 UTC (permalink / raw)
To: Saku Laesvuori; +Cc: 67921
Hi,
> A Haskell package P contains information about all other haskell
> packages P_n it depends on. This commit hides the packages P_n in the
> package database stored in P, which enables being explicit about which
> haskell packages one wants to be visible in their profile.
oddly enough this patch causes the 'check phase of ghc-doctest to
not finish/hang. Any idea why?
Cheers,
Lars
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 3/3] guix: haskell-build-system: Hide dependecies from ghc's package db
2024-01-06 18:42 ` Lars-Dominik Braun
@ 2024-01-08 7:09 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-01-08 7:09 UTC (permalink / raw)
To: Lars-Dominik Braun; +Cc: 67921
[-- Attachment #1: Type: text/plain, Size: 467 bytes --]
> Hi,
>
> > A Haskell package P contains information about all other haskell
> > packages P_n it depends on. This commit hides the packages P_n in the
> > package database stored in P, which enables being explicit about which
> > haskell packages one wants to be visible in their profile.
>
> oddly enough this patch causes the 'check phase of ghc-doctest to
> not finish/hang. Any idea why?
No idea, I'll look into it more when I get GHC 9.6 packaged.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [WIP PATCH v2 00/23] Update GHC to 9.6.4
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
This series
- updates ghc-next to 9.4.8
- adds bootstrap dependencies for Hadrian (ghc-9.6 build system)
- adds ghc-9.6
- changes the default ghc to ghc-9.6.
The compiler seems to work (I have built some haskell packages with it
after running `guix refresh` and disabling it's tests) but some tests
fail with weird errors like the following:
```
ld: cannot find \: No such file or directory
ld: cannot find \: No such file or directory
ld: cannot find spaces/testsuite/tests/backpack/cabal/T16219/T16219.run/dist/build/library-a-impl: No such file or directory
collect2: error: ld returned 1 exit status
`gcc' failed in phase `Linker'. (Exit code: 1)
make: *** [Makefile:12: T16219] Error 1
```
Something seems to be failing due to the tests being run in
'/tmp/guix-build-ghc-9.6.4.drv-0/ghctest-lgjqumae/test spaces/testsuite/...'
but I can't figure out what it is. I've tried tracing the tests and it
seems that ld is called with arguments '/tmp/.../test' '\' '\' 'spaces/...'
which obviously can't work, but I could not pin down where the escaping
fails. This happens with just ~40 out of almost 10 000 tests which makes
it even more confusing.
Any ideas what could be causing the failures or should I just try
disabling those tests?
I also noticed that hidden packages shadow other packages, for example
the hidden base package from any haskell package can shadow the exposed
version from ghc. I guess I'll try implementing a fix for
https://issues.guix.gnu.org/66347 by adding a new profile hook that
creates a package environment[1] for ghc.
[2]: https://ghc.gitlab.haskell.org/ghc/doc/users_guide/packages.html#package-environments
Saku Laesvuori (23):
gnu: ghc-next: Update to version 9.4.8
gnu: Add ghc-js-flot-bootstrap-for-9.6
gnu: Add ghc-clock-bootstrap-for-9.6
gnu: Add ghc-extra-bootstrap-for-9.6
gnu: Add ghc-hashable-bootstrap-for-9.6
gnu: Add ghc-splitmix-bootstrap-for-9.6
gnu: Add ghc-random-bootstrap-for-9.6
gnu: Add ghc-primitive-bootstrap-for-9.6
gnu: Add ghc-js-jquery-bootstrap-for-9.6
gnu: Add ghc-utf8-string-bootstrap-for-9.6
gnu: Add ghc-heaps-bootstrap-for-9.6
gnu: Add ghc-js-dgtable-bootstrap-for-9.6
gnu: Add ghc-nats-bootstrap-for-9.6
gnu: Add ghc-tagged-bootstrap-for-9.6
gnu: Add ghc-semigroups-bootstrap-for-9.6
gnu: Add ghc-base16-bytestring-bootstrap-for-9.6
gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6
gnu: Add ghc-unordered-containers-bootstrap-for-9.6
gnu: Add ghc-filepattern-bootstrap-for-9.6
gnu: Add ghc-shake-bootstrap-for-9.6
gnu: Add hadrian-for-ghc-9.6
gnu: Add ghc-9.6
gnu: ghc: Update to version 9.6.4
gnu/packages/haskell.scm | 686 +++++++++++++++++-
.../patches/ghc-9.4-testsuite-fixes.patch | 119 +++
2 files changed, 792 insertions(+), 13 deletions(-)
create mode 100644 gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
base-commit: f2102cb5b9239be2ed2023b908b726af542e0124
--
2.41.0
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#69154] [WIP PATCH v2 00/23] Update GHC to 9.6.4
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69154, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
This series
- updates ghc-next to 9.4.8
- adds bootstrap dependencies for Hadrian (ghc-9.6 build system)
- adds ghc-9.6
- changes the default ghc to ghc-9.6.
The compiler seems to work (I have built some haskell packages with it
after running `guix refresh` and disabling it's tests) but some tests
fail with weird errors like the following:
```
ld: cannot find \: No such file or directory
ld: cannot find \: No such file or directory
ld: cannot find spaces/testsuite/tests/backpack/cabal/T16219/T16219.run/dist/build/library-a-impl: No such file or directory
collect2: error: ld returned 1 exit status
`gcc' failed in phase `Linker'. (Exit code: 1)
make: *** [Makefile:12: T16219] Error 1
```
Something seems to be failing due to the tests being run in
'/tmp/guix-build-ghc-9.6.4.drv-0/ghctest-lgjqumae/test spaces/testsuite/...'
but I can't figure out what it is. I've tried tracing the tests and it
seems that ld is called with arguments '/tmp/.../test' '\' '\' 'spaces/...'
which obviously can't work, but I could not pin down where the escaping
fails. This happens with just ~40 out of almost 10 000 tests which makes
it even more confusing.
Any ideas what could be causing the failures or should I just try
disabling those tests?
I also noticed that hidden packages shadow other packages, for example
the hidden base package from any haskell package can shadow the exposed
version from ghc. I guess I'll try implementing a fix for
https://issues.guix.gnu.org/66347 by adding a new profile hook that
creates a package environment[1] for ghc.
[2]: https://ghc.gitlab.haskell.org/ghc/doc/users_guide/packages.html#package-environments
Saku Laesvuori (23):
gnu: ghc-next: Update to version 9.4.8
gnu: Add ghc-js-flot-bootstrap-for-9.6
gnu: Add ghc-clock-bootstrap-for-9.6
gnu: Add ghc-extra-bootstrap-for-9.6
gnu: Add ghc-hashable-bootstrap-for-9.6
gnu: Add ghc-splitmix-bootstrap-for-9.6
gnu: Add ghc-random-bootstrap-for-9.6
gnu: Add ghc-primitive-bootstrap-for-9.6
gnu: Add ghc-js-jquery-bootstrap-for-9.6
gnu: Add ghc-utf8-string-bootstrap-for-9.6
gnu: Add ghc-heaps-bootstrap-for-9.6
gnu: Add ghc-js-dgtable-bootstrap-for-9.6
gnu: Add ghc-nats-bootstrap-for-9.6
gnu: Add ghc-tagged-bootstrap-for-9.6
gnu: Add ghc-semigroups-bootstrap-for-9.6
gnu: Add ghc-base16-bytestring-bootstrap-for-9.6
gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6
gnu: Add ghc-unordered-containers-bootstrap-for-9.6
gnu: Add ghc-filepattern-bootstrap-for-9.6
gnu: Add ghc-shake-bootstrap-for-9.6
gnu: Add hadrian-for-ghc-9.6
gnu: Add ghc-9.6
gnu: ghc: Update to version 9.6.4
gnu/packages/haskell.scm | 686 +++++++++++++++++-
.../patches/ghc-9.4-testsuite-fixes.patch | 119 +++
2 files changed, 792 insertions(+), 13 deletions(-)
create mode 100644 gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
base-commit: f2102cb5b9239be2ed2023b908b726af542e0124
--
2.41.0
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 01/23] gnu: ghc-next: Update to version 9.4.8
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-9.4): Update to version 9.4.8.
[native-inputs]<ghc-testsuite>: Add a patch to fix the testsuite.
(ghc-happy-bootstrap-for-9.4): Update to version 1.20.1.1.
* gnu/packages/patches/ghc-9.4-testsuite-fixes.patch: New patch.
Change-Id: I5ef72f83e5feed1defb706bafa934077fda1553c
---
gnu/packages/haskell.scm | 11 +-
.../patches/ghc-9.4-testsuite-fixes.patch | 119 ++++++++++++++++++
2 files changed, 125 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 62815efbb1..88826fb31f 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1437,14 +1437,14 @@ (define ghc-happy-bootstrap-for-9.4
(hidden-package
(package
(name "ghc-happy")
- (version "1.20.0")
+ (version "1.20.1.1")
(source
(origin
(method url-fetch)
(uri (hackage-uri "happy" version))
(sha256
(base32
- "1346r2x5ravs5fqma65bzjragqbb2g6v41wz9maknwm2jf7kl79v"))))
+ "06w8g3lfk2ynrfhqznhp1mnp8a5b64lj6qviixpndzf5lv2psklb"))))
(build-system haskell-build-system)
(arguments
(list #:haskell ghc-bootstrap-for-9.4
@@ -1462,14 +1462,14 @@ (define-public ghc-9.4
(package
(inherit base)
(name "ghc-next")
- (version "9.4.4")
+ (version "9.4.8")
(source (origin
(method url-fetch)
(uri (string-append "https://www.haskell.org/ghc/dist/" version
"/ghc-" version "-src.tar.xz"))
(sha256
(base32
- "1qk7rlqf02s3b6m6sqqngmjq1mxnrz88h159lz6k25gddmdg5kp8"))))
+ "0pmqg9846lanb0hcyxhgr9ipzq33rfldxj7ln0j3qgpyczmhgx0b"))))
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:phases phases '%standard-phases)
@@ -1487,7 +1487,8 @@ (define-public ghc-9.4
version "/ghc-" version "-testsuite.tar.xz"))
(sha256
(base32
- "04p2lawxxg3nyv6frzhyjyh3arhqqyh5ka3alxa2pxhcd2hdcja3"))))
+ "159wsqnqpqb0pxa3zyhvyg07wxr2zz7v52h52wkplw4pn12dsidc"))
+ (patches (search-patches "ghc-9.4-testsuite-fixes.patch"))))
("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
,@(filter (match-lambda
diff --git a/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch b/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
new file mode 100644
index 0000000000..f394632add
--- /dev/null
+++ b/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
@@ -0,0 +1,119 @@
+From 3acd8aa948a27465cffc8e2ab56229485e2a5b98 Mon Sep 17 00:00:00 2001
+From: Saku Laesvuori <saku@laesvuori.fi>
+Date: Tue, 5 Dec 2023 22:49:45 +0200
+Subject: [PATCH] Fix tests
+
+* replaces egrep with grep -E
+* removes unnecessary escaping in some grep regular expressions
+* adds a missing include header to a makefile
+---
+ testsuite/tests/cabal/cabal01/Makefile | 2 +-
+ testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile | 4 ++++
+ testsuite/tests/haddock/perf/Makefile | 8 ++++----
+ testsuite/tests/hsc2hs/Makefile | 4 ++--
+ testsuite/tests/numeric/should_run/T7014.primops | 4 ++--
+ testsuite/tests/simplCore/should_compile/Makefile | 4 ++--
+ 6 files changed, 15 insertions(+), 11 deletions(-)
+
+diff --git a/testsuite/tests/cabal/cabal01/Makefile b/testsuite/tests/cabal/cabal01/Makefile
+index 004e4c75..6ec499c9 100644
+--- a/testsuite/tests/cabal/cabal01/Makefile
++++ b/testsuite/tests/cabal/cabal01/Makefile
+@@ -5,7 +5,7 @@ include $(TOP)/mk/test.mk
+ # Find all the env variables starting with CI_ to unset them.
+ # Otherwise, we might run into environment length limitations on Windows.
+ # (See `xargs --show-limits`.)
+-VARS_TO_UNSET := $(shell env | grep ^CI_ | egrep -o '^[^=]+')
++VARS_TO_UNSET := $(shell env | grep ^CI_ | grep -E -o '^[^=]+')
+ unexport $(VARS_TO_UNSET)
+
+ clean:
+diff --git a/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile b/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
+index fd64d23f..cb669db3 100644
+--- a/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
++++ b/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
+@@ -1,3 +1,7 @@
++TOP=../../../..
++include $(TOP)/mk/boilerplate.mk
++include $(TOP)/mk/test.mk
++
+ .PHONY: GHCiPrimCall
+ GHCiPrimCall:
+ '$(TEST_HC)' $(TEST_HC_OPTS) -fPIC -v0 -c GHCiPrimCall_cmm.cmm
+diff --git a/testsuite/tests/haddock/perf/Makefile b/testsuite/tests/haddock/perf/Makefile
+index b67b52f2..ff2f7ebb 100644
+--- a/testsuite/tests/haddock/perf/Makefile
++++ b/testsuite/tests/haddock/perf/Makefile
+@@ -4,12 +4,12 @@ include $(TOP)/mk/test.mk
+
+ # We accept a 5% increase in parser allocations due to -haddock
+ haddock_parser_perf :
+- WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Parser | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
+- WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Parser | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Parser | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Parser | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
+ awk "BEGIN { ratio = ($$WithHaddock / $$WithoutHaddock); if (ratio > 1.05) {print \"-haddock allocation ratio too high:\", ratio; exit 1} else {exit 0} }"
+
+ # Similarly for the renamer
+ haddock_renamer_perf :
+- WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Renamer | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
+- WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Renamer | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Renamer | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Renamer | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
+ awk "BEGIN { ratio = ($$WithHaddock / $$WithoutHaddock); if (ratio > 1.05) {print \"-haddock allocation ratio too high:\", ratio; exit 1} else {exit 0} }"
+diff --git a/testsuite/tests/hsc2hs/Makefile b/testsuite/tests/hsc2hs/Makefile
+index d0b2d249..95b011c8 100644
+--- a/testsuite/tests/hsc2hs/Makefile
++++ b/testsuite/tests/hsc2hs/Makefile
+@@ -52,9 +52,9 @@ T11004:
+ T12504:
+ '$(HSC2HS)' $(HSC2HS_OPTS) T12504/path/to/$@.hsc
+ ifeq "$(WINDOWS)" "YES"
+- grep '{-# LINE 1 \"T12504\\\\path\\\\to\\\\$@\.hsc\" #-}' T12504/path/to/$@.hs
++ grep '{-# LINE 1 "T12504\\\\path\\\\to\\\\$@\.hsc" #-}' T12504/path/to/$@.hs
+ else
+- grep '{-# LINE 1 \"T12504/path/to/$@\.hsc\" #-}' T12504/path/to/$@.hs
++ grep '{-# LINE 1 "T12504/path/to/$@\.hsc" #-}' T12504/path/to/$@.hs
+ endif
+
+ .PHONY: T15758
+diff --git a/testsuite/tests/numeric/should_run/T7014.primops b/testsuite/tests/numeric/should_run/T7014.primops
+index 3243666d..c807fb45 100644
+--- a/testsuite/tests/numeric/should_run/T7014.primops
++++ b/testsuite/tests/numeric/should_run/T7014.primops
+@@ -1,8 +1,8 @@
+ and#
+ or#
+ uncheckedShift.*#
+-\+#
+-\-#
+++#
++-#
+ \*#
+ quotInt#
+ remInt#
+diff --git a/testsuite/tests/simplCore/should_compile/Makefile b/testsuite/tests/simplCore/should_compile/Makefile
+index b5041800..c56e04f6 100644
+--- a/testsuite/tests/simplCore/should_compile/Makefile
++++ b/testsuite/tests/simplCore/should_compile/Makefile
+@@ -66,7 +66,7 @@ T13367:
+
+ T8832:
+ $(RM) -f T8832.o T8832.hi
+- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c -ddump-simpl -dsuppress-ticks T8832.hs | egrep '^[a-zA-Z0-9]+ ='
++ '$(TEST_HC)' $(TEST_HC_OPTS) -O -c -ddump-simpl -dsuppress-ticks T8832.hs | grep -E '^[a-zA-Z0-9]+ ='
+
+ T12603:
+ $(RM) -f T12603.o T12603.hi
+@@ -259,7 +259,7 @@ str-rules:
+ # g should have been collapsed into one defininition by CSE.
+ .PHONY: T13340
+ T13340:
+- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T13340.hs -ddump-simpl -dsuppress-all | grep -c '\+#'
++ '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T13340.hs -ddump-simpl -dsuppress-all | grep -c '+#'
+
+
+ # We expect to see all dictionaries specialized away.
+--
+2.41.0
+
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69144] [PATCH v2 01/23] gnu: ghc-next: Update to version 9.4.8
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69144, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-9.4): Update to version 9.4.8.
[native-inputs]<ghc-testsuite>: Add a patch to fix the testsuite.
(ghc-happy-bootstrap-for-9.4): Update to version 1.20.1.1.
* gnu/packages/patches/ghc-9.4-testsuite-fixes.patch: New patch.
Change-Id: I5ef72f83e5feed1defb706bafa934077fda1553c
---
gnu/packages/haskell.scm | 11 +-
.../patches/ghc-9.4-testsuite-fixes.patch | 119 ++++++++++++++++++
2 files changed, 125 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 62815efbb1..88826fb31f 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1437,14 +1437,14 @@ (define ghc-happy-bootstrap-for-9.4
(hidden-package
(package
(name "ghc-happy")
- (version "1.20.0")
+ (version "1.20.1.1")
(source
(origin
(method url-fetch)
(uri (hackage-uri "happy" version))
(sha256
(base32
- "1346r2x5ravs5fqma65bzjragqbb2g6v41wz9maknwm2jf7kl79v"))))
+ "06w8g3lfk2ynrfhqznhp1mnp8a5b64lj6qviixpndzf5lv2psklb"))))
(build-system haskell-build-system)
(arguments
(list #:haskell ghc-bootstrap-for-9.4
@@ -1462,14 +1462,14 @@ (define-public ghc-9.4
(package
(inherit base)
(name "ghc-next")
- (version "9.4.4")
+ (version "9.4.8")
(source (origin
(method url-fetch)
(uri (string-append "https://www.haskell.org/ghc/dist/" version
"/ghc-" version "-src.tar.xz"))
(sha256
(base32
- "1qk7rlqf02s3b6m6sqqngmjq1mxnrz88h159lz6k25gddmdg5kp8"))))
+ "0pmqg9846lanb0hcyxhgr9ipzq33rfldxj7ln0j3qgpyczmhgx0b"))))
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:phases phases '%standard-phases)
@@ -1487,7 +1487,8 @@ (define-public ghc-9.4
version "/ghc-" version "-testsuite.tar.xz"))
(sha256
(base32
- "04p2lawxxg3nyv6frzhyjyh3arhqqyh5ka3alxa2pxhcd2hdcja3"))))
+ "159wsqnqpqb0pxa3zyhvyg07wxr2zz7v52h52wkplw4pn12dsidc"))
+ (patches (search-patches "ghc-9.4-testsuite-fixes.patch"))))
("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
,@(filter (match-lambda
diff --git a/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch b/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
new file mode 100644
index 0000000000..f394632add
--- /dev/null
+++ b/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
@@ -0,0 +1,119 @@
+From 3acd8aa948a27465cffc8e2ab56229485e2a5b98 Mon Sep 17 00:00:00 2001
+From: Saku Laesvuori <saku@laesvuori.fi>
+Date: Tue, 5 Dec 2023 22:49:45 +0200
+Subject: [PATCH] Fix tests
+
+* replaces egrep with grep -E
+* removes unnecessary escaping in some grep regular expressions
+* adds a missing include header to a makefile
+---
+ testsuite/tests/cabal/cabal01/Makefile | 2 +-
+ testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile | 4 ++++
+ testsuite/tests/haddock/perf/Makefile | 8 ++++----
+ testsuite/tests/hsc2hs/Makefile | 4 ++--
+ testsuite/tests/numeric/should_run/T7014.primops | 4 ++--
+ testsuite/tests/simplCore/should_compile/Makefile | 4 ++--
+ 6 files changed, 15 insertions(+), 11 deletions(-)
+
+diff --git a/testsuite/tests/cabal/cabal01/Makefile b/testsuite/tests/cabal/cabal01/Makefile
+index 004e4c75..6ec499c9 100644
+--- a/testsuite/tests/cabal/cabal01/Makefile
++++ b/testsuite/tests/cabal/cabal01/Makefile
+@@ -5,7 +5,7 @@ include $(TOP)/mk/test.mk
+ # Find all the env variables starting with CI_ to unset them.
+ # Otherwise, we might run into environment length limitations on Windows.
+ # (See `xargs --show-limits`.)
+-VARS_TO_UNSET := $(shell env | grep ^CI_ | egrep -o '^[^=]+')
++VARS_TO_UNSET := $(shell env | grep ^CI_ | grep -E -o '^[^=]+')
+ unexport $(VARS_TO_UNSET)
+
+ clean:
+diff --git a/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile b/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
+index fd64d23f..cb669db3 100644
+--- a/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
++++ b/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
+@@ -1,3 +1,7 @@
++TOP=../../../..
++include $(TOP)/mk/boilerplate.mk
++include $(TOP)/mk/test.mk
++
+ .PHONY: GHCiPrimCall
+ GHCiPrimCall:
+ '$(TEST_HC)' $(TEST_HC_OPTS) -fPIC -v0 -c GHCiPrimCall_cmm.cmm
+diff --git a/testsuite/tests/haddock/perf/Makefile b/testsuite/tests/haddock/perf/Makefile
+index b67b52f2..ff2f7ebb 100644
+--- a/testsuite/tests/haddock/perf/Makefile
++++ b/testsuite/tests/haddock/perf/Makefile
+@@ -4,12 +4,12 @@ include $(TOP)/mk/test.mk
+
+ # We accept a 5% increase in parser allocations due to -haddock
+ haddock_parser_perf :
+- WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Parser | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
+- WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Parser | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Parser | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Parser | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
+ awk "BEGIN { ratio = ($$WithHaddock / $$WithoutHaddock); if (ratio > 1.05) {print \"-haddock allocation ratio too high:\", ratio; exit 1} else {exit 0} }"
+
+ # Similarly for the renamer
+ haddock_renamer_perf :
+- WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Renamer | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
+- WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Renamer | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Renamer | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Renamer | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
+ awk "BEGIN { ratio = ($$WithHaddock / $$WithoutHaddock); if (ratio > 1.05) {print \"-haddock allocation ratio too high:\", ratio; exit 1} else {exit 0} }"
+diff --git a/testsuite/tests/hsc2hs/Makefile b/testsuite/tests/hsc2hs/Makefile
+index d0b2d249..95b011c8 100644
+--- a/testsuite/tests/hsc2hs/Makefile
++++ b/testsuite/tests/hsc2hs/Makefile
+@@ -52,9 +52,9 @@ T11004:
+ T12504:
+ '$(HSC2HS)' $(HSC2HS_OPTS) T12504/path/to/$@.hsc
+ ifeq "$(WINDOWS)" "YES"
+- grep '{-# LINE 1 \"T12504\\\\path\\\\to\\\\$@\.hsc\" #-}' T12504/path/to/$@.hs
++ grep '{-# LINE 1 "T12504\\\\path\\\\to\\\\$@\.hsc" #-}' T12504/path/to/$@.hs
+ else
+- grep '{-# LINE 1 \"T12504/path/to/$@\.hsc\" #-}' T12504/path/to/$@.hs
++ grep '{-# LINE 1 "T12504/path/to/$@\.hsc" #-}' T12504/path/to/$@.hs
+ endif
+
+ .PHONY: T15758
+diff --git a/testsuite/tests/numeric/should_run/T7014.primops b/testsuite/tests/numeric/should_run/T7014.primops
+index 3243666d..c807fb45 100644
+--- a/testsuite/tests/numeric/should_run/T7014.primops
++++ b/testsuite/tests/numeric/should_run/T7014.primops
+@@ -1,8 +1,8 @@
+ and#
+ or#
+ uncheckedShift.*#
+-\+#
+-\-#
+++#
++-#
+ \*#
+ quotInt#
+ remInt#
+diff --git a/testsuite/tests/simplCore/should_compile/Makefile b/testsuite/tests/simplCore/should_compile/Makefile
+index b5041800..c56e04f6 100644
+--- a/testsuite/tests/simplCore/should_compile/Makefile
++++ b/testsuite/tests/simplCore/should_compile/Makefile
+@@ -66,7 +66,7 @@ T13367:
+
+ T8832:
+ $(RM) -f T8832.o T8832.hi
+- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c -ddump-simpl -dsuppress-ticks T8832.hs | egrep '^[a-zA-Z0-9]+ ='
++ '$(TEST_HC)' $(TEST_HC_OPTS) -O -c -ddump-simpl -dsuppress-ticks T8832.hs | grep -E '^[a-zA-Z0-9]+ ='
+
+ T12603:
+ $(RM) -f T12603.o T12603.hi
+@@ -259,7 +259,7 @@ str-rules:
+ # g should have been collapsed into one defininition by CSE.
+ .PHONY: T13340
+ T13340:
+- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T13340.hs -ddump-simpl -dsuppress-all | grep -c '\+#'
++ '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T13340.hs -ddump-simpl -dsuppress-all | grep -c '+#'
+
+
+ # We expect to see all dictionaries specialized away.
+--
+2.41.0
+
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 02/23] gnu: Add ghc-js-flot-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-js-flot-bootstrap-for-9.6): New
variable.
Change-Id: Ie01768c263084a3aa38b7120de832913a80fc99a
---
gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 88826fb31f..cd44d9c915 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1503,4 +1503,34 @@ (define-public ghc-9.4
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
+;;; Bootstrap packages for hadrian, the new GHC build system
+
+(define ghc-bootstrap-for-9.6 ghc-9.4)
+
+(define ghc-js-flot-bootstrap-for-9.6
+ (package
+ (name "ghc-js-flot-bootstrap")
+ (version "0.8.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (hackage-uri "js-flot" version))
+ (sha256
+ (base32
+ "0yjyzqh3qzhy5h3nql1fckw0gcfb0f4wj9pm85nafpfqp2kg58hv"))))
+ (build-system haskell-build-system)
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (properties '((upstream-name . "js-flot")))
+ (home-page "https://github.com/ndmitchell/js-flot")
+ (synopsis "Obtain minified flot code")
+ (description "This package bundles the minified
+@url{http://www.flotcharts.org/, Flot} code (a jQuery plotting library)
+into a Haskell package, so it can be depended upon by Cabal packages.
+The first three components of the version number match the upstream flot
+version. The package is designed to meet the redistribution
+requirements of downstream users (e.g. Debian).")
+ (license license:expat)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69143] [PATCH v2 02/23] gnu: Add ghc-js-flot-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69143, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-js-flot-bootstrap-for-9.6): New
variable.
Change-Id: Ie01768c263084a3aa38b7120de832913a80fc99a
---
gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 88826fb31f..cd44d9c915 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1503,4 +1503,34 @@ (define-public ghc-9.4
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
+;;; Bootstrap packages for hadrian, the new GHC build system
+
+(define ghc-bootstrap-for-9.6 ghc-9.4)
+
+(define ghc-js-flot-bootstrap-for-9.6
+ (package
+ (name "ghc-js-flot-bootstrap")
+ (version "0.8.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (hackage-uri "js-flot" version))
+ (sha256
+ (base32
+ "0yjyzqh3qzhy5h3nql1fckw0gcfb0f4wj9pm85nafpfqp2kg58hv"))))
+ (build-system haskell-build-system)
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (properties '((upstream-name . "js-flot")))
+ (home-page "https://github.com/ndmitchell/js-flot")
+ (synopsis "Obtain minified flot code")
+ (description "This package bundles the minified
+@url{http://www.flotcharts.org/, Flot} code (a jQuery plotting library)
+into a Haskell package, so it can be depended upon by Cabal packages.
+The first three components of the version number match the upstream flot
+version. The package is designed to meet the redistribution
+requirements of downstream users (e.g. Debian).")
+ (license license:expat)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 03/23] gnu: Add ghc-clock-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-clock-bootstrap-for-9.6): New
variable.
Change-Id: I78d0997ee749a0c1725490c99308dcd1dc5bfbe5
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index cd44d9c915..c2f0d8a160 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,4 +1533,25 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-clock-bootstrap-for-9.6
+ (package
+ (name "ghc-clock-bootstrap")
+ (version "0.8.3")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "clock" version))
+ (sha256
+ (base32
+ "1l850pf1dxjf3i15wc47d64gzkpzgvw0bq13fd8zvklq9kdyap44"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "clock")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/corsis/clock")
+ (synopsis "High-resolution clock for Haskell")
+ (description
+ "A package for convenient access to high-resolution clock and
+timer functions of different operating systems via a unified API.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69142] [PATCH v2 03/23] gnu: Add ghc-clock-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69142, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-clock-bootstrap-for-9.6): New
variable.
Change-Id: I78d0997ee749a0c1725490c99308dcd1dc5bfbe5
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index cd44d9c915..c2f0d8a160 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,4 +1533,25 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-clock-bootstrap-for-9.6
+ (package
+ (name "ghc-clock-bootstrap")
+ (version "0.8.3")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "clock" version))
+ (sha256
+ (base32
+ "1l850pf1dxjf3i15wc47d64gzkpzgvw0bq13fd8zvklq9kdyap44"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "clock")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/corsis/clock")
+ (synopsis "High-resolution clock for Haskell")
+ (description
+ "A package for convenient access to high-resolution clock and
+timer functions of different operating systems via a unified API.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 04/23] gnu: Add ghc-extra-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-extra-bootstrap-for-9.6): New
variable.
Change-Id: I73f1bd1a821bb01fc9d081c78313e583ce8fab6b
---
gnu/packages/haskell.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index c2f0d8a160..717181b424 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,6 +1533,30 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-extra-bootstrap-for-9.6
+ (package
+ (name "ghc-extra-bootstrap")
+ (version "1.7.12")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "extra" version))
+ (sha256
+ (base32
+ "0g5h8fp0nq4k9asiknw0bhvb10zpfnsixfp0n3xz0rc83pnajwg5"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "extra")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-clock-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/extra#readme")
+ (synopsis "Extra Haskell functions")
+ (description
+ "This library provides extra functions for the standard
+Haskell libraries. Most functions are simple additions, filling out missing
+functionality. A few functions are available in later versions of GHC, but
+this package makes them available back to GHC 7.2.")
+ (license license:bsd-3)))
+
(define ghc-clock-bootstrap-for-9.6
(package
(name "ghc-clock-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69151] [PATCH v2 04/23] gnu: Add ghc-extra-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69151, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-extra-bootstrap-for-9.6): New
variable.
Change-Id: I73f1bd1a821bb01fc9d081c78313e583ce8fab6b
---
gnu/packages/haskell.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index c2f0d8a160..717181b424 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,6 +1533,30 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-extra-bootstrap-for-9.6
+ (package
+ (name "ghc-extra-bootstrap")
+ (version "1.7.12")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "extra" version))
+ (sha256
+ (base32
+ "0g5h8fp0nq4k9asiknw0bhvb10zpfnsixfp0n3xz0rc83pnajwg5"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "extra")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-clock-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/extra#readme")
+ (synopsis "Extra Haskell functions")
+ (description
+ "This library provides extra functions for the standard
+Haskell libraries. Most functions are simple additions, filling out missing
+functionality. A few functions are available in later versions of GHC, but
+this package makes them available back to GHC 7.2.")
+ (license license:bsd-3)))
+
(define ghc-clock-bootstrap-for-9.6
(package
(name "ghc-clock-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 05/23] gnu: Add ghc-hashable-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-hashable-bootstrap-for-9.6): New
variable.
Change-Id: Id96f7df459a3db56747cd4204b32b7ad253139a4
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 717181b424..307231e8f3 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1578,4 +1578,27 @@ (define ghc-clock-bootstrap-for-9.6
timer functions of different operating systems via a unified API.")
(license license:bsd-3)))
+(define ghc-hashable-bootstrap-for-9.6
+ (package
+ (name "ghc-hashable-bootstrap")
+ (version "1.4.1.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "hashable" version))
+ (sha256
+ (base32
+ "11sycr73821amdz8g0k8c97igi4z7f9xdvgaxlkxhsp6h310bcz1"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "hashable")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (home-page "http://github.com/haskell-unordered-containers/hashable")
+ (synopsis "Class for types that can be converted to a hash value")
+ (description
+ "This package defines a class, @code{Hashable}, for types that can be
+converted to a hash value. This class exists for the benefit of hashing-based
+data structures. The package provides instances for basic types and a way to
+combine hash values.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69158] [PATCH v2 05/23] gnu: Add ghc-hashable-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69158, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-hashable-bootstrap-for-9.6): New
variable.
Change-Id: Id96f7df459a3db56747cd4204b32b7ad253139a4
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 717181b424..307231e8f3 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1578,4 +1578,27 @@ (define ghc-clock-bootstrap-for-9.6
timer functions of different operating systems via a unified API.")
(license license:bsd-3)))
+(define ghc-hashable-bootstrap-for-9.6
+ (package
+ (name "ghc-hashable-bootstrap")
+ (version "1.4.1.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "hashable" version))
+ (sha256
+ (base32
+ "11sycr73821amdz8g0k8c97igi4z7f9xdvgaxlkxhsp6h310bcz1"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "hashable")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (home-page "http://github.com/haskell-unordered-containers/hashable")
+ (synopsis "Class for types that can be converted to a hash value")
+ (description
+ "This package defines a class, @code{Hashable}, for types that can be
+converted to a hash value. This class exists for the benefit of hashing-based
+data structures. The package provides instances for basic types and a way to
+combine hash values.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 06/23] gnu: Add ghc-splitmix-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-splitmix-bootstrap-for-9.6): New
variable.
Change-Id: I65584aa893975015dc44491b120636844af801de
---
gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 307231e8f3..ce3ca5083d 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1601,4 +1601,36 @@ (define ghc-hashable-bootstrap-for-9.6
combine hash values.")
(license license:bsd-3)))
+(define ghc-splitmix-bootstrap-for-9.6
+ (package
+ (name "ghc-splitmix-bootstrap")
+ (version "0.1.0.5")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "splitmix" version))
+ (sha256
+ (base32
+ "00ihw7vji8ydik7f5lk9iwj21j829lpl22wa4nqz2igg26b7mw4x"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "splitmix")))
+ (arguments
+ `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "http://hackage.haskell.org/package/splitmix")
+ (synopsis "Fast and splittable pseudorandom number generator")
+ (description
+ "This package provides a Pure Haskell implementation of the
+SplitMix pseudorandom number generator. SplitMix is a \"splittable\"
+pseudorandom number generator that is quite fast: 9 64-bit
+arithmetic/logical operations per 64 bits generated. SplitMix is tested
+with two standard statistical test suites (DieHarder and TestU01, this
+implementation only using the former) and it appears to be adequate for
+\"everyday\" use, such as Monte Carlo algorithms and randomized data
+structures where speed is important. In particular, it @strong{should not
+be used for cryptographic or security applications}, because generated
+sequences of pseudorandom values are too predictable (the mixing functions
+are easily inverted, and two successive outputs suffice to reconstruct the
+internal state).")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69165] [PATCH v2 06/23] gnu: Add ghc-splitmix-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69165, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-splitmix-bootstrap-for-9.6): New
variable.
Change-Id: I65584aa893975015dc44491b120636844af801de
---
gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 307231e8f3..ce3ca5083d 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1601,4 +1601,36 @@ (define ghc-hashable-bootstrap-for-9.6
combine hash values.")
(license license:bsd-3)))
+(define ghc-splitmix-bootstrap-for-9.6
+ (package
+ (name "ghc-splitmix-bootstrap")
+ (version "0.1.0.5")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "splitmix" version))
+ (sha256
+ (base32
+ "00ihw7vji8ydik7f5lk9iwj21j829lpl22wa4nqz2igg26b7mw4x"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "splitmix")))
+ (arguments
+ `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "http://hackage.haskell.org/package/splitmix")
+ (synopsis "Fast and splittable pseudorandom number generator")
+ (description
+ "This package provides a Pure Haskell implementation of the
+SplitMix pseudorandom number generator. SplitMix is a \"splittable\"
+pseudorandom number generator that is quite fast: 9 64-bit
+arithmetic/logical operations per 64 bits generated. SplitMix is tested
+with two standard statistical test suites (DieHarder and TestU01, this
+implementation only using the former) and it appears to be adequate for
+\"everyday\" use, such as Monte Carlo algorithms and randomized data
+structures where speed is important. In particular, it @strong{should not
+be used for cryptographic or security applications}, because generated
+sequences of pseudorandom values are too predictable (the mixing functions
+are easily inverted, and two successive outputs suffice to reconstruct the
+internal state).")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 07/23] gnu: Add ghc-random-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-random-bootstrap-for-9.6): New variable.
Change-Id: If1a39b27687a63a63dab5aa4c1a366a8ba78196a
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index ce3ca5083d..9487223636 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1633,4 +1633,26 @@ (define ghc-splitmix-bootstrap-for-9.6
internal state).")
(license license:bsd-3)))
+(define ghc-random-bootstrap-for-9.6
+ (package
+ (name "ghc-random-bootstrap")
+ (version "1.2.1.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "random" version))
+ (sha256
+ (base32
+ "0xlv1k4sj87akwvj54kq4nrfkzi6qcz1941bf78pnkbaxpvp44iy"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "random")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-splitmix-bootstrap-for-9.6))
+ (home-page "http://hackage.haskell.org/package/random")
+ (synopsis "Random number library")
+ (description
+ "This package provides a basic random number generation
+library, including the ability to split random number generators.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69156] [PATCH v2 07/23] gnu: Add ghc-random-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69156, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-random-bootstrap-for-9.6): New variable.
Change-Id: If1a39b27687a63a63dab5aa4c1a366a8ba78196a
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index ce3ca5083d..9487223636 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1633,4 +1633,26 @@ (define ghc-splitmix-bootstrap-for-9.6
internal state).")
(license license:bsd-3)))
+(define ghc-random-bootstrap-for-9.6
+ (package
+ (name "ghc-random-bootstrap")
+ (version "1.2.1.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "random" version))
+ (sha256
+ (base32
+ "0xlv1k4sj87akwvj54kq4nrfkzi6qcz1941bf78pnkbaxpvp44iy"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "random")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-splitmix-bootstrap-for-9.6))
+ (home-page "http://hackage.haskell.org/package/random")
+ (synopsis "Random number library")
+ (description
+ "This package provides a basic random number generation
+library, including the ability to split random number generators.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 08/23] gnu: Add ghc-primitive-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-primitive-bootstrap-for-9.6): New
variable.
Change-Id: I393ff5f57862de0c6da118a803ed6f898adcf0cb
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 9487223636..cc6215ef80 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,4 +1655,27 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-primitive-bootstrap-for-9.6
+ (package
+ (name "ghc-primitive-bootstrap")
+ (version "0.8.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "primitive" version))
+ (sha256
+ (base32
+ "0pwr5g3bra5m2zjm14pj98klqj2qrjcfasgd3rcrp7vq98dw4lsm"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "primitive")))
+ (arguments
+ `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:cabal-revision ("1"
+ "0w1nf0rabgyk5q7ccw7va1mj6k50lswvikhi6vr2myb1dvx4bzyh")))
+ (home-page "https://github.com/haskell/primitive")
+ (synopsis "Primitive memory-related operations")
+ (description
+ "This package provides various primitive memory-related operations.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69161] [PATCH v2 08/23] gnu: Add ghc-primitive-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69161, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-primitive-bootstrap-for-9.6): New
variable.
Change-Id: I393ff5f57862de0c6da118a803ed6f898adcf0cb
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 9487223636..cc6215ef80 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,4 +1655,27 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-primitive-bootstrap-for-9.6
+ (package
+ (name "ghc-primitive-bootstrap")
+ (version "0.8.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "primitive" version))
+ (sha256
+ (base32
+ "0pwr5g3bra5m2zjm14pj98klqj2qrjcfasgd3rcrp7vq98dw4lsm"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "primitive")))
+ (arguments
+ `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:cabal-revision ("1"
+ "0w1nf0rabgyk5q7ccw7va1mj6k50lswvikhi6vr2myb1dvx4bzyh")))
+ (home-page "https://github.com/haskell/primitive")
+ (synopsis "Primitive memory-related operations")
+ (description
+ "This package provides various primitive memory-related operations.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 09/23] gnu: Add ghc-js-jquery-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-js-jquery-bootstrap-for-9.6): New
variable.
Change-Id: I579efb04ad665f0938e24a9656f959abdd27905e
---
gnu/packages/haskell.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index cc6215ef80..9f442e25a1 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,32 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-js-jquery-bootstrap-for-9.6
+ (package
+ (name "ghc-js-jquery-bootstrap")
+ (version "3.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (hackage-uri "js-jquery" version))
+ (sha256
+ (base32
+ "16q68jzbs7kp07dnq8cprdcc8fd41rim38039vg0w4x11lgniq70"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "js-jquery")))
+ (arguments `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/js-jquery")
+ (synopsis "Obtain minified jQuery code")
+ (description "This package bundles the minified
+@url{http://jquery.com/, jQuery} code into a Haskell package, so it can
+be depended upon by Cabal packages. The first three components of the
+version number match the upstream jQuery version. The package is
+designed to meet the redistribution requirements of downstream
+users (e.g. Debian).")
+ (license license:expat)))
+
(define ghc-primitive-bootstrap-for-9.6
(package
(name "ghc-primitive-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69153] [PATCH v2 09/23] gnu: Add ghc-js-jquery-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69153, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-js-jquery-bootstrap-for-9.6): New
variable.
Change-Id: I579efb04ad665f0938e24a9656f959abdd27905e
---
gnu/packages/haskell.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index cc6215ef80..9f442e25a1 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,32 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-js-jquery-bootstrap-for-9.6
+ (package
+ (name "ghc-js-jquery-bootstrap")
+ (version "3.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (hackage-uri "js-jquery" version))
+ (sha256
+ (base32
+ "16q68jzbs7kp07dnq8cprdcc8fd41rim38039vg0w4x11lgniq70"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "js-jquery")))
+ (arguments `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/js-jquery")
+ (synopsis "Obtain minified jQuery code")
+ (description "This package bundles the minified
+@url{http://jquery.com/, jQuery} code into a Haskell package, so it can
+be depended upon by Cabal packages. The first three components of the
+version number match the upstream jQuery version. The package is
+designed to meet the redistribution requirements of downstream
+users (e.g. Debian).")
+ (license license:expat)))
+
(define ghc-primitive-bootstrap-for-9.6
(package
(name "ghc-primitive-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 10/23] gnu: Add ghc-utf8-string-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-utf8-string-bootstrap-for-9.6): New
variable.
Change-Id: Iea2ba4d3202195a54b71037882352cdac9415901
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 9f442e25a1..3561e494d2 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,28 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-utf8-string-bootstrap-for-9.6
+ (package
+ (name "ghc-utf8-string-bootstrap")
+ (version "1.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "utf8-string" version))
+ (sha256
+ (base32 "16mh36ffva9rh6k37bi1046pgpj14h0cnmj1iir700v0lynxwj7f"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "utf8-string")))
+ (arguments `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/glguy/utf8-string/")
+ (synopsis "Support for reading and writing UTF8 Strings")
+ (description
+ "A UTF8 layer for Strings. The utf8-string package provides operations
+for encoding UTF8 strings to Word8 lists and back, and for reading and writing
+UTF8 without truncation.")
+ (license license:bsd-3)))
+
(define ghc-js-jquery-bootstrap-for-9.6
(package
(name "ghc-js-jquery-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69157] [PATCH v2 10/23] gnu: Add ghc-utf8-string-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69157, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-utf8-string-bootstrap-for-9.6): New
variable.
Change-Id: Iea2ba4d3202195a54b71037882352cdac9415901
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 9f442e25a1..3561e494d2 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,28 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-utf8-string-bootstrap-for-9.6
+ (package
+ (name "ghc-utf8-string-bootstrap")
+ (version "1.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "utf8-string" version))
+ (sha256
+ (base32 "16mh36ffva9rh6k37bi1046pgpj14h0cnmj1iir700v0lynxwj7f"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "utf8-string")))
+ (arguments `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/glguy/utf8-string/")
+ (synopsis "Support for reading and writing UTF8 Strings")
+ (description
+ "A UTF8 layer for Strings. The utf8-string package provides operations
+for encoding UTF8 strings to Word8 lists and back, and for reading and writing
+UTF8 without truncation.")
+ (license license:bsd-3)))
+
(define ghc-js-jquery-bootstrap-for-9.6
(package
(name "ghc-js-jquery-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 11/23] gnu: Add ghc-heaps-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-heaps-bootstrap-for-9.6): New variable.
Change-Id: Ib04a47d3eacba415fd44cd532c18c02f8d9cf40b
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 3561e494d2..a83d785554 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,27 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-heaps-bootstrap-for-9.6
+ (package
+ (name "ghc-heaps-bootstrap")
+ (version "0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "heaps" version))
+ (sha256
+ (base32 "1zbw0qrlnhb42v04phzwmizbpwg21wnpl7p4fbr9xsasp7w9scl9"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "heaps")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "http://github.com/ekmett/heaps/")
+ (synopsis "Asymptotically optimal Brodal/Okasaki heaps.")
+ (description
+ "Asymptotically optimal Brodal\\/Okasaki bootstrapped skew-binomial heaps from the
+paper <http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.48.973 \"Optimal
+Purely Functional Priority Queues\">, extended with a Foldable interface.")
+ (license license:bsd-3)))
+
(define ghc-utf8-string-bootstrap-for-9.6
(package
(name "ghc-utf8-string-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69152] [PATCH v2 11/23] gnu: Add ghc-heaps-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69152, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-heaps-bootstrap-for-9.6): New variable.
Change-Id: Ib04a47d3eacba415fd44cd532c18c02f8d9cf40b
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 3561e494d2..a83d785554 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,27 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-heaps-bootstrap-for-9.6
+ (package
+ (name "ghc-heaps-bootstrap")
+ (version "0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "heaps" version))
+ (sha256
+ (base32 "1zbw0qrlnhb42v04phzwmizbpwg21wnpl7p4fbr9xsasp7w9scl9"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "heaps")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "http://github.com/ekmett/heaps/")
+ (synopsis "Asymptotically optimal Brodal/Okasaki heaps.")
+ (description
+ "Asymptotically optimal Brodal\\/Okasaki bootstrapped skew-binomial heaps from the
+paper <http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.48.973 \"Optimal
+Purely Functional Priority Queues\">, extended with a Foldable interface.")
+ (license license:bsd-3)))
+
(define ghc-utf8-string-bootstrap-for-9.6
(package
(name "ghc-utf8-string-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 12/23] gnu: Add ghc-js-dgtable-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-js-dgtable-bootstrap-for-9.6): New
variable.
Change-Id: Ic7e9e6c584e4fb8830ec55288759796271822964
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index a83d785554..88c7278168 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,29 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-js-dgtable-bootstrap-for-9.6
+ (package
+ (name "ghc-js-dgtable-bootstrap")
+ (version "0.5.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "js-dgtable" version))
+ (sha256
+ (base32 "1b10kx703kbkb5q1ggdpqcrxqjb33kh24khk21rb30w0xrdxd3g2"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "js-dgtable")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/js-dgtable#readme")
+ (synopsis "Obtain minified jquery.dgtable code")
+ (description
+ "This package bundles the minified <https://github.com/danielgindi/jquery.dgtable
+jquery.dgtable> code into a Haskell package, so it can be depended upon by Cabal
+packages. The first three components of the version number match the upstream
+jquery.dgtable version. The package is designed to meet the redistribution
+requirements of downstream users (e.g. Debian).")
+ (license license:expat)))
+
(define ghc-heaps-bootstrap-for-9.6
(package
(name "ghc-heaps-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69146] [PATCH v2 12/23] gnu: Add ghc-js-dgtable-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69146, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-js-dgtable-bootstrap-for-9.6): New
variable.
Change-Id: Ic7e9e6c584e4fb8830ec55288759796271822964
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index a83d785554..88c7278168 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,29 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-js-dgtable-bootstrap-for-9.6
+ (package
+ (name "ghc-js-dgtable-bootstrap")
+ (version "0.5.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "js-dgtable" version))
+ (sha256
+ (base32 "1b10kx703kbkb5q1ggdpqcrxqjb33kh24khk21rb30w0xrdxd3g2"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "js-dgtable")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/js-dgtable#readme")
+ (synopsis "Obtain minified jquery.dgtable code")
+ (description
+ "This package bundles the minified <https://github.com/danielgindi/jquery.dgtable
+jquery.dgtable> code into a Haskell package, so it can be depended upon by Cabal
+packages. The first three components of the version number match the upstream
+jquery.dgtable version. The package is designed to meet the redistribution
+requirements of downstream users (e.g. Debian).")
+ (license license:expat)))
+
(define ghc-heaps-bootstrap-for-9.6
(package
(name "ghc-heaps-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 13/23] gnu: Add ghc-nats-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-nats-bootstrap-for-9.6): New variable.
Change-Id: I57351e88ba0bc52e7fd5fefc5c3006f63925fd86
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 88c7278168..604b38cce6 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,28 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-nats-bootstrap-for-9.6
+ (package
+ (name "ghc-nats-bootstrap")
+ (version "1.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "nats" version))
+ (sha256
+ (base32
+ "1v40drmhixck3pz3mdfghamh73l4rp71mzcviipv1y8jhrfxilmr"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "nats")))
+ (arguments `(#:haddock? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (inputs
+ (list ghc-hashable-bootstrap-for-9.6))
+ (home-page "https://hackage.haskell.org/package/nats")
+ (synopsis "Natural numbers")
+ (description "This library provides the natural numbers for Haskell.")
+ (license license:bsd-3)))
+
(define ghc-js-dgtable-bootstrap-for-9.6
(package
(name "ghc-js-dgtable-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69147] [PATCH v2 13/23] gnu: Add ghc-nats-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69147, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-nats-bootstrap-for-9.6): New variable.
Change-Id: I57351e88ba0bc52e7fd5fefc5c3006f63925fd86
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 88c7278168..604b38cce6 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,28 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-nats-bootstrap-for-9.6
+ (package
+ (name "ghc-nats-bootstrap")
+ (version "1.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "nats" version))
+ (sha256
+ (base32
+ "1v40drmhixck3pz3mdfghamh73l4rp71mzcviipv1y8jhrfxilmr"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "nats")))
+ (arguments `(#:haddock? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (inputs
+ (list ghc-hashable-bootstrap-for-9.6))
+ (home-page "https://hackage.haskell.org/package/nats")
+ (synopsis "Natural numbers")
+ (description "This library provides the natural numbers for Haskell.")
+ (license license:bsd-3)))
+
(define ghc-js-dgtable-bootstrap-for-9.6
(package
(name "ghc-js-dgtable-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 14/23] gnu: Add ghc-tagged-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-tagged-bootstrap-for-9.6): New variable.
Change-Id: Ifd3996a62cfa33d155315807d4ead706f7e64452
---
gnu/packages/haskell.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 604b38cce6..0f49aabdb1 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,26 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-tagged-bootstrap-for-9.6
+ (package
+ (name "ghc-tagged-bootstrap")
+ (version "0.8.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "tagged" version))
+ (sha256
+ (base32
+ "0qdr1kv1zn5iamnwyn5nf0ywxs4wv779k0gpw94kyqx14ynfw534"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "tagged")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://hackage.haskell.org/package/tagged")
+ (synopsis "Haskell phantom types to avoid passing dummy arguments")
+ (description "This library provides phantom types for Haskell 98, to avoid
+having to unsafely pass dummy arguments.")
+ (license license:bsd-3)))
+
(define ghc-nats-bootstrap-for-9.6
(package
(name "ghc-nats-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69145] [PATCH v2 14/23] gnu: Add ghc-tagged-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69145, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-tagged-bootstrap-for-9.6): New variable.
Change-Id: Ifd3996a62cfa33d155315807d4ead706f7e64452
---
gnu/packages/haskell.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 604b38cce6..0f49aabdb1 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,26 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-tagged-bootstrap-for-9.6
+ (package
+ (name "ghc-tagged-bootstrap")
+ (version "0.8.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "tagged" version))
+ (sha256
+ (base32
+ "0qdr1kv1zn5iamnwyn5nf0ywxs4wv779k0gpw94kyqx14ynfw534"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "tagged")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://hackage.haskell.org/package/tagged")
+ (synopsis "Haskell phantom types to avoid passing dummy arguments")
+ (description "This library provides phantom types for Haskell 98, to avoid
+having to unsafely pass dummy arguments.")
+ (license license:bsd-3)))
+
(define ghc-nats-bootstrap-for-9.6
(package
(name "ghc-nats-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 15/23] gnu: Add ghc-semigroups-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-semigroups-bootstrap-for-9.6): New
variable.
Change-Id: Ic676fed80bea3805f8e70cd958c3d7523226053d
---
gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 0f49aabdb1..6a19287d4a 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,36 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-semigroups-bootstrap-for-9.6
+ (package
+ (name "ghc-semigroups-bootstrap")
+ (version "0.20")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "semigroups" version))
+ (sha256
+ (base32
+ "1qbk6scp1rzb69dy8mz26p6az5vi16g2lzwmwnfshh3br4rjwbch"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "semigroups")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (inputs
+ (list ghc-nats-bootstrap-for-9.6
+ ghc-tagged-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ ghc-hashable-bootstrap-for-9.6))
+ (home-page "http://github.com/ekmett/semigroups/")
+ (synopsis "Semigroup operations for Haskell")
+ (description
+ "This package provides semigroups for Haskell. In
+mathematics, a semigroup is an algebraic structure consisting of a set
+together with an associative binary operation. A semigroup generalizes a
+monoid in that there might not exist an identity element. It
+also (originally) generalized a group (a monoid with all inverses) to a type
+where every element did not have to have an inverse, thus the name
+semigroup.")
+ (license license:bsd-3)))
+
(define ghc-tagged-bootstrap-for-9.6
(package
(name "ghc-tagged-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69148] [PATCH v2 15/23] gnu: Add ghc-semigroups-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69148, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-semigroups-bootstrap-for-9.6): New
variable.
Change-Id: Ic676fed80bea3805f8e70cd958c3d7523226053d
---
gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 0f49aabdb1..6a19287d4a 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1655,6 +1655,36 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-semigroups-bootstrap-for-9.6
+ (package
+ (name "ghc-semigroups-bootstrap")
+ (version "0.20")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "semigroups" version))
+ (sha256
+ (base32
+ "1qbk6scp1rzb69dy8mz26p6az5vi16g2lzwmwnfshh3br4rjwbch"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "semigroups")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (inputs
+ (list ghc-nats-bootstrap-for-9.6
+ ghc-tagged-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ ghc-hashable-bootstrap-for-9.6))
+ (home-page "http://github.com/ekmett/semigroups/")
+ (synopsis "Semigroup operations for Haskell")
+ (description
+ "This package provides semigroups for Haskell. In
+mathematics, a semigroup is an algebraic structure consisting of a set
+together with an associative binary operation. A semigroup generalizes a
+monoid in that there might not exist an identity element. It
+also (originally) generalized a group (a monoid with all inverses) to a type
+where every element did not have to have an inverse, thus the name
+semigroup.")
+ (license license:bsd-3)))
+
(define ghc-tagged-bootstrap-for-9.6
(package
(name "ghc-tagged-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 16/23] gnu: Add ghc-base16-bytestring-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-base16-bytestring-bootstrap-for-9.6):
New variable.
Change-Id: I7c20bdfd7600fb2bed5de497e02acda74b242fec
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 6a19287d4a..348a67f1c5 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,6 +1533,27 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-base16-bytestring-bootstrap-for-9.6
+ (package
+ (name "ghc-base16-bytestring-bootstrap")
+ (version "1.0.2.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "base16-bytestring" version))
+ (sha256
+ (base32
+ "1167f9jaivnabn6kg2gc421ac9njb67fr4v0adbj3qph7qa92nhx"))))
+ (build-system haskell-build-system)
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (properties '((upstream-name . "base16-bytestring")))
+ (home-page "http://github.com/haskell/base16-bytestring")
+ (synopsis "Fast base16 (hex) encoding and decoding for ByteStrings")
+ (description
+ "This package provides a Haskell library for working with base16-encoded
+data quickly and efficiently, using the ByteString type.")
+ (license license:bsd-3)))
+
(define ghc-extra-bootstrap-for-9.6
(package
(name "ghc-extra-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69155] [PATCH v2 16/23] gnu: Add ghc-base16-bytestring-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69155, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-base16-bytestring-bootstrap-for-9.6):
New variable.
Change-Id: I7c20bdfd7600fb2bed5de497e02acda74b242fec
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 6a19287d4a..348a67f1c5 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,6 +1533,27 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-base16-bytestring-bootstrap-for-9.6
+ (package
+ (name "ghc-base16-bytestring-bootstrap")
+ (version "1.0.2.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "base16-bytestring" version))
+ (sha256
+ (base32
+ "1167f9jaivnabn6kg2gc421ac9njb67fr4v0adbj3qph7qa92nhx"))))
+ (build-system haskell-build-system)
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (properties '((upstream-name . "base16-bytestring")))
+ (home-page "http://github.com/haskell/base16-bytestring")
+ (synopsis "Fast base16 (hex) encoding and decoding for ByteStrings")
+ (description
+ "This package provides a Haskell library for working with base16-encoded
+data quickly and efficiently, using the ByteString type.")
+ (license license:bsd-3)))
+
(define ghc-extra-bootstrap-for-9.6
(package
(name "ghc-extra-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 17/23] gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-cryptohash-sha256-bootstrap-for-9.6):
New variable.
Change-Id: I80dd73de554160f4dc904c01ea292a886f51e970
---
gnu/packages/haskell.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 348a67f1c5..d163331b2b 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,6 +1533,35 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-cryptohash-sha256-bootstrap-for-9.6
+ (package
+ (name "ghc-cryptohash-sha256-bootstrap")
+ (version "0.11.102.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "cryptohash-sha256" version))
+ (sha256
+ (base32
+ "1xkb7iqplbw4fy1122p79xf1zcb7k44rl0wmfj1q06l7cdqxr9vk"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "cryptohash-sha256")))
+ (arguments
+ `(#:cabal-revision
+ ("1" "1hyzqv30rpj920ddnr0zypyjjlh52vyp2d140pn2byayj820rkgs")
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:tests? #f))
+ (home-page "https://github.com/hvr/cryptohash-sha1")
+ (synopsis "SHA-256 implementation for Haskell")
+ (description "This Haskell package provides an incremental and
+one-pass, pure API to the @uref{https://en.wikipedia.org/wiki/SHA-2,
+SHA-256 cryptographic hash algorithm}, with performance close to the
+fastest implementations available in other languages.
+
+The implementation is made in C with a haskell FFI wrapper that hides
+the C implementation.")
+ (license license:bsd-3)))
+
(define ghc-base16-bytestring-bootstrap-for-9.6
(package
(name "ghc-base16-bytestring-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69160] [PATCH v2 17/23] gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69160, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-cryptohash-sha256-bootstrap-for-9.6):
New variable.
Change-Id: I80dd73de554160f4dc904c01ea292a886f51e970
---
gnu/packages/haskell.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 348a67f1c5..d163331b2b 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,6 +1533,35 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-cryptohash-sha256-bootstrap-for-9.6
+ (package
+ (name "ghc-cryptohash-sha256-bootstrap")
+ (version "0.11.102.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "cryptohash-sha256" version))
+ (sha256
+ (base32
+ "1xkb7iqplbw4fy1122p79xf1zcb7k44rl0wmfj1q06l7cdqxr9vk"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "cryptohash-sha256")))
+ (arguments
+ `(#:cabal-revision
+ ("1" "1hyzqv30rpj920ddnr0zypyjjlh52vyp2d140pn2byayj820rkgs")
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:tests? #f))
+ (home-page "https://github.com/hvr/cryptohash-sha1")
+ (synopsis "SHA-256 implementation for Haskell")
+ (description "This Haskell package provides an incremental and
+one-pass, pure API to the @uref{https://en.wikipedia.org/wiki/SHA-2,
+SHA-256 cryptographic hash algorithm}, with performance close to the
+fastest implementations available in other languages.
+
+The implementation is made in C with a haskell FFI wrapper that hides
+the C implementation.")
+ (license license:bsd-3)))
+
(define ghc-base16-bytestring-bootstrap-for-9.6
(package
(name "ghc-base16-bytestring-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 18/23] gnu: Add ghc-unordered-containers-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-unordered-containers-bootstrap-for-9.6):
New variable.
Change-Id: I190d7e765d30b469290d26109478fbe97dfbe3ae
---
gnu/packages/haskell.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index d163331b2b..3b591c6ffa 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,6 +1533,33 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-unordered-containers-bootstrap-for-9.6
+ (package
+ (name "ghc-unordered-containers-bootstrap")
+ (version "0.2.19.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "unordered-containers" version))
+ (sha256
+ (base32
+ "1li8s6qw8mgv6a7011y7hg0cn2nllv2g9sr9c1xb48nmw32vw9qv"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "unordered-containers")))
+ (inputs (list ghc-hashable-bootstrap-for-9.6))
+ (arguments
+ `(#:cabal-revision ("3"
+ "1p9a2mvfbfz2d4cyr16b03bxvb6c4yj7k1ch601xwq1rkr1cla0w")
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:tests? #f))
+ (home-page
+ "https://github.com/haskell-unordered-containers/unordered-containers")
+ (synopsis "Efficient hashing-based container types")
+ (description
+ "Efficient hashing-based container types. The containers have been
+optimized for performance critical use, both in terms of large data quantities
+and high speed.")
+ (license license:bsd-3)))
+
(define ghc-cryptohash-sha256-bootstrap-for-9.6
(package
(name "ghc-cryptohash-sha256-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69149] [PATCH v2 18/23] gnu: Add ghc-unordered-containers-bootstrap-for-9.6
@ 2024-02-15 8:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:49 UTC (permalink / raw)
To: 69149, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-unordered-containers-bootstrap-for-9.6):
New variable.
Change-Id: I190d7e765d30b469290d26109478fbe97dfbe3ae
---
gnu/packages/haskell.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index d163331b2b..3b591c6ffa 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,6 +1533,33 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-unordered-containers-bootstrap-for-9.6
+ (package
+ (name "ghc-unordered-containers-bootstrap")
+ (version "0.2.19.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "unordered-containers" version))
+ (sha256
+ (base32
+ "1li8s6qw8mgv6a7011y7hg0cn2nllv2g9sr9c1xb48nmw32vw9qv"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "unordered-containers")))
+ (inputs (list ghc-hashable-bootstrap-for-9.6))
+ (arguments
+ `(#:cabal-revision ("3"
+ "1p9a2mvfbfz2d4cyr16b03bxvb6c4yj7k1ch601xwq1rkr1cla0w")
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:tests? #f))
+ (home-page
+ "https://github.com/haskell-unordered-containers/unordered-containers")
+ (synopsis "Efficient hashing-based container types")
+ (description
+ "Efficient hashing-based container types. The containers have been
+optimized for performance critical use, both in terms of large data quantities
+and high speed.")
+ (license license:bsd-3)))
+
(define ghc-cryptohash-sha256-bootstrap-for-9.6
(package
(name "ghc-cryptohash-sha256-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 19/23] gnu: Add ghc-filepattern-bootstrap-for-9.6
@ 2024-02-15 8:50 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:50 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-filepattern-bootstrap-for-9.6): New
variable.
Change-Id: I3778f85d7a14474445295ebd6bbb1f4bfbe4f6d5
---
gnu/packages/haskell.scm | 41 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 3b591c6ffa..47eab1d5fa 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,6 +1533,47 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-filepattern-bootstrap-for-9.6
+ (package
+ (name "ghc-filepattern-bootstrap")
+ (version "0.1.3")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "filepattern" version))
+ (sha256
+ (base32
+ "0dlnwnwhsfdkwm69z66wj5d2x9n3la55glq4fsn5rxm2kr1msi6c"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "filepattern")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-extra-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/filepattern#readme")
+ (synopsis "File path glob-like matching")
+ (description
+ "This package provides Haskell library for matching files using patterns
+such as @code{\\\"src\\/**\\/*.png\\\"} for all @@file{.png} files recursively
+under the @@file{src} directory.
+
+Some of its features include:
+
+@itemize
+@item All matching is O(n).
+
+@item Most functions pre-compute some information given only one argument.
+
+@item Uses @code{match} and @code{substitute} to extract suitable strings from
+the @code{*} and @code{**} matches, and substitutes them back into other
+patterns.
+
+@item Uses @code{step} and @code{matchMany} to perform bulk matching of many
+patterns against many paths simultaneously.
+
+@item Uses @code{System.FilePattern.Directory} to perform optimised directory
+traverals using patterns.
+@end itemize")
+ (license license:bsd-3)))
+
(define ghc-unordered-containers-bootstrap-for-9.6
(package
(name "ghc-unordered-containers-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69162] [PATCH v2 19/23] gnu: Add ghc-filepattern-bootstrap-for-9.6
@ 2024-02-15 8:50 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:50 UTC (permalink / raw)
To: 69162, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-filepattern-bootstrap-for-9.6): New
variable.
Change-Id: I3778f85d7a14474445295ebd6bbb1f4bfbe4f6d5
---
gnu/packages/haskell.scm | 41 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 3b591c6ffa..47eab1d5fa 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,6 +1533,47 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-filepattern-bootstrap-for-9.6
+ (package
+ (name "ghc-filepattern-bootstrap")
+ (version "0.1.3")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "filepattern" version))
+ (sha256
+ (base32
+ "0dlnwnwhsfdkwm69z66wj5d2x9n3la55glq4fsn5rxm2kr1msi6c"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "filepattern")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-extra-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/filepattern#readme")
+ (synopsis "File path glob-like matching")
+ (description
+ "This package provides Haskell library for matching files using patterns
+such as @code{\\\"src\\/**\\/*.png\\\"} for all @@file{.png} files recursively
+under the @@file{src} directory.
+
+Some of its features include:
+
+@itemize
+@item All matching is O(n).
+
+@item Most functions pre-compute some information given only one argument.
+
+@item Uses @code{match} and @code{substitute} to extract suitable strings from
+the @code{*} and @code{**} matches, and substitutes them back into other
+patterns.
+
+@item Uses @code{step} and @code{matchMany} to perform bulk matching of many
+patterns against many paths simultaneously.
+
+@item Uses @code{System.FilePattern.Directory} to perform optimised directory
+traverals using patterns.
+@end itemize")
+ (license license:bsd-3)))
+
(define ghc-unordered-containers-bootstrap-for-9.6
(package
(name "ghc-unordered-containers-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 20/23] gnu: Add ghc-shake-bootstrap-for-9.6
@ 2024-02-15 8:50 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:50 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-shake-bootstrap-for-9.6): New variable.
Change-Id: I195bc5f779709ef7b2ccefe2271402ef342bc0b8
---
gnu/packages/haskell.scm | 56 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 47eab1d5fa..4127d7d4a7 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1507,6 +1507,62 @@ (define-public ghc-9.4
(define ghc-bootstrap-for-9.6 ghc-9.4)
+(define ghc-shake-bootstrap-for-9.6
+ (package
+ (name "ghc-shake-bootstrap")
+ (version "0.19.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "shake" version))
+ (sha256
+ (base32 "1lcr6q53qwm308bny6gfawcjhxsmalqi3dnwckam02zp2apmcaim"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "shake")))
+ (inputs (list bash-minimal
+ ghc-extra-bootstrap-for-9.6
+ ghc-filepattern-bootstrap-for-9.6
+ ghc-hashable-bootstrap-for-9.6
+ ghc-heaps-bootstrap-for-9.6
+ ghc-js-dgtable-bootstrap-for-9.6
+ ghc-js-flot-bootstrap-for-9.6
+ ghc-js-jquery-bootstrap-for-9.6
+ ghc-primitive-bootstrap-for-9.6
+ ghc-random-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ ghc-utf8-string-bootstrap-for-9.6
+ ghc-semigroups-bootstrap-for-9.6))
+ (arguments
+ (list #:cabal-revision '("1"
+ "1hz57kw5pp5cpbicbi7x8sz8c6qy58dzyiljz9b9f2r1rr683d9w")
+ #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'patch-source-shebangs 'patch-/bin/sh
+ (lambda _
+ (for-each
+ (lambda (file)
+ (substitute*
+ file
+ (("/bin/sh")
+ #$(file-append (this-package-input "bash-minimal")
+ "/bin/sh"))))
+ '("src/Development/Shake/Command.hs")))))))
+ (home-page "https://shakebuild.com")
+ (synopsis
+ "Build system library, like Make, but more accurate dependencies.")
+ (description
+ "Shake is a Haskell library for writing build systems - designed as a
+replacement for @@make@@. To use Shake the user writes a Haskell program that
+imports \"Development.Shake\", defines some build rules, and calls the
+Development.Shake.@code{shakeArgs} function. However, as build systems get more
+complex, Shake is able to take advantage of the excellent abstraction facilities
+offered by Haskell and easily support much larger projects. Shake also provides more
+accurate dependency tracking, including seamless support for generated files, and
+dependencies on system information (e.g. compiler version).")
+ (license license:bsd-3)))
+
(define ghc-js-flot-bootstrap-for-9.6
(package
(name "ghc-js-flot-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69163] [PATCH v2 20/23] gnu: Add ghc-shake-bootstrap-for-9.6
@ 2024-02-15 8:50 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:50 UTC (permalink / raw)
To: 69163, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-shake-bootstrap-for-9.6): New variable.
Change-Id: I195bc5f779709ef7b2ccefe2271402ef342bc0b8
---
gnu/packages/haskell.scm | 56 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 47eab1d5fa..4127d7d4a7 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1507,6 +1507,62 @@ (define-public ghc-9.4
(define ghc-bootstrap-for-9.6 ghc-9.4)
+(define ghc-shake-bootstrap-for-9.6
+ (package
+ (name "ghc-shake-bootstrap")
+ (version "0.19.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "shake" version))
+ (sha256
+ (base32 "1lcr6q53qwm308bny6gfawcjhxsmalqi3dnwckam02zp2apmcaim"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "shake")))
+ (inputs (list bash-minimal
+ ghc-extra-bootstrap-for-9.6
+ ghc-filepattern-bootstrap-for-9.6
+ ghc-hashable-bootstrap-for-9.6
+ ghc-heaps-bootstrap-for-9.6
+ ghc-js-dgtable-bootstrap-for-9.6
+ ghc-js-flot-bootstrap-for-9.6
+ ghc-js-jquery-bootstrap-for-9.6
+ ghc-primitive-bootstrap-for-9.6
+ ghc-random-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ ghc-utf8-string-bootstrap-for-9.6
+ ghc-semigroups-bootstrap-for-9.6))
+ (arguments
+ (list #:cabal-revision '("1"
+ "1hz57kw5pp5cpbicbi7x8sz8c6qy58dzyiljz9b9f2r1rr683d9w")
+ #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'patch-source-shebangs 'patch-/bin/sh
+ (lambda _
+ (for-each
+ (lambda (file)
+ (substitute*
+ file
+ (("/bin/sh")
+ #$(file-append (this-package-input "bash-minimal")
+ "/bin/sh"))))
+ '("src/Development/Shake/Command.hs")))))))
+ (home-page "https://shakebuild.com")
+ (synopsis
+ "Build system library, like Make, but more accurate dependencies.")
+ (description
+ "Shake is a Haskell library for writing build systems - designed as a
+replacement for @@make@@. To use Shake the user writes a Haskell program that
+imports \"Development.Shake\", defines some build rules, and calls the
+Development.Shake.@code{shakeArgs} function. However, as build systems get more
+complex, Shake is able to take advantage of the excellent abstraction facilities
+offered by Haskell and easily support much larger projects. Shake also provides more
+accurate dependency tracking, including seamless support for generated files, and
+dependencies on system information (e.g. compiler version).")
+ (license license:bsd-3)))
+
(define ghc-js-flot-bootstrap-for-9.6
(package
(name "ghc-js-flot-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 21/23] gnu: Add hadrian-for-ghc-9.6
@ 2024-02-15 8:50 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:50 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (hadrian-for-ghc-9.6): New variable.
Change-Id: I4205c888afa7b03b4b1622a3af7d1d538fa5c9b1
---
gnu/packages/haskell.scm | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 4127d7d4a7..9e1e659cf1 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -2016,4 +2016,44 @@ (define ghc-primitive-bootstrap-for-9.6
"This package provides various primitive memory-related operations.")
(license license:bsd-3)))
+(define hadrian-for-ghc-9.6
+ (package
+ (name "hadrian")
+ (version "9.6.4")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://www.haskell.org/ghc/dist/" version
+ "/ghc-" version "-src.tar.xz"))
+ (sha256
+ (base32
+ "1h6lpx8kd4xycjwb8iv2rgnz23kwq5b0qp4bhvczsx3in2w2bgqh"))))
+ (build-system haskell-build-system)
+ (inputs
+ (list ghc-base16-bytestring-bootstrap-for-9.6
+ ghc-cryptohash-sha256-bootstrap-for-9.6
+ ghc-extra-bootstrap-for-9.6
+ ghc-shake-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ bash-minimal))
+ (arguments
+ (list #:configure-flags ''("--flags=-selftest")
+ #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'cd-to-hadrian
+ (lambda _
+ (chdir "hadrian")))
+ (add-after 'cd-to-hadrian 'fix-shell-wrappers
+ (lambda _
+ (substitute*
+ "src/Rules/Test.hs"
+ (("\"#!/bin/sh\"")
+ (format #f "\"#!~a/bin/sh\"" #$(this-package-input "bash-minimal")))))))))
+ (home-page "https://gitlab.haskell.org/ghc/ghc/-/tree/master/hadrian")
+ (synopsis "Build system for the Glasgow Haskell Compiler (@code{ghc})")
+ (description "Hadrian is the build system for the Glasgow Haskell Compiler.
+It is based on the Shake library and replaces @{make} in building GHC")
+ (license license:expat)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69164] [PATCH v2 21/23] gnu: Add hadrian-for-ghc-9.6
@ 2024-02-15 8:50 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:50 UTC (permalink / raw)
To: 69164, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (hadrian-for-ghc-9.6): New variable.
Change-Id: I4205c888afa7b03b4b1622a3af7d1d538fa5c9b1
---
gnu/packages/haskell.scm | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 4127d7d4a7..9e1e659cf1 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -2016,4 +2016,44 @@ (define ghc-primitive-bootstrap-for-9.6
"This package provides various primitive memory-related operations.")
(license license:bsd-3)))
+(define hadrian-for-ghc-9.6
+ (package
+ (name "hadrian")
+ (version "9.6.4")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://www.haskell.org/ghc/dist/" version
+ "/ghc-" version "-src.tar.xz"))
+ (sha256
+ (base32
+ "1h6lpx8kd4xycjwb8iv2rgnz23kwq5b0qp4bhvczsx3in2w2bgqh"))))
+ (build-system haskell-build-system)
+ (inputs
+ (list ghc-base16-bytestring-bootstrap-for-9.6
+ ghc-cryptohash-sha256-bootstrap-for-9.6
+ ghc-extra-bootstrap-for-9.6
+ ghc-shake-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ bash-minimal))
+ (arguments
+ (list #:configure-flags ''("--flags=-selftest")
+ #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'cd-to-hadrian
+ (lambda _
+ (chdir "hadrian")))
+ (add-after 'cd-to-hadrian 'fix-shell-wrappers
+ (lambda _
+ (substitute*
+ "src/Rules/Test.hs"
+ (("\"#!/bin/sh\"")
+ (format #f "\"#!~a/bin/sh\"" #$(this-package-input "bash-minimal")))))))))
+ (home-page "https://gitlab.haskell.org/ghc/ghc/-/tree/master/hadrian")
+ (synopsis "Build system for the Glasgow Haskell Compiler (@code{ghc})")
+ (description "Hadrian is the build system for the Glasgow Haskell Compiler.
+It is based on the Shake library and replaces @{make} in building GHC")
+ (license license:expat)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 22/23] gnu: Add ghc-9.6
@ 2024-02-15 8:50 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:50 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-9.6): New variable.
Change-Id: I6883ed973bdd1d6eaf981605c1bc8f855f850187
---
gnu/packages/haskell.scm | 108 ++++++++++++++++++++++++++++++++++++++-
1 file changed, 107 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 9e1e659cf1..e316fc860e 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -72,7 +72,8 @@ (define-module (gnu packages haskell)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (ice-9 match)
- #:use-module (ice-9 regex))
+ #:use-module (ice-9 regex)
+ #:use-module (srfi srfi-26))
(define-public cl-yale-haskell
(let ((commit "85f94c72a16c5f70301dd8db04cde9de2d7dd270")
@@ -2056,4 +2057,109 @@ (define hadrian-for-ghc-9.6
It is based on the Shake library and replaces @{make} in building GHC")
(license license:expat)))
+(define-public ghc-9.6
+ (let ((base ghc-9.4))
+ (package
+ (inherit base)
+ (name "ghc-next")
+ (version "9.6.4")
+ (source (origin
+ (inherit (package-source base))
+ (uri (string-append "https://www.haskell.org/ghc/dist/" version
+ "/ghc-" version "-src.tar.xz"))
+ (sha256
+ (base32
+ "1h6lpx8kd4xycjwb8iv2rgnz23kwq5b0qp4bhvczsx3in2w2bgqh"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:make-flags flags ''())
+ #~(list "-V" "--docs=no-sphinx"))
+ ((#:phases phases '%standard-phases)
+ #~(let* ((run-hadrian (lambda args
+ (apply invoke "hadrian" args))))
+ (modify-phases #$phases
+ (delete 'fix-shell-wrappers)
+ ;; https://gitlab.haskell.org/ghc/ghc/-/issues/22557
+ (add-before 'build 'fix-iserv-rpath
+ (lambda _
+ (mkdir-p "_build")
+ (call-with-output-file
+ "_build/hadrian.settings"
+ (lambda (port)
+ (display
+ (string-append
+ "*.iserv.ghc.link.opts += -optl-Wl,-rpath,"
+ #$output "/lib/ghc-" #$(package-version this-package)
+ "/lib/" #$(or (%current-target-system)
+ (%current-system))
+ "-ghc-" #$(package-version this-package) "/")
+ port)))))
+ (replace 'build
+ (lambda* (#:key (parallel-build? #f) (make-flags '())
+ #:allow-other-keys)
+ (apply run-hadrian
+ `("binary-dist-dir"
+ ,@(if parallel-build?
+ `(,(string-append "-j" (number->string (parallel-job-count))))
+ '())
+ ,@make-flags))))
+ (replace 'check
+ (lambda* (#:key (tests? #t) (parallel-tests? #f) (make-flags '()) #:allow-other-keys)
+ (if tests?
+ (apply run-hadrian
+ `(,@(if parallel-tests?
+ `(,(string-append "-j" (number->string (parallel-job-count))))
+ '())
+ ,@make-flags
+ "test"
+ "--skip-perf"))
+ (format #t "test suite not run~%"))))
+ (replace 'install
+ (lambda* (#:key (make-flags '()) #:allow-other-keys)
+ (apply run-hadrian
+ `("install"
+ ,@make-flags
+ ,(string-append "--prefix=" #$output)))))
+ (add-after 'install 'replace-$pkgroot
+ (lambda _
+ (substitute*
+ (find-files
+ (string-append #$output "/lib/ghc-"
+ #$(package-version this-package)
+ "/lib/package.conf.d/")
+ "^.*\\.conf$")
+ (("\\$\\{pkgroot\\}/")
+ (string-append #$output "/lib/ghc-"
+ #$(package-version this-package)
+ "/lib/"))))))))))
+ (inputs (list bash-minimal gmp ncurses libffi))
+ (native-inputs
+ `(("perl" ,perl)
+ ("python" ,python)
+ ("git" ,git-minimal/pinned)
+ ("which" ,which)
+ ("ghostscript" ,ghostscript)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+
+ ("hadrian" ,hadrian-for-ghc-9.6)
+ ("ghc-bootstrap" ,ghc-bootstrap-for-9.6)
+ ("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
+ ("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
+ ("ghc-testsuite"
+ ,(origin
+ (method url-fetch)
+ (uri (string-append
+ "https://www.haskell.org/ghc/dist/"
+ version "/ghc-" version "-testsuite.tar.xz"))
+ (sha256
+ (base32
+ "0wwd6d68aia2rmlpki30azz0raf98is472cqljhbzzdzpqpjh4vf"))))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GHC_PACKAGE_PATH")
+ (files (list (string-append "lib/ghc-" version)))
+ (file-pattern ".*\\.conf\\.d$")
+ (file-type 'directory)))))))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69159] [PATCH v2 22/23] gnu: Add ghc-9.6
@ 2024-02-15 8:50 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:50 UTC (permalink / raw)
To: 69159, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-9.6): New variable.
Change-Id: I6883ed973bdd1d6eaf981605c1bc8f855f850187
---
gnu/packages/haskell.scm | 108 ++++++++++++++++++++++++++++++++++++++-
1 file changed, 107 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 9e1e659cf1..e316fc860e 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -72,7 +72,8 @@ (define-module (gnu packages haskell)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (ice-9 match)
- #:use-module (ice-9 regex))
+ #:use-module (ice-9 regex)
+ #:use-module (srfi srfi-26))
(define-public cl-yale-haskell
(let ((commit "85f94c72a16c5f70301dd8db04cde9de2d7dd270")
@@ -2056,4 +2057,109 @@ (define hadrian-for-ghc-9.6
It is based on the Shake library and replaces @{make} in building GHC")
(license license:expat)))
+(define-public ghc-9.6
+ (let ((base ghc-9.4))
+ (package
+ (inherit base)
+ (name "ghc-next")
+ (version "9.6.4")
+ (source (origin
+ (inherit (package-source base))
+ (uri (string-append "https://www.haskell.org/ghc/dist/" version
+ "/ghc-" version "-src.tar.xz"))
+ (sha256
+ (base32
+ "1h6lpx8kd4xycjwb8iv2rgnz23kwq5b0qp4bhvczsx3in2w2bgqh"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:make-flags flags ''())
+ #~(list "-V" "--docs=no-sphinx"))
+ ((#:phases phases '%standard-phases)
+ #~(let* ((run-hadrian (lambda args
+ (apply invoke "hadrian" args))))
+ (modify-phases #$phases
+ (delete 'fix-shell-wrappers)
+ ;; https://gitlab.haskell.org/ghc/ghc/-/issues/22557
+ (add-before 'build 'fix-iserv-rpath
+ (lambda _
+ (mkdir-p "_build")
+ (call-with-output-file
+ "_build/hadrian.settings"
+ (lambda (port)
+ (display
+ (string-append
+ "*.iserv.ghc.link.opts += -optl-Wl,-rpath,"
+ #$output "/lib/ghc-" #$(package-version this-package)
+ "/lib/" #$(or (%current-target-system)
+ (%current-system))
+ "-ghc-" #$(package-version this-package) "/")
+ port)))))
+ (replace 'build
+ (lambda* (#:key (parallel-build? #f) (make-flags '())
+ #:allow-other-keys)
+ (apply run-hadrian
+ `("binary-dist-dir"
+ ,@(if parallel-build?
+ `(,(string-append "-j" (number->string (parallel-job-count))))
+ '())
+ ,@make-flags))))
+ (replace 'check
+ (lambda* (#:key (tests? #t) (parallel-tests? #f) (make-flags '()) #:allow-other-keys)
+ (if tests?
+ (apply run-hadrian
+ `(,@(if parallel-tests?
+ `(,(string-append "-j" (number->string (parallel-job-count))))
+ '())
+ ,@make-flags
+ "test"
+ "--skip-perf"))
+ (format #t "test suite not run~%"))))
+ (replace 'install
+ (lambda* (#:key (make-flags '()) #:allow-other-keys)
+ (apply run-hadrian
+ `("install"
+ ,@make-flags
+ ,(string-append "--prefix=" #$output)))))
+ (add-after 'install 'replace-$pkgroot
+ (lambda _
+ (substitute*
+ (find-files
+ (string-append #$output "/lib/ghc-"
+ #$(package-version this-package)
+ "/lib/package.conf.d/")
+ "^.*\\.conf$")
+ (("\\$\\{pkgroot\\}/")
+ (string-append #$output "/lib/ghc-"
+ #$(package-version this-package)
+ "/lib/"))))))))))
+ (inputs (list bash-minimal gmp ncurses libffi))
+ (native-inputs
+ `(("perl" ,perl)
+ ("python" ,python)
+ ("git" ,git-minimal/pinned)
+ ("which" ,which)
+ ("ghostscript" ,ghostscript)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+
+ ("hadrian" ,hadrian-for-ghc-9.6)
+ ("ghc-bootstrap" ,ghc-bootstrap-for-9.6)
+ ("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
+ ("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
+ ("ghc-testsuite"
+ ,(origin
+ (method url-fetch)
+ (uri (string-append
+ "https://www.haskell.org/ghc/dist/"
+ version "/ghc-" version "-testsuite.tar.xz"))
+ (sha256
+ (base32
+ "0wwd6d68aia2rmlpki30azz0raf98is472cqljhbzzdzpqpjh4vf"))))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GHC_PACKAGE_PATH")
+ (files (list (string-append "lib/ghc-" version)))
+ (file-pattern ".*\\.conf\\.d$")
+ (file-type 'directory)))))))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v2 23/23] gnu: ghc: Update to version 9.6.4
@ 2024-02-15 8:50 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:50 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc): Update to ghc-9.6
Change-Id: I40da6cacc4d260902cd66d7d626375038fba4346
---
gnu/packages/haskell.scm | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index e316fc860e..3944d8f15f 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1393,12 +1393,6 @@ (define-public ghc-9.2
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
-;; Versions newer than ghc defined below (i.e. the compiler
-;; haskell-build-system uses) should use ghc-next as their name to
-;; ensure ghc (without version specification) and ghc-* packages are
-;; always compatible. See https://issues.guix.gnu.org/issue/47335.
-(define-public ghc ghc-9.2)
-
;; 9.4 is the last version to support the make-based build system,
;; but it boot with 9.2, only 9.0 is supported.
(define ghc-bootstrap-for-9.4 ghc-9.0)
@@ -1462,7 +1456,7 @@ (define-public ghc-9.4
(let ((base ghc-9.2))
(package
(inherit base)
- (name "ghc-next")
+ (name "ghc")
(version "9.4.8")
(source (origin
(method url-fetch)
@@ -2061,7 +2055,7 @@ (define-public ghc-9.6
(let ((base ghc-9.4))
(package
(inherit base)
- (name "ghc-next")
+ (name "ghc")
(version "9.6.4")
(source (origin
(inherit (package-source base))
@@ -2162,4 +2156,10 @@ (define-public ghc-9.6
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
+;; Versions newer than ghc defined below (i.e. the compiler
+;; haskell-build-system uses) should use ghc-next as their name to
+;; ensure ghc (without version specification) and ghc-* packages are
+;; always compatible. See https://issues.guix.gnu.org/issue/47335.
+(define-public ghc ghc-9.6)
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69150] [PATCH v2 23/23] gnu: ghc: Update to version 9.6.4
@ 2024-02-15 8:50 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 8:50 UTC (permalink / raw)
To: 69150, 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc): Update to ghc-9.6
Change-Id: I40da6cacc4d260902cd66d7d626375038fba4346
---
gnu/packages/haskell.scm | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index e316fc860e..3944d8f15f 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1393,12 +1393,6 @@ (define-public ghc-9.2
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
-;; Versions newer than ghc defined below (i.e. the compiler
-;; haskell-build-system uses) should use ghc-next as their name to
-;; ensure ghc (without version specification) and ghc-* packages are
-;; always compatible. See https://issues.guix.gnu.org/issue/47335.
-(define-public ghc ghc-9.2)
-
;; 9.4 is the last version to support the make-based build system,
;; but it boot with 9.2, only 9.0 is supported.
(define ghc-bootstrap-for-9.4 ghc-9.0)
@@ -1462,7 +1456,7 @@ (define-public ghc-9.4
(let ((base ghc-9.2))
(package
(inherit base)
- (name "ghc-next")
+ (name "ghc")
(version "9.4.8")
(source (origin
(method url-fetch)
@@ -2061,7 +2055,7 @@ (define-public ghc-9.6
(let ((base ghc-9.4))
(package
(inherit base)
- (name "ghc-next")
+ (name "ghc")
(version "9.6.4")
(source (origin
(inherit (package-source base))
@@ -2162,4 +2156,10 @@ (define-public ghc-9.6
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
+;; Versions newer than ghc defined below (i.e. the compiler
+;; haskell-build-system uses) should use ghc-next as their name to
+;; ensure ghc (without version specification) and ghc-* packages are
+;; always compatible. See https://issues.guix.gnu.org/issue/47335.
+(define-public ghc ghc-9.6)
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#69154] Closing accidental issues
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (23 preceding siblings ...)
(?)
@ 2024-02-15 16:41 ` Saku Laesvuori via Guix-patches via
2024-02-15 17:05 ` Hilton Chain via Guix-patches via
-1 siblings, 1 reply; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 16:41 UTC (permalink / raw)
To: 69154
[-- Attachment #1: Type: text/plain, Size: 216 bytes --]
Git send-email went crazy today and sent my patch series to guix-patches
in addition to the correct issue, creating 24 new issues. Can I close
them myself or do I just have to wait for someone else to do it?
- Saku
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [WIP PATCH v2 00/23] Update GHC to 9.6.4
2023-12-20 7:10 [bug#67921] [PATCH haskell-team 1/3] gnu: ghc-next: Update to version 9.4.8 Saku Laesvuori via Guix-patches via
` (2 preceding siblings ...)
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
@ 2024-02-15 17:05 ` Suhail via Guix-patches via
2024-02-15 17:49 ` Saku Laesvuori via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
4 siblings, 1 reply; 123+ messages in thread
From: Suhail via Guix-patches via @ 2024-02-15 17:05 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
Saku Laesvuori via Guix-patches via <guix-patches@gnu.org> writes:
> - updates ghc-next to 9.4.8
Did you mean "updates ghc-9.4 to 9.4.8", instead?
> - changes the default ghc to ghc-9.6.
If my understanding is correct, this means that 9.8 onwards should use
"ghc-next".
--
Suhail
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#69154] Closing accidental issues
2024-02-15 16:41 ` [bug#69154] Closing accidental issues Saku Laesvuori via Guix-patches via
@ 2024-02-15 17:05 ` Hilton Chain via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-02-15 17:05 UTC (permalink / raw)
To: Saku Laesvuori; +Cc: 69154
Hi Saku,
On Fri, 16 Feb 2024 00:41:20 +0800,
Saku Laesvuori via Guix-patches via wrote:
>
> [1 <text/plain; us-ascii (7bit)>]
> Git send-email went crazy today and sent my patch series to guix-patches
> in addition to the correct issue, creating 24 new issues. Can I close
> them myself or do I just have to wait for someone else to do it?
You can close them yourself, anyone can close any issues actually :)
See details on <https://debbugs.gnu.org/server-control.html>, I think you want
‘merge’ them first and ‘close’ in this case?
Thanks
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [WIP PATCH v2 00/23] Update GHC to 9.6.4
2024-02-15 17:05 ` [bug#67921] [WIP PATCH v2 00/23] Update GHC to 9.6.4 Suhail via Guix-patches via
@ 2024-02-15 17:49 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-02-15 17:49 UTC (permalink / raw)
To: Suhail; +Cc: Lars-Dominik Braun, 67921
[-- Attachment #1: Type: text/plain, Size: 364 bytes --]
> Saku Laesvuori via Guix-patches via <guix-patches@gnu.org> writes:
>
> > - updates ghc-next to 9.4.8
>
> Did you mean "updates ghc-9.4 to 9.4.8", instead?
I guess that would be a clearer way of wording it.
> > - changes the default ghc to ghc-9.6.
>
> If my understanding is correct, this means that 9.8 onwards should use
> "ghc-next".
Yes.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 00/23] Update GHC to 9.6.5
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (24 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
2024-06-14 13:55 ` Lars-Dominik Braun
-1 siblings, 1 reply; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
I didn't hear any ideas for a better solution, so here is a patch set
with the failing tests disabled. The current haskell-team merge should
probably be continued without this series and a new one started from
these patches.
Saku Laesvuori (23):
gnu: ghc-next: Update to version 9.4.8
gnu: Add ghc-js-flot-bootstrap-for-9.6
gnu: Add ghc-clock-bootstrap-for-9.6
gnu: Add ghc-extra-bootstrap-for-9.6
gnu: Add ghc-hashable-bootstrap-for-9.6
gnu: Add ghc-splitmix-bootstrap-for-9.6
gnu: Add ghc-random-bootstrap-for-9.6
gnu: Add ghc-primitive-bootstrap-for-9.6
gnu: Add ghc-js-jquery-bootstrap-for-9.6
gnu: Add ghc-utf8-string-bootstrap-for-9.6
gnu: Add ghc-heaps-bootstrap-for-9.6
gnu: Add ghc-js-dgtable-bootstrap-for-9.6
gnu: Add ghc-nats-bootstrap-for-9.6
gnu: Add ghc-tagged-bootstrap-for-9.6
gnu: Add ghc-semigroups-bootstrap-for-9.6
gnu: Add ghc-base16-bytestring-bootstrap-for-9.6
gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6
gnu: Add ghc-unordered-containers-bootstrap-for-9.6
gnu: Add ghc-filepattern-bootstrap-for-9.6
gnu: Add ghc-shake-bootstrap-for-9.6
gnu: Add hadrian-for-ghc-9.6
gnu: Add ghc-9.6
gnu: ghc: Update to version 9.6.5
gnu/packages/haskell.scm | 731 +++++++++++++++++-
.../patches/ghc-9.4-testsuite-fixes.patch | 119 +++
2 files changed, 838 insertions(+), 12 deletions(-)
create mode 100644 gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
base-commit: 447e9c96259e8fa15a828de9b2dd3400e2ffafe6
--
2.41.0
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 01/23] gnu: ghc-next: Update to version 9.4.8
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (25 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-9.4): Update to version 9.4.8.
[native-inputs]<ghc-testsuite>: Add a patch to fix the testsuite.
(ghc-happy-bootstrap-for-9.4): Update to version 1.20.1.1.
* gnu/packages/patches/ghc-9.4-testsuite-fixes.patch: New patch.
Change-Id: I5ef72f83e5feed1defb706bafa934077fda1553c
---
gnu/packages/haskell.scm | 11 +-
.../patches/ghc-9.4-testsuite-fixes.patch | 119 ++++++++++++++++++
2 files changed, 125 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 6d8675d37e..25b21a0209 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1533,14 +1533,14 @@ (define ghc-happy-bootstrap-for-9.4
(hidden-package
(package
(name "ghc-happy")
- (version "1.20.0")
+ (version "1.20.1.1")
(source
(origin
(method url-fetch)
(uri (hackage-uri "happy" version))
(sha256
(base32
- "1346r2x5ravs5fqma65bzjragqbb2g6v41wz9maknwm2jf7kl79v"))))
+ "06w8g3lfk2ynrfhqznhp1mnp8a5b64lj6qviixpndzf5lv2psklb"))))
(build-system haskell-build-system)
(arguments
(list #:haskell ghc-bootstrap-for-9.4
@@ -1558,14 +1558,14 @@ (define-public ghc-9.4
(package
(inherit base)
(name "ghc-next")
- (version "9.4.4")
+ (version "9.4.8")
(source (origin
(method url-fetch)
(uri (string-append "https://www.haskell.org/ghc/dist/" version
"/ghc-" version "-src.tar.xz"))
(sha256
(base32
- "1qk7rlqf02s3b6m6sqqngmjq1mxnrz88h159lz6k25gddmdg5kp8"))))
+ "0pmqg9846lanb0hcyxhgr9ipzq33rfldxj7ln0j3qgpyczmhgx0b"))))
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:phases phases '%standard-phases)
@@ -1583,7 +1583,8 @@ (define-public ghc-9.4
version "/ghc-" version "-testsuite.tar.xz"))
(sha256
(base32
- "04p2lawxxg3nyv6frzhyjyh3arhqqyh5ka3alxa2pxhcd2hdcja3"))))
+ "159wsqnqpqb0pxa3zyhvyg07wxr2zz7v52h52wkplw4pn12dsidc"))
+ (patches (search-patches "ghc-9.4-testsuite-fixes.patch"))))
("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
,@(filter (match-lambda
diff --git a/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch b/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
new file mode 100644
index 0000000000..f394632add
--- /dev/null
+++ b/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
@@ -0,0 +1,119 @@
+From 3acd8aa948a27465cffc8e2ab56229485e2a5b98 Mon Sep 17 00:00:00 2001
+From: Saku Laesvuori <saku@laesvuori.fi>
+Date: Tue, 5 Dec 2023 22:49:45 +0200
+Subject: [PATCH] Fix tests
+
+* replaces egrep with grep -E
+* removes unnecessary escaping in some grep regular expressions
+* adds a missing include header to a makefile
+---
+ testsuite/tests/cabal/cabal01/Makefile | 2 +-
+ testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile | 4 ++++
+ testsuite/tests/haddock/perf/Makefile | 8 ++++----
+ testsuite/tests/hsc2hs/Makefile | 4 ++--
+ testsuite/tests/numeric/should_run/T7014.primops | 4 ++--
+ testsuite/tests/simplCore/should_compile/Makefile | 4 ++--
+ 6 files changed, 15 insertions(+), 11 deletions(-)
+
+diff --git a/testsuite/tests/cabal/cabal01/Makefile b/testsuite/tests/cabal/cabal01/Makefile
+index 004e4c75..6ec499c9 100644
+--- a/testsuite/tests/cabal/cabal01/Makefile
++++ b/testsuite/tests/cabal/cabal01/Makefile
+@@ -5,7 +5,7 @@ include $(TOP)/mk/test.mk
+ # Find all the env variables starting with CI_ to unset them.
+ # Otherwise, we might run into environment length limitations on Windows.
+ # (See `xargs --show-limits`.)
+-VARS_TO_UNSET := $(shell env | grep ^CI_ | egrep -o '^[^=]+')
++VARS_TO_UNSET := $(shell env | grep ^CI_ | grep -E -o '^[^=]+')
+ unexport $(VARS_TO_UNSET)
+
+ clean:
+diff --git a/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile b/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
+index fd64d23f..cb669db3 100644
+--- a/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
++++ b/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
+@@ -1,3 +1,7 @@
++TOP=../../../..
++include $(TOP)/mk/boilerplate.mk
++include $(TOP)/mk/test.mk
++
+ .PHONY: GHCiPrimCall
+ GHCiPrimCall:
+ '$(TEST_HC)' $(TEST_HC_OPTS) -fPIC -v0 -c GHCiPrimCall_cmm.cmm
+diff --git a/testsuite/tests/haddock/perf/Makefile b/testsuite/tests/haddock/perf/Makefile
+index b67b52f2..ff2f7ebb 100644
+--- a/testsuite/tests/haddock/perf/Makefile
++++ b/testsuite/tests/haddock/perf/Makefile
+@@ -4,12 +4,12 @@ include $(TOP)/mk/test.mk
+
+ # We accept a 5% increase in parser allocations due to -haddock
+ haddock_parser_perf :
+- WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Parser | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
+- WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Parser | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Parser | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Parser | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
+ awk "BEGIN { ratio = ($$WithHaddock / $$WithoutHaddock); if (ratio > 1.05) {print \"-haddock allocation ratio too high:\", ratio; exit 1} else {exit 0} }"
+
+ # Similarly for the renamer
+ haddock_renamer_perf :
+- WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Renamer | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
+- WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Renamer | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Renamer | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Renamer | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
+ awk "BEGIN { ratio = ($$WithHaddock / $$WithoutHaddock); if (ratio > 1.05) {print \"-haddock allocation ratio too high:\", ratio; exit 1} else {exit 0} }"
+diff --git a/testsuite/tests/hsc2hs/Makefile b/testsuite/tests/hsc2hs/Makefile
+index d0b2d249..95b011c8 100644
+--- a/testsuite/tests/hsc2hs/Makefile
++++ b/testsuite/tests/hsc2hs/Makefile
+@@ -52,9 +52,9 @@ T11004:
+ T12504:
+ '$(HSC2HS)' $(HSC2HS_OPTS) T12504/path/to/$@.hsc
+ ifeq "$(WINDOWS)" "YES"
+- grep '{-# LINE 1 \"T12504\\\\path\\\\to\\\\$@\.hsc\" #-}' T12504/path/to/$@.hs
++ grep '{-# LINE 1 "T12504\\\\path\\\\to\\\\$@\.hsc" #-}' T12504/path/to/$@.hs
+ else
+- grep '{-# LINE 1 \"T12504/path/to/$@\.hsc\" #-}' T12504/path/to/$@.hs
++ grep '{-# LINE 1 "T12504/path/to/$@\.hsc" #-}' T12504/path/to/$@.hs
+ endif
+
+ .PHONY: T15758
+diff --git a/testsuite/tests/numeric/should_run/T7014.primops b/testsuite/tests/numeric/should_run/T7014.primops
+index 3243666d..c807fb45 100644
+--- a/testsuite/tests/numeric/should_run/T7014.primops
++++ b/testsuite/tests/numeric/should_run/T7014.primops
+@@ -1,8 +1,8 @@
+ and#
+ or#
+ uncheckedShift.*#
+-\+#
+-\-#
+++#
++-#
+ \*#
+ quotInt#
+ remInt#
+diff --git a/testsuite/tests/simplCore/should_compile/Makefile b/testsuite/tests/simplCore/should_compile/Makefile
+index b5041800..c56e04f6 100644
+--- a/testsuite/tests/simplCore/should_compile/Makefile
++++ b/testsuite/tests/simplCore/should_compile/Makefile
+@@ -66,7 +66,7 @@ T13367:
+
+ T8832:
+ $(RM) -f T8832.o T8832.hi
+- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c -ddump-simpl -dsuppress-ticks T8832.hs | egrep '^[a-zA-Z0-9]+ ='
++ '$(TEST_HC)' $(TEST_HC_OPTS) -O -c -ddump-simpl -dsuppress-ticks T8832.hs | grep -E '^[a-zA-Z0-9]+ ='
+
+ T12603:
+ $(RM) -f T12603.o T12603.hi
+@@ -259,7 +259,7 @@ str-rules:
+ # g should have been collapsed into one defininition by CSE.
+ .PHONY: T13340
+ T13340:
+- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T13340.hs -ddump-simpl -dsuppress-all | grep -c '\+#'
++ '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T13340.hs -ddump-simpl -dsuppress-all | grep -c '+#'
+
+
+ # We expect to see all dictionaries specialized away.
+--
+2.41.0
+
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 02/23] gnu: Add ghc-js-flot-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (26 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-js-flot-bootstrap-for-9.6): New
variable.
Change-Id: Ie01768c263084a3aa38b7120de832913a80fc99a
---
gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 25b21a0209..3d7612bc61 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1599,4 +1599,34 @@ (define-public ghc-9.4
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
+;;; Bootstrap packages for hadrian, the new GHC build system
+
+(define ghc-bootstrap-for-9.6 ghc-9.4)
+
+(define ghc-js-flot-bootstrap-for-9.6
+ (package
+ (name "ghc-js-flot-bootstrap")
+ (version "0.8.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (hackage-uri "js-flot" version))
+ (sha256
+ (base32
+ "0yjyzqh3qzhy5h3nql1fckw0gcfb0f4wj9pm85nafpfqp2kg58hv"))))
+ (build-system haskell-build-system)
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (properties '((upstream-name . "js-flot")))
+ (home-page "https://github.com/ndmitchell/js-flot")
+ (synopsis "Obtain minified flot code")
+ (description "This package bundles the minified
+@url{http://www.flotcharts.org/, Flot} code (a jQuery plotting library)
+into a Haskell package, so it can be depended upon by Cabal packages.
+The first three components of the version number match the upstream flot
+version. The package is designed to meet the redistribution
+requirements of downstream users (e.g. Debian).")
+ (license license:expat)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 03/23] gnu: Add ghc-clock-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (27 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-clock-bootstrap-for-9.6): New
variable.
Change-Id: I78d0997ee749a0c1725490c99308dcd1dc5bfbe5
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 3d7612bc61..0f5cc323f8 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1629,4 +1629,25 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-clock-bootstrap-for-9.6
+ (package
+ (name "ghc-clock-bootstrap")
+ (version "0.8.3")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "clock" version))
+ (sha256
+ (base32
+ "1l850pf1dxjf3i15wc47d64gzkpzgvw0bq13fd8zvklq9kdyap44"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "clock")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/corsis/clock")
+ (synopsis "High-resolution clock for Haskell")
+ (description
+ "A package for convenient access to high-resolution clock and
+timer functions of different operating systems via a unified API.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 04/23] gnu: Add ghc-extra-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (28 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-extra-bootstrap-for-9.6): New
variable.
Change-Id: I73f1bd1a821bb01fc9d081c78313e583ce8fab6b
---
gnu/packages/haskell.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 0f5cc323f8..c2ce7d9e16 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1629,6 +1629,30 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-extra-bootstrap-for-9.6
+ (package
+ (name "ghc-extra-bootstrap")
+ (version "1.7.12")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "extra" version))
+ (sha256
+ (base32
+ "0g5h8fp0nq4k9asiknw0bhvb10zpfnsixfp0n3xz0rc83pnajwg5"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "extra")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-clock-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/extra#readme")
+ (synopsis "Extra Haskell functions")
+ (description
+ "This library provides extra functions for the standard
+Haskell libraries. Most functions are simple additions, filling out missing
+functionality. A few functions are available in later versions of GHC, but
+this package makes them available back to GHC 7.2.")
+ (license license:bsd-3)))
+
(define ghc-clock-bootstrap-for-9.6
(package
(name "ghc-clock-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 05/23] gnu: Add ghc-hashable-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (29 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-hashable-bootstrap-for-9.6): New
variable.
Change-Id: Id96f7df459a3db56747cd4204b32b7ad253139a4
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index c2ce7d9e16..bd30f2804d 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1674,4 +1674,27 @@ (define ghc-clock-bootstrap-for-9.6
timer functions of different operating systems via a unified API.")
(license license:bsd-3)))
+(define ghc-hashable-bootstrap-for-9.6
+ (package
+ (name "ghc-hashable-bootstrap")
+ (version "1.4.1.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "hashable" version))
+ (sha256
+ (base32
+ "11sycr73821amdz8g0k8c97igi4z7f9xdvgaxlkxhsp6h310bcz1"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "hashable")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (home-page "http://github.com/haskell-unordered-containers/hashable")
+ (synopsis "Class for types that can be converted to a hash value")
+ (description
+ "This package defines a class, @code{Hashable}, for types that can be
+converted to a hash value. This class exists for the benefit of hashing-based
+data structures. The package provides instances for basic types and a way to
+combine hash values.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 06/23] gnu: Add ghc-splitmix-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (30 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-splitmix-bootstrap-for-9.6): New
variable.
Change-Id: I65584aa893975015dc44491b120636844af801de
---
gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index bd30f2804d..3c3016f999 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1697,4 +1697,36 @@ (define ghc-hashable-bootstrap-for-9.6
combine hash values.")
(license license:bsd-3)))
+(define ghc-splitmix-bootstrap-for-9.6
+ (package
+ (name "ghc-splitmix-bootstrap")
+ (version "0.1.0.5")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "splitmix" version))
+ (sha256
+ (base32
+ "00ihw7vji8ydik7f5lk9iwj21j829lpl22wa4nqz2igg26b7mw4x"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "splitmix")))
+ (arguments
+ `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "http://hackage.haskell.org/package/splitmix")
+ (synopsis "Fast and splittable pseudorandom number generator")
+ (description
+ "This package provides a Pure Haskell implementation of the
+SplitMix pseudorandom number generator. SplitMix is a \"splittable\"
+pseudorandom number generator that is quite fast: 9 64-bit
+arithmetic/logical operations per 64 bits generated. SplitMix is tested
+with two standard statistical test suites (DieHarder and TestU01, this
+implementation only using the former) and it appears to be adequate for
+\"everyday\" use, such as Monte Carlo algorithms and randomized data
+structures where speed is important. In particular, it @strong{should not
+be used for cryptographic or security applications}, because generated
+sequences of pseudorandom values are too predictable (the mixing functions
+are easily inverted, and two successive outputs suffice to reconstruct the
+internal state).")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 07/23] gnu: Add ghc-random-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (31 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-random-bootstrap-for-9.6): New variable.
Change-Id: If1a39b27687a63a63dab5aa4c1a366a8ba78196a
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 3c3016f999..cb66e5d745 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1729,4 +1729,26 @@ (define ghc-splitmix-bootstrap-for-9.6
internal state).")
(license license:bsd-3)))
+(define ghc-random-bootstrap-for-9.6
+ (package
+ (name "ghc-random-bootstrap")
+ (version "1.2.1.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "random" version))
+ (sha256
+ (base32
+ "0xlv1k4sj87akwvj54kq4nrfkzi6qcz1941bf78pnkbaxpvp44iy"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "random")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-splitmix-bootstrap-for-9.6))
+ (home-page "http://hackage.haskell.org/package/random")
+ (synopsis "Random number library")
+ (description
+ "This package provides a basic random number generation
+library, including the ability to split random number generators.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 08/23] gnu: Add ghc-primitive-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (32 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-primitive-bootstrap-for-9.6): New
variable.
Change-Id: I393ff5f57862de0c6da118a803ed6f898adcf0cb
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index cb66e5d745..2212bd2cf6 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1751,4 +1751,27 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-primitive-bootstrap-for-9.6
+ (package
+ (name "ghc-primitive-bootstrap")
+ (version "0.8.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "primitive" version))
+ (sha256
+ (base32
+ "0pwr5g3bra5m2zjm14pj98klqj2qrjcfasgd3rcrp7vq98dw4lsm"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "primitive")))
+ (arguments
+ `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:cabal-revision ("1"
+ "0w1nf0rabgyk5q7ccw7va1mj6k50lswvikhi6vr2myb1dvx4bzyh")))
+ (home-page "https://github.com/haskell/primitive")
+ (synopsis "Primitive memory-related operations")
+ (description
+ "This package provides various primitive memory-related operations.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 09/23] gnu: Add ghc-js-jquery-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (33 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-js-jquery-bootstrap-for-9.6): New
variable.
Change-Id: I579efb04ad665f0938e24a9656f959abdd27905e
---
gnu/packages/haskell.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 2212bd2cf6..4482fdb0d3 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1751,6 +1751,32 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-js-jquery-bootstrap-for-9.6
+ (package
+ (name "ghc-js-jquery-bootstrap")
+ (version "3.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (hackage-uri "js-jquery" version))
+ (sha256
+ (base32
+ "16q68jzbs7kp07dnq8cprdcc8fd41rim38039vg0w4x11lgniq70"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "js-jquery")))
+ (arguments `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/js-jquery")
+ (synopsis "Obtain minified jQuery code")
+ (description "This package bundles the minified
+@url{http://jquery.com/, jQuery} code into a Haskell package, so it can
+be depended upon by Cabal packages. The first three components of the
+version number match the upstream jQuery version. The package is
+designed to meet the redistribution requirements of downstream
+users (e.g. Debian).")
+ (license license:expat)))
+
(define ghc-primitive-bootstrap-for-9.6
(package
(name "ghc-primitive-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 10/23] gnu: Add ghc-utf8-string-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (34 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-utf8-string-bootstrap-for-9.6): New
variable.
Change-Id: Iea2ba4d3202195a54b71037882352cdac9415901
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 4482fdb0d3..e9aa8f7524 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1751,6 +1751,28 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-utf8-string-bootstrap-for-9.6
+ (package
+ (name "ghc-utf8-string-bootstrap")
+ (version "1.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "utf8-string" version))
+ (sha256
+ (base32 "16mh36ffva9rh6k37bi1046pgpj14h0cnmj1iir700v0lynxwj7f"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "utf8-string")))
+ (arguments `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/glguy/utf8-string/")
+ (synopsis "Support for reading and writing UTF8 Strings")
+ (description
+ "A UTF8 layer for Strings. The utf8-string package provides operations
+for encoding UTF8 strings to Word8 lists and back, and for reading and writing
+UTF8 without truncation.")
+ (license license:bsd-3)))
+
(define ghc-js-jquery-bootstrap-for-9.6
(package
(name "ghc-js-jquery-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 11/23] gnu: Add ghc-heaps-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (35 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-heaps-bootstrap-for-9.6): New variable.
Change-Id: Ib04a47d3eacba415fd44cd532c18c02f8d9cf40b
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index e9aa8f7524..fd814a2346 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1751,6 +1751,27 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-heaps-bootstrap-for-9.6
+ (package
+ (name "ghc-heaps-bootstrap")
+ (version "0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "heaps" version))
+ (sha256
+ (base32 "1zbw0qrlnhb42v04phzwmizbpwg21wnpl7p4fbr9xsasp7w9scl9"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "heaps")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "http://github.com/ekmett/heaps/")
+ (synopsis "Asymptotically optimal Brodal/Okasaki heaps.")
+ (description
+ "Asymptotically optimal Brodal\\/Okasaki bootstrapped skew-binomial heaps from the
+paper <http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.48.973 \"Optimal
+Purely Functional Priority Queues\">, extended with a Foldable interface.")
+ (license license:bsd-3)))
+
(define ghc-utf8-string-bootstrap-for-9.6
(package
(name "ghc-utf8-string-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 12/23] gnu: Add ghc-js-dgtable-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (36 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-js-dgtable-bootstrap-for-9.6): New
variable.
Change-Id: Ic7e9e6c584e4fb8830ec55288759796271822964
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index fd814a2346..e4e4fe5cf6 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1751,6 +1751,29 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-js-dgtable-bootstrap-for-9.6
+ (package
+ (name "ghc-js-dgtable-bootstrap")
+ (version "0.5.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "js-dgtable" version))
+ (sha256
+ (base32 "1b10kx703kbkb5q1ggdpqcrxqjb33kh24khk21rb30w0xrdxd3g2"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "js-dgtable")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/js-dgtable#readme")
+ (synopsis "Obtain minified jquery.dgtable code")
+ (description
+ "This package bundles the minified <https://github.com/danielgindi/jquery.dgtable
+jquery.dgtable> code into a Haskell package, so it can be depended upon by Cabal
+packages. The first three components of the version number match the upstream
+jquery.dgtable version. The package is designed to meet the redistribution
+requirements of downstream users (e.g. Debian).")
+ (license license:expat)))
+
(define ghc-heaps-bootstrap-for-9.6
(package
(name "ghc-heaps-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 13/23] gnu: Add ghc-nats-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (37 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-nats-bootstrap-for-9.6): New variable.
Change-Id: I57351e88ba0bc52e7fd5fefc5c3006f63925fd86
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index e4e4fe5cf6..d3517d2740 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1751,6 +1751,28 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-nats-bootstrap-for-9.6
+ (package
+ (name "ghc-nats-bootstrap")
+ (version "1.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "nats" version))
+ (sha256
+ (base32
+ "1v40drmhixck3pz3mdfghamh73l4rp71mzcviipv1y8jhrfxilmr"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "nats")))
+ (arguments `(#:haddock? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (inputs
+ (list ghc-hashable-bootstrap-for-9.6))
+ (home-page "https://hackage.haskell.org/package/nats")
+ (synopsis "Natural numbers")
+ (description "This library provides the natural numbers for Haskell.")
+ (license license:bsd-3)))
+
(define ghc-js-dgtable-bootstrap-for-9.6
(package
(name "ghc-js-dgtable-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 14/23] gnu: Add ghc-tagged-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (38 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-tagged-bootstrap-for-9.6): New variable.
Change-Id: Ifd3996a62cfa33d155315807d4ead706f7e64452
---
gnu/packages/haskell.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index d3517d2740..970934dad8 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1751,6 +1751,26 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-tagged-bootstrap-for-9.6
+ (package
+ (name "ghc-tagged-bootstrap")
+ (version "0.8.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "tagged" version))
+ (sha256
+ (base32
+ "0qdr1kv1zn5iamnwyn5nf0ywxs4wv779k0gpw94kyqx14ynfw534"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "tagged")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://hackage.haskell.org/package/tagged")
+ (synopsis "Haskell phantom types to avoid passing dummy arguments")
+ (description "This library provides phantom types for Haskell 98, to avoid
+having to unsafely pass dummy arguments.")
+ (license license:bsd-3)))
+
(define ghc-nats-bootstrap-for-9.6
(package
(name "ghc-nats-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 15/23] gnu: Add ghc-semigroups-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (39 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-semigroups-bootstrap-for-9.6): New
variable.
Change-Id: Ic676fed80bea3805f8e70cd958c3d7523226053d
---
gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 970934dad8..9a66b6d225 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1751,6 +1751,36 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-semigroups-bootstrap-for-9.6
+ (package
+ (name "ghc-semigroups-bootstrap")
+ (version "0.20")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "semigroups" version))
+ (sha256
+ (base32
+ "1qbk6scp1rzb69dy8mz26p6az5vi16g2lzwmwnfshh3br4rjwbch"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "semigroups")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (inputs
+ (list ghc-nats-bootstrap-for-9.6
+ ghc-tagged-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ ghc-hashable-bootstrap-for-9.6))
+ (home-page "http://github.com/ekmett/semigroups/")
+ (synopsis "Semigroup operations for Haskell")
+ (description
+ "This package provides semigroups for Haskell. In
+mathematics, a semigroup is an algebraic structure consisting of a set
+together with an associative binary operation. A semigroup generalizes a
+monoid in that there might not exist an identity element. It
+also (originally) generalized a group (a monoid with all inverses) to a type
+where every element did not have to have an inverse, thus the name
+semigroup.")
+ (license license:bsd-3)))
+
(define ghc-tagged-bootstrap-for-9.6
(package
(name "ghc-tagged-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 16/23] gnu: Add ghc-base16-bytestring-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (40 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-base16-bytestring-bootstrap-for-9.6):
New variable.
Change-Id: I7c20bdfd7600fb2bed5de497e02acda74b242fec
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 9a66b6d225..eb4d546ad4 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1629,6 +1629,27 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-base16-bytestring-bootstrap-for-9.6
+ (package
+ (name "ghc-base16-bytestring-bootstrap")
+ (version "1.0.2.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "base16-bytestring" version))
+ (sha256
+ (base32
+ "1167f9jaivnabn6kg2gc421ac9njb67fr4v0adbj3qph7qa92nhx"))))
+ (build-system haskell-build-system)
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (properties '((upstream-name . "base16-bytestring")))
+ (home-page "http://github.com/haskell/base16-bytestring")
+ (synopsis "Fast base16 (hex) encoding and decoding for ByteStrings")
+ (description
+ "This package provides a Haskell library for working with base16-encoded
+data quickly and efficiently, using the ByteString type.")
+ (license license:bsd-3)))
+
(define ghc-extra-bootstrap-for-9.6
(package
(name "ghc-extra-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 17/23] gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (41 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-cryptohash-sha256-bootstrap-for-9.6):
New variable.
Change-Id: I80dd73de554160f4dc904c01ea292a886f51e970
---
gnu/packages/haskell.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index eb4d546ad4..9afe9a5382 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1629,6 +1629,35 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-cryptohash-sha256-bootstrap-for-9.6
+ (package
+ (name "ghc-cryptohash-sha256-bootstrap")
+ (version "0.11.102.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "cryptohash-sha256" version))
+ (sha256
+ (base32
+ "1xkb7iqplbw4fy1122p79xf1zcb7k44rl0wmfj1q06l7cdqxr9vk"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "cryptohash-sha256")))
+ (arguments
+ `(#:cabal-revision
+ ("1" "1hyzqv30rpj920ddnr0zypyjjlh52vyp2d140pn2byayj820rkgs")
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:tests? #f))
+ (home-page "https://github.com/hvr/cryptohash-sha1")
+ (synopsis "SHA-256 implementation for Haskell")
+ (description "This Haskell package provides an incremental and
+one-pass, pure API to the @uref{https://en.wikipedia.org/wiki/SHA-2,
+SHA-256 cryptographic hash algorithm}, with performance close to the
+fastest implementations available in other languages.
+
+The implementation is made in C with a haskell FFI wrapper that hides
+the C implementation.")
+ (license license:bsd-3)))
+
(define ghc-base16-bytestring-bootstrap-for-9.6
(package
(name "ghc-base16-bytestring-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 18/23] gnu: Add ghc-unordered-containers-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (42 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-unordered-containers-bootstrap-for-9.6):
New variable.
Change-Id: I190d7e765d30b469290d26109478fbe97dfbe3ae
---
gnu/packages/haskell.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 9afe9a5382..c2e5391fea 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1629,6 +1629,33 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-unordered-containers-bootstrap-for-9.6
+ (package
+ (name "ghc-unordered-containers-bootstrap")
+ (version "0.2.19.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "unordered-containers" version))
+ (sha256
+ (base32
+ "1li8s6qw8mgv6a7011y7hg0cn2nllv2g9sr9c1xb48nmw32vw9qv"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "unordered-containers")))
+ (inputs (list ghc-hashable-bootstrap-for-9.6))
+ (arguments
+ `(#:cabal-revision ("3"
+ "1p9a2mvfbfz2d4cyr16b03bxvb6c4yj7k1ch601xwq1rkr1cla0w")
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:tests? #f))
+ (home-page
+ "https://github.com/haskell-unordered-containers/unordered-containers")
+ (synopsis "Efficient hashing-based container types")
+ (description
+ "Efficient hashing-based container types. The containers have been
+optimized for performance critical use, both in terms of large data quantities
+and high speed.")
+ (license license:bsd-3)))
+
(define ghc-cryptohash-sha256-bootstrap-for-9.6
(package
(name "ghc-cryptohash-sha256-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 19/23] gnu: Add ghc-filepattern-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (43 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-filepattern-bootstrap-for-9.6): New
variable.
Change-Id: I3778f85d7a14474445295ebd6bbb1f4bfbe4f6d5
---
gnu/packages/haskell.scm | 41 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index c2e5391fea..b2d874e330 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1629,6 +1629,47 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-filepattern-bootstrap-for-9.6
+ (package
+ (name "ghc-filepattern-bootstrap")
+ (version "0.1.3")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "filepattern" version))
+ (sha256
+ (base32
+ "0dlnwnwhsfdkwm69z66wj5d2x9n3la55glq4fsn5rxm2kr1msi6c"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "filepattern")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-extra-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/filepattern#readme")
+ (synopsis "File path glob-like matching")
+ (description
+ "This package provides Haskell library for matching files using patterns
+such as @code{\\\"src\\/**\\/*.png\\\"} for all @@file{.png} files recursively
+under the @@file{src} directory.
+
+Some of its features include:
+
+@itemize
+@item All matching is O(n).
+
+@item Most functions pre-compute some information given only one argument.
+
+@item Uses @code{match} and @code{substitute} to extract suitable strings from
+the @code{*} and @code{**} matches, and substitutes them back into other
+patterns.
+
+@item Uses @code{step} and @code{matchMany} to perform bulk matching of many
+patterns against many paths simultaneously.
+
+@item Uses @code{System.FilePattern.Directory} to perform optimised directory
+traverals using patterns.
+@end itemize")
+ (license license:bsd-3)))
+
(define ghc-unordered-containers-bootstrap-for-9.6
(package
(name "ghc-unordered-containers-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 20/23] gnu: Add ghc-shake-bootstrap-for-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (44 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-shake-bootstrap-for-9.6): New variable.
Change-Id: I195bc5f779709ef7b2ccefe2271402ef342bc0b8
---
gnu/packages/haskell.scm | 56 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index b2d874e330..fb20f3e2a3 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1603,6 +1603,62 @@ (define-public ghc-9.4
(define ghc-bootstrap-for-9.6 ghc-9.4)
+(define ghc-shake-bootstrap-for-9.6
+ (package
+ (name "ghc-shake-bootstrap")
+ (version "0.19.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "shake" version))
+ (sha256
+ (base32 "1lcr6q53qwm308bny6gfawcjhxsmalqi3dnwckam02zp2apmcaim"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "shake")))
+ (inputs (list bash-minimal
+ ghc-extra-bootstrap-for-9.6
+ ghc-filepattern-bootstrap-for-9.6
+ ghc-hashable-bootstrap-for-9.6
+ ghc-heaps-bootstrap-for-9.6
+ ghc-js-dgtable-bootstrap-for-9.6
+ ghc-js-flot-bootstrap-for-9.6
+ ghc-js-jquery-bootstrap-for-9.6
+ ghc-primitive-bootstrap-for-9.6
+ ghc-random-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ ghc-utf8-string-bootstrap-for-9.6
+ ghc-semigroups-bootstrap-for-9.6))
+ (arguments
+ (list #:cabal-revision '("1"
+ "1hz57kw5pp5cpbicbi7x8sz8c6qy58dzyiljz9b9f2r1rr683d9w")
+ #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'patch-source-shebangs 'patch-/bin/sh
+ (lambda _
+ (for-each
+ (lambda (file)
+ (substitute*
+ file
+ (("/bin/sh")
+ #$(file-append (this-package-input "bash-minimal")
+ "/bin/sh"))))
+ '("src/Development/Shake/Command.hs")))))))
+ (home-page "https://shakebuild.com")
+ (synopsis
+ "Build system library, like Make, but more accurate dependencies.")
+ (description
+ "Shake is a Haskell library for writing build systems - designed as a
+replacement for @@make@@. To use Shake the user writes a Haskell program that
+imports \"Development.Shake\", defines some build rules, and calls the
+Development.Shake.@code{shakeArgs} function. However, as build systems get more
+complex, Shake is able to take advantage of the excellent abstraction facilities
+offered by Haskell and easily support much larger projects. Shake also provides more
+accurate dependency tracking, including seamless support for generated files, and
+dependencies on system information (e.g. compiler version).")
+ (license license:bsd-3)))
+
(define ghc-js-flot-bootstrap-for-9.6
(package
(name "ghc-js-flot-bootstrap")
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 21/23] gnu: Add hadrian-for-ghc-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (45 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (hadrian-for-ghc-9.6): New variable.
Change-Id: I4205c888afa7b03b4b1622a3af7d1d538fa5c9b1
---
gnu/packages/haskell.scm | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index fb20f3e2a3..5070833a94 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -2112,4 +2112,44 @@ (define ghc-primitive-bootstrap-for-9.6
"This package provides various primitive memory-related operations.")
(license license:bsd-3)))
+(define hadrian-for-ghc-9.6
+ (package
+ (name "hadrian")
+ (version "9.6.4")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://www.haskell.org/ghc/dist/" version
+ "/ghc-" version "-src.tar.xz"))
+ (sha256
+ (base32
+ "1h6lpx8kd4xycjwb8iv2rgnz23kwq5b0qp4bhvczsx3in2w2bgqh"))))
+ (build-system haskell-build-system)
+ (inputs
+ (list ghc-base16-bytestring-bootstrap-for-9.6
+ ghc-cryptohash-sha256-bootstrap-for-9.6
+ ghc-extra-bootstrap-for-9.6
+ ghc-shake-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ bash-minimal))
+ (arguments
+ (list #:configure-flags ''("--flags=-selftest")
+ #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'cd-to-hadrian
+ (lambda _
+ (chdir "hadrian")))
+ (add-after 'cd-to-hadrian 'fix-shell-wrappers
+ (lambda _
+ (substitute*
+ "src/Rules/Test.hs"
+ (("\"#!/bin/sh\"")
+ (format #f "\"#!~a/bin/sh\"" #$(this-package-input "bash-minimal")))))))))
+ (home-page "https://gitlab.haskell.org/ghc/ghc/-/tree/master/hadrian")
+ (synopsis "Build system for the Glasgow Haskell Compiler (@code{ghc})")
+ (description "Hadrian is the build system for the Glasgow Haskell Compiler.
+It is based on the Shake library and replaces @{make} in building GHC")
+ (license license:expat)))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 22/23] gnu: Add ghc-9.6
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (46 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc-9.6): New variable.
Change-Id: I6883ed973bdd1d6eaf981605c1bc8f855f850187
---
gnu/packages/haskell.scm | 157 ++++++++++++++++++++++++++++++++++++++-
1 file changed, 155 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 5070833a94..158bdd41bd 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -2115,14 +2115,14 @@ (define ghc-primitive-bootstrap-for-9.6
(define hadrian-for-ghc-9.6
(package
(name "hadrian")
- (version "9.6.4")
+ (version "9.6.5")
(source (origin
(method url-fetch)
(uri (string-append "https://www.haskell.org/ghc/dist/" version
"/ghc-" version "-src.tar.xz"))
(sha256
(base32
- "1h6lpx8kd4xycjwb8iv2rgnz23kwq5b0qp4bhvczsx3in2w2bgqh"))))
+ "0g5r68j788i6lbx71xpws4xb7nn871rpa8ji41na5hcq9y98kcw7"))))
(build-system haskell-build-system)
(inputs
(list ghc-base16-bytestring-bootstrap-for-9.6
@@ -2152,4 +2152,157 @@ (define hadrian-for-ghc-9.6
It is based on the Shake library and replaces @{make} in building GHC")
(license license:expat)))
+(define-public ghc-9.6
+ (let ((base ghc-9.4))
+ (package
+ (inherit base)
+ (name "ghc-next")
+ (version "9.6.5")
+ (source (origin
+ (inherit (package-source base))
+ (uri (string-append "https://www.haskell.org/ghc/dist/" version
+ "/ghc-" version "-src.tar.xz"))
+ (sha256
+ (base32
+ "0g5r68j788i6lbx71xpws4xb7nn871rpa8ji41na5hcq9y98kcw7"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:make-flags flags ''())
+ #~(list "-V" "--docs=no-sphinx"))
+ ((#:phases phases '%standard-phases)
+ #~(let* ((run-hadrian (lambda args
+ (apply invoke "hadrian" args))))
+ (modify-phases #$phases
+ (delete 'fix-shell-wrappers)
+ ;; https://gitlab.haskell.org/ghc/ghc/-/issues/22557
+ (replace 'fix-lib-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute*
+ (list "libraries/process/System/Process/Posix.hs"
+ "libraries/unix/cbits/execvpe.c")
+ (("/bin/sh") (search-input-file inputs "/bin/sh")))))
+ (add-before 'build 'fix-iserv-rpath
+ (lambda _
+ (mkdir-p "_build")
+ (call-with-output-file
+ "_build/hadrian.settings"
+ (lambda (port)
+ (display
+ (string-append
+ "*.iserv.ghc.link.opts += -optl-Wl,-rpath,"
+ #$output "/lib/ghc-" #$(package-version this-package)
+ "/lib/" #$(or (%current-target-system)
+ (%current-system))
+ "-ghc-" #$(package-version this-package) "/")
+ port)))))
+ (replace 'build
+ (lambda* (#:key (parallel-build? #f) (make-flags '())
+ #:allow-other-keys)
+ (apply run-hadrian
+ `("binary-dist-dir"
+ ,@(if parallel-build?
+ `(,(string-append "-j" (number->string (parallel-job-count))))
+ '())
+ ,@make-flags))))
+ (replace 'check
+ (lambda* (#:key (tests? #t) (parallel-tests? #f) (make-flags '()) #:allow-other-keys)
+ (if tests?
+ (apply run-hadrian
+ `(,@(if parallel-tests?
+ `(,(string-append "-j" (number->string (parallel-job-count))))
+ '())
+ ,@make-flags
+ "test"
+ ,(string-append "--broken-test="
+ (string-join
+ (list "bkpcabal01"
+ "cabal01"
+ "cabal06"
+ "cabal08"
+ "haddock_parser_perf"
+ "haddock_renamer_perf"
+ "package-imports-20779"
+ "plugins01"
+ "plugins08"
+ "plugins10"
+ "recomp007"
+ "recompChangedPackage"
+ "recompPkgLink"
+ "recompPluginPackage"
+ "recompTHpackage"
+ "T10420"
+ "T10458"
+ "T12504"
+ "T13340"
+ "T1372"
+ "T14304"
+ "T16219"
+ "T20218b"
+ "T22333"
+ "T3007"
+ "T7014"
+ "T8832"
+ "test-defaulting-plugin"
+ "plugin-recomp-change"
+ "plugin-recomp-change-2"
+ "plugin-recomp-change-prof"
+ "plugin-recomp-flags"
+ "plugin-recomp-impure"
+ "plugin-recomp-pure"
+ "plugins-order"
+ "plugins-order-pragma"
+ "T15633a"
+ "T15633b"
+ "T15858"
+ "T20417")))
+ "--skip-perf"))
+ (format #t "test suite not run~%"))))
+ (replace 'install
+ (lambda* (#:key (make-flags '()) #:allow-other-keys)
+ (apply run-hadrian
+ `("install"
+ ,@make-flags
+ ,(string-append "--prefix=" #$output)))))
+ (add-after 'install 'replace-$pkgroot
+ (lambda _
+ (substitute*
+ (find-files
+ (string-append #$output "/lib/ghc-"
+ #$(package-version this-package)
+ "/lib/package.conf.d/")
+ "^.*\\.conf$")
+ (("\\$\\{pkgroot\\}/")
+ (string-append #$output "/lib/ghc-"
+ #$(package-version this-package)
+ "/lib/"))))))))))
+ (inputs (list bash-minimal gmp ncurses libffi))
+ (native-inputs
+ `(("perl" ,perl)
+ ("python" ,python)
+ ("git" ,git-minimal/pinned)
+ ("which" ,which)
+ ("ghostscript" ,ghostscript)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+
+ ("hadrian" ,hadrian-for-ghc-9.6)
+ ("ghc-bootstrap" ,ghc-bootstrap-for-9.6)
+ ("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
+ ("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
+ ("ghc-testsuite"
+ ,(origin
+ (method url-fetch)
+ (uri (string-append
+ "https://www.haskell.org/ghc/dist/"
+ version "/ghc-" version "-testsuite.tar.xz"))
+ (sha256
+ (base32
+ "0k521601lgbs03ii66nb6y1y9327x4965zz3niyr3xswjx4dz8yw"))))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GHC_PACKAGE_PATH")
+ (files (list (string-append "lib/ghc-" version)))
+ (file-pattern ".*\\.conf\\.d$")
+ (file-type 'directory)))))))
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 23/23] gnu: ghc: Update to version 9.6.5
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
` (47 preceding siblings ...)
(?)
@ 2024-06-07 7:49 ` Saku Laesvuori via Guix-patches via
-1 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-07 7:49 UTC (permalink / raw)
To: 67921; +Cc: Saku Laesvuori, Lars-Dominik Braun
* gnu/packages/haskell.scm (ghc): Update to ghc-9.6
Change-Id: I40da6cacc4d260902cd66d7d626375038fba4346
---
gnu/packages/haskell.scm | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 158bdd41bd..e8ec1eb3ae 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1488,12 +1488,6 @@ (define-public ghc-9.2
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
-;; Versions newer than ghc defined below (i.e. the compiler
-;; haskell-build-system uses) should use ghc-next as their name to
-;; ensure ghc (without version specification) and ghc-* packages are
-;; always compatible. See https://issues.guix.gnu.org/issue/47335.
-(define-public ghc ghc-9.2)
-
;; 9.4 is the last version to support the make-based build system,
;; but it boot with 9.2, only 9.0 is supported.
(define ghc-bootstrap-for-9.4 ghc-9.0)
@@ -1557,7 +1551,7 @@ (define-public ghc-9.4
(let ((base ghc-9.2))
(package
(inherit base)
- (name "ghc-next")
+ (name "ghc")
(version "9.4.8")
(source (origin
(method url-fetch)
@@ -2156,7 +2150,7 @@ (define-public ghc-9.6
(let ((base ghc-9.4))
(package
(inherit base)
- (name "ghc-next")
+ (name "ghc")
(version "9.6.5")
(source (origin
(inherit (package-source base))
@@ -2305,4 +2299,10 @@ (define-public ghc-9.6
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
+;; Versions newer than ghc defined below (i.e. the compiler
+;; haskell-build-system uses) should use ghc-next as their name to
+;; ensure ghc (without version specification) and ghc-* packages are
+;; always compatible. See https://issues.guix.gnu.org/issue/47335.
+(define-public ghc ghc-9.6)
+
;;; haskell.scm ends here
--
2.41.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 00/23] Update GHC to 9.6.5
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 00/23] Update GHC to 9.6.5 Saku Laesvuori via Guix-patches via
@ 2024-06-14 13:55 ` Lars-Dominik Braun
2024-06-27 20:24 ` Saku Laesvuori via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Lars-Dominik Braun @ 2024-06-14 13:55 UTC (permalink / raw)
To: Saku Laesvuori; +Cc: 67921
Hi,
> I didn't hear any ideas for a better solution, so here is a patch set
> with the failing tests disabled. The current haskell-team merge should
> probably be continued without this series and a new one started from
> these patches.
perhaps, instead of disabling working tests, we can just patch line
370 of testsuite/driver/runtests.py to not use a directory with
spaces? Maybe it’s just a test system failure? I tried compiling
a simple Hello World Haskell program in a directory with spaces and
that worked.
Lars
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH haskell-team 00/23] Update GHC to 9.6.5
2024-06-14 13:55 ` Lars-Dominik Braun
@ 2024-06-27 20:24 ` Saku Laesvuori via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-06-27 20:24 UTC (permalink / raw)
To: Lars-Dominik Braun; +Cc: 67921
[-- Attachment #1: Type: text/plain, Size: 906 bytes --]
On Fri, Jun 14, 2024 at 03:55:48PM +0200, Lars-Dominik Braun wrote:
> Hi,
>
> > I didn't hear any ideas for a better solution, so here is a patch set
> > with the failing tests disabled. The current haskell-team merge should
> > probably be continued without this series and a new one started from
> > these patches.
>
> perhaps, instead of disabling working tests, we can just patch line
> 370 of testsuite/driver/runtests.py to not use a directory with
> spaces? Maybe it’s just a test system failure?
I tried patching that line with a trivial `(substitute* ... (("test
spaces") ""))` snippet and it does fix all but 7 failures. The remaining
ones could just be caused by some simple egrep vs grep -E warnings, but
I will have very little time to look into this during the next six
weeks. Anyone interested should feel free to try finalizing this series
in the meantime.
- Saku
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update.
2023-12-20 7:10 [bug#67921] [PATCH haskell-team 1/3] gnu: ghc-next: Update to version 9.4.8 Saku Laesvuori via Guix-patches via
` (3 preceding siblings ...)
2024-02-15 17:05 ` [bug#67921] [WIP PATCH v2 00/23] Update GHC to 9.6.4 Suhail via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39 Nicolas Graves via Guix-patches via
` (23 more replies)
4 siblings, 24 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: Nicolas Graves, dev, lars, saku
Hi! Such a long rabbithole to update pandoc, but I think I managed to
find a way to make the last errors disappear. It however includes a
lot of earlier GHC rebuilds, so it could be a fix added only for 9.4.8
instead of on earlier versions of GHC too. I haven't rebuilt
everything from the ground up myself, but have tested this fix on
8.6.5.
I add Josselin to the cc loop since it's a rewrite of one of its
patches durign the last core-updates.
Nicolas Graves (1):
gnu: ghc: More robust build with binutils ≥ 2.39.
Saku Laesvuori (23):
gnu: ghc-next: Update to version 9.4.8
gnu: Add ghc-js-flot-bootstrap-for-9.6
gnu: Add ghc-clock-bootstrap-for-9.6
gnu: Add ghc-extra-bootstrap-for-9.6
gnu: Add ghc-hashable-bootstrap-for-9.6
gnu: Add ghc-splitmix-bootstrap-for-9.6
gnu: Add ghc-random-bootstrap-for-9.6
gnu: Add ghc-primitive-bootstrap-for-9.6
gnu: Add ghc-js-jquery-bootstrap-for-9.6
gnu: Add ghc-utf8-string-bootstrap-for-9.6
gnu: Add ghc-heaps-bootstrap-for-9.6
gnu: Add ghc-js-dgtable-bootstrap-for-9.6
gnu: Add ghc-nats-bootstrap-for-9.6
gnu: Add ghc-tagged-bootstrap-for-9.6
gnu: Add ghc-semigroups-bootstrap-for-9.6
gnu: Add ghc-base16-bytestring-bootstrap-for-9.6
gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6
gnu: Add ghc-unordered-containers-bootstrap-for-9.6
gnu: Add ghc-filepattern-bootstrap-for-9.6
gnu: Add ghc-shake-bootstrap-for-9.6
gnu: Add hadrian-for-ghc-9.6
gnu: Add ghc-9.6
gnu: ghc: Update to version 9.6.4
gnu/local.mk | 1 -
gnu/packages/haskell.scm | 712 +++++++++++++++++-
.../patches/ghc-9.4-testsuite-fixes.patch | 119 +++
.../ghc-testsuite-recomp015-execstack.patch | 10 -
4 files changed, 805 insertions(+), 37 deletions(-)
create mode 100644 gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
delete mode 100644 gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch
--
2.46.0
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 14:02 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 02/24] gnu: ghc-next: Update to version 9.4.8 Nicolas Graves via Guix-patches via
` (22 subsequent siblings)
23 siblings, 1 reply; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: Nicolas Graves, dev, lars, saku
Future versions of ghc will have more occurrences of the execstack
warning. Instead of modifying the tests for each new version, a more
robust approach is to explicitely make ghc pass -Wl,-z,noexecstack to
its ld invocations during all tests. This is what this patch does.
* gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch: New patches.
* gnu/local.mk (disp_path_DATA): Deregister patch.
* gnu/packages/haskell.scm (ghc-8.6, ghc-8.8, ghc-9.0, ghc-9.2,
ghc-9.4): Deregister patch use. Add phase 'fix-tests-with-binutils@2.39.
---
gnu/local.mk | 1 -
gnu/packages/haskell.scm | 24 ++++++++++---------
.../ghc-testsuite-recomp015-execstack.patch | 10 --------
3 files changed, 13 insertions(+), 22 deletions(-)
delete mode 100644 gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index b0b3d2ea2b..2292577c86 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1381,7 +1381,6 @@ dist_patch_DATA = \
%D%/packages/patches/ghc-basement-fix-32-bit.patch \
%D%/packages/patches/ghc-testsuite-dlopen-pie.patch \
%D%/packages/patches/ghc-testsuite-grep-compat.patch \
- %D%/packages/patches/ghc-testsuite-recomp015-execstack.patch \
%D%/packages/patches/ghc-aeson-encodeDouble.patch \
%D%/packages/patches/ghc-basement-fix-32bit.patch \
%D%/packages/patches/ghc-bytestring-handle-ghc9.patch \
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 10803f5afe..c580c660f1 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1174,8 +1174,7 @@ (define-public ghc-8.6
"https://www.haskell.org/ghc/dist/"
version "/" name "-" version "-testsuite.tar.xz"))
(patches (search-patches "ghc-testsuite-dlopen-pie.patch"
- "ghc-testsuite-grep-compat.patch"
- "ghc-testsuite-recomp015-execstack.patch"))
+ "ghc-testsuite-grep-compat.patch"))
(sha256
(base32
"0pw9r91g2np3i806g2f4f8z4jfdd7mx226cmdizk4swa7av1qf91"))
@@ -1229,7 +1228,14 @@ (define-public ghc-8.6
(substitute* "libraries/unix/tests/all.T"
(("^test\\('T8108'") "# guix skipped: test('T8108'"))
(substitute* "libraries/unix/tests/libposix/all.T"
- (("^test\\('posix010'") "# guix skipped: test('posix010'"))))))))
+ (("^test\\('posix010'") "# guix skipped: test('posix010'"))))
+ ;; binutils@2.39 warns for execstack deprecation by default, causing
+ ;; some tests to fail ; explicitely disable during linking instead.
+ (add-after 'unpack-testsuite 'fix-tests-with-binutils@2.39
+ (lambda _
+ (substitute* "testsuite/mk/test.mk"
+ (("^TEST_HC_OPTS = ")
+ "TEST_HC_OPTS = -optl -Wl,-z,noexecstack "))))))))
(native-search-paths (list (search-path-specification
(variable "GHC_PACKAGE_PATH")
(files (list
@@ -1257,8 +1263,7 @@ (define-public ghc-8.8
"https://www.haskell.org/ghc/dist/"
version "/ghc-" version "-testsuite.tar.xz"))
(patches (search-patches "ghc-testsuite-dlopen-pie.patch"
- "ghc-testsuite-grep-compat.patch"
- "ghc-testsuite-recomp015-execstack.patch"))
+ "ghc-testsuite-grep-compat.patch"))
(sha256
(base32
"0c55pj2820q26rikhpf636sn4mjgqsxjrl94vsywrh79dxp3k14z"))
@@ -1317,8 +1322,7 @@ (define-public ghc-8.10
"https://www.haskell.org/ghc/dist/"
version "/ghc-" version "-testsuite.tar.xz"))
(patches (search-patches "ghc-testsuite-dlopen-pie.patch"
- "ghc-testsuite-grep-compat.patch"
- "ghc-testsuite-recomp015-execstack.patch"))
+ "ghc-testsuite-grep-compat.patch"))
(sha256
(base32
"1zl25gg6bpx5601k8h3cqnns1xfc0nqgwnh8jvn2s65ra3f2g1nz"))
@@ -1415,8 +1419,7 @@ (define-public ghc-9.0
(sha256
(base32
"1m5fzhr4gjn9ni8gxx7ag3fkbw1rspjzgv39mnfb0nkm5mw70v3s"))
- (patches (search-patches "ghc-9.2-grep-warnings.patch"
- "ghc-testsuite-recomp015-execstack.patch"))
+ (patches (search-patches "ghc-9.2-grep-warnings.patch"))
(modules '((guix build utils)))
(snippet
;; collections.Iterable was moved to collections.abc in Python 3.10.
@@ -1481,8 +1484,7 @@ (define-public ghc-9.2
(sha256
(base32
"0cmmwhcwv9fjzvmgjj85d354858qqbmqfzaz5160xqj4yl9zk225"))
- (patches (search-patches "ghc-9.2-grep-warnings.patch"
- "ghc-testsuite-recomp015-execstack.patch"))))
+ (patches (search-patches "ghc-9.2-grep-warnings.patch"))))
,@(filter (match-lambda
(("ghc-bootstrap" . _) #f)
(("ghc-testsuite" . _) #f)
diff --git a/gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch b/gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch
deleted file mode 100644
index cdaf5b180d..0000000000
--- a/gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/testsuite/tests/driver/recomp015/Makefile 2024-01-13 16:22:42.643106725 +0100
-+++ b/testsuite/tests/driver/recomp015/Makefile 2024-01-13 16:23:18.406867917 +0100
-@@ -26,6 +26,7 @@
- # number of sections)
- '$(TEST_HC)' $(TEST_HC_OPTS) Generate.hs
- ./Generate > ManySections.s
-+ echo '.section .note.GNU-stack,"",@progbits' > ManySections.s
- echo 'main = putStrLn "Running main..."' > Main.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c ManySections.s
- '$(TEST_HC)' $(TEST_HC_OPTS) --make -O Main.hs ManySections.o
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 02/24] gnu: ghc-next: Update to version 9.4.8
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 03/24] gnu: Add ghc-js-flot-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (21 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-9.4): Update to version 9.4.8.
[native-inputs]<ghc-testsuite>: Add a patch to fix the testsuite.
(ghc-happy-bootstrap-for-9.4): Update to version 1.20.1.1.
* gnu/packages/patches/ghc-9.4-testsuite-fixes.patch: New patch.
Change-Id: I5ef72f83e5feed1defb706bafa934077fda1553c
---
gnu/packages/haskell.scm | 13 +-
.../patches/ghc-9.4-testsuite-fixes.patch | 119 ++++++++++++++++++
2 files changed, 125 insertions(+), 7 deletions(-)
create mode 100644 gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index c580c660f1..4e2875cffa 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1542,14 +1542,14 @@ (define ghc-happy-bootstrap-for-9.4
(hidden-package
(package
(name "ghc-happy")
- (version "1.20.0")
+ (version "1.20.1.1")
(source
(origin
(method url-fetch)
(uri (hackage-uri "happy" version))
(sha256
(base32
- "1346r2x5ravs5fqma65bzjragqbb2g6v41wz9maknwm2jf7kl79v"))))
+ "06w8g3lfk2ynrfhqznhp1mnp8a5b64lj6qviixpndzf5lv2psklb"))))
(build-system haskell-build-system)
(arguments
(list #:haskell ghc-bootstrap-for-9.4
@@ -1567,15 +1567,14 @@ (define-public ghc-9.4
(package
(inherit base)
(name "ghc-next")
- (version "9.4.4")
+ (version "9.4.8")
(source (origin
(method url-fetch)
(uri (string-append "https://www.haskell.org/ghc/dist/" version
"/ghc-" version "-src.tar.xz"))
(sha256
(base32
- "1qk7rlqf02s3b6m6sqqngmjq1mxnrz88h159lz6k25gddmdg5kp8"))
- (patches (search-patches "ghc-9-StgCRunAsm-only-when-needed.patch"))))
+ "0pmqg9846lanb0hcyxhgr9ipzq33rfldxj7ln0j3qgpyczmhgx0b"))))
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:phases phases '%standard-phases)
@@ -1593,8 +1592,8 @@ (define-public ghc-9.4
version "/ghc-" version "-testsuite.tar.xz"))
(sha256
(base32
- "04p2lawxxg3nyv6frzhyjyh3arhqqyh5ka3alxa2pxhcd2hdcja3"))
- (patches (search-patches "ghc-testsuite-recomp015-execstack.patch"))))
+ "159wsqnqpqb0pxa3zyhvyg07wxr2zz7v52h52wkplw4pn12dsidc"))
+ (patches (search-patches "ghc-9.4-testsuite-fixes.patch"))))
("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
,@(filter (match-lambda
diff --git a/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch b/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
new file mode 100644
index 0000000000..f394632add
--- /dev/null
+++ b/gnu/packages/patches/ghc-9.4-testsuite-fixes.patch
@@ -0,0 +1,119 @@
+From 3acd8aa948a27465cffc8e2ab56229485e2a5b98 Mon Sep 17 00:00:00 2001
+From: Saku Laesvuori <saku@laesvuori.fi>
+Date: Tue, 5 Dec 2023 22:49:45 +0200
+Subject: [PATCH] Fix tests
+
+* replaces egrep with grep -E
+* removes unnecessary escaping in some grep regular expressions
+* adds a missing include header to a makefile
+---
+ testsuite/tests/cabal/cabal01/Makefile | 2 +-
+ testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile | 4 ++++
+ testsuite/tests/haddock/perf/Makefile | 8 ++++----
+ testsuite/tests/hsc2hs/Makefile | 4 ++--
+ testsuite/tests/numeric/should_run/T7014.primops | 4 ++--
+ testsuite/tests/simplCore/should_compile/Makefile | 4 ++--
+ 6 files changed, 15 insertions(+), 11 deletions(-)
+
+diff --git a/testsuite/tests/cabal/cabal01/Makefile b/testsuite/tests/cabal/cabal01/Makefile
+index 004e4c75..6ec499c9 100644
+--- a/testsuite/tests/cabal/cabal01/Makefile
++++ b/testsuite/tests/cabal/cabal01/Makefile
+@@ -5,7 +5,7 @@ include $(TOP)/mk/test.mk
+ # Find all the env variables starting with CI_ to unset them.
+ # Otherwise, we might run into environment length limitations on Windows.
+ # (See `xargs --show-limits`.)
+-VARS_TO_UNSET := $(shell env | grep ^CI_ | egrep -o '^[^=]+')
++VARS_TO_UNSET := $(shell env | grep ^CI_ | grep -E -o '^[^=]+')
+ unexport $(VARS_TO_UNSET)
+
+ clean:
+diff --git a/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile b/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
+index fd64d23f..cb669db3 100644
+--- a/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
++++ b/testsuite/tests/ghci/should_run/GHCiPrimCall/Makefile
+@@ -1,3 +1,7 @@
++TOP=../../../..
++include $(TOP)/mk/boilerplate.mk
++include $(TOP)/mk/test.mk
++
+ .PHONY: GHCiPrimCall
+ GHCiPrimCall:
+ '$(TEST_HC)' $(TEST_HC_OPTS) -fPIC -v0 -c GHCiPrimCall_cmm.cmm
+diff --git a/testsuite/tests/haddock/perf/Makefile b/testsuite/tests/haddock/perf/Makefile
+index b67b52f2..ff2f7ebb 100644
+--- a/testsuite/tests/haddock/perf/Makefile
++++ b/testsuite/tests/haddock/perf/Makefile
+@@ -4,12 +4,12 @@ include $(TOP)/mk/test.mk
+
+ # We accept a 5% increase in parser allocations due to -haddock
+ haddock_parser_perf :
+- WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Parser | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
+- WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Parser | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Parser | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Parser | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
+ awk "BEGIN { ratio = ($$WithHaddock / $$WithoutHaddock); if (ratio > 1.05) {print \"-haddock allocation ratio too high:\", ratio; exit 1} else {exit 0} }"
+
+ # Similarly for the renamer
+ haddock_renamer_perf :
+- WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Renamer | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
+- WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Renamer | egrep -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithoutHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -O0 Fold.hs 2>/dev/null | grep Renamer | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
++ WithHaddock=$(shell '$(TEST_HC)' $(TEST_HC_OPTS) -fno-code -fforce-recomp -Wno-all -ddump-timings -haddock -O0 Fold.hs 2>/dev/null | grep Renamer | grep -E -o 'alloc=[0-9]+' | cut -c7- ) ; \
+ awk "BEGIN { ratio = ($$WithHaddock / $$WithoutHaddock); if (ratio > 1.05) {print \"-haddock allocation ratio too high:\", ratio; exit 1} else {exit 0} }"
+diff --git a/testsuite/tests/hsc2hs/Makefile b/testsuite/tests/hsc2hs/Makefile
+index d0b2d249..95b011c8 100644
+--- a/testsuite/tests/hsc2hs/Makefile
++++ b/testsuite/tests/hsc2hs/Makefile
+@@ -52,9 +52,9 @@ T11004:
+ T12504:
+ '$(HSC2HS)' $(HSC2HS_OPTS) T12504/path/to/$@.hsc
+ ifeq "$(WINDOWS)" "YES"
+- grep '{-# LINE 1 \"T12504\\\\path\\\\to\\\\$@\.hsc\" #-}' T12504/path/to/$@.hs
++ grep '{-# LINE 1 "T12504\\\\path\\\\to\\\\$@\.hsc" #-}' T12504/path/to/$@.hs
+ else
+- grep '{-# LINE 1 \"T12504/path/to/$@\.hsc\" #-}' T12504/path/to/$@.hs
++ grep '{-# LINE 1 "T12504/path/to/$@\.hsc" #-}' T12504/path/to/$@.hs
+ endif
+
+ .PHONY: T15758
+diff --git a/testsuite/tests/numeric/should_run/T7014.primops b/testsuite/tests/numeric/should_run/T7014.primops
+index 3243666d..c807fb45 100644
+--- a/testsuite/tests/numeric/should_run/T7014.primops
++++ b/testsuite/tests/numeric/should_run/T7014.primops
+@@ -1,8 +1,8 @@
+ and#
+ or#
+ uncheckedShift.*#
+-\+#
+-\-#
+++#
++-#
+ \*#
+ quotInt#
+ remInt#
+diff --git a/testsuite/tests/simplCore/should_compile/Makefile b/testsuite/tests/simplCore/should_compile/Makefile
+index b5041800..c56e04f6 100644
+--- a/testsuite/tests/simplCore/should_compile/Makefile
++++ b/testsuite/tests/simplCore/should_compile/Makefile
+@@ -66,7 +66,7 @@ T13367:
+
+ T8832:
+ $(RM) -f T8832.o T8832.hi
+- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c -ddump-simpl -dsuppress-ticks T8832.hs | egrep '^[a-zA-Z0-9]+ ='
++ '$(TEST_HC)' $(TEST_HC_OPTS) -O -c -ddump-simpl -dsuppress-ticks T8832.hs | grep -E '^[a-zA-Z0-9]+ ='
+
+ T12603:
+ $(RM) -f T12603.o T12603.hi
+@@ -259,7 +259,7 @@ str-rules:
+ # g should have been collapsed into one defininition by CSE.
+ .PHONY: T13340
+ T13340:
+- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T13340.hs -ddump-simpl -dsuppress-all | grep -c '\+#'
++ '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T13340.hs -ddump-simpl -dsuppress-all | grep -c '+#'
+
+
+ # We expect to see all dictionaries specialized away.
+--
+2.41.0
+
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 03/24] gnu: Add ghc-js-flot-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 02/24] gnu: ghc-next: Update to version 9.4.8 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 04/24] gnu: Add ghc-clock-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (20 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-js-flot-bootstrap-for-9.6): New
variable.
Change-Id: Ie01768c263084a3aa38b7120de832913a80fc99a
---
gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 4e2875cffa..05be1c019a 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1608,4 +1608,34 @@ (define-public ghc-9.4
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
+;;; Bootstrap packages for hadrian, the new GHC build system
+
+(define ghc-bootstrap-for-9.6 ghc-9.4)
+
+(define ghc-js-flot-bootstrap-for-9.6
+ (package
+ (name "ghc-js-flot-bootstrap")
+ (version "0.8.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (hackage-uri "js-flot" version))
+ (sha256
+ (base32
+ "0yjyzqh3qzhy5h3nql1fckw0gcfb0f4wj9pm85nafpfqp2kg58hv"))))
+ (build-system haskell-build-system)
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (properties '((upstream-name . "js-flot")))
+ (home-page "https://github.com/ndmitchell/js-flot")
+ (synopsis "Obtain minified flot code")
+ (description "This package bundles the minified
+@url{http://www.flotcharts.org/, Flot} code (a jQuery plotting library)
+into a Haskell package, so it can be depended upon by Cabal packages.
+The first three components of the version number match the upstream flot
+version. The package is designed to meet the redistribution
+requirements of downstream users (e.g. Debian).")
+ (license license:expat)))
+
;;; haskell.scm ends here
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 04/24] gnu: Add ghc-clock-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (2 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 03/24] gnu: Add ghc-js-flot-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 05/24] gnu: Add ghc-extra-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (19 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-clock-bootstrap-for-9.6): New
variable.
Change-Id: I78d0997ee749a0c1725490c99308dcd1dc5bfbe5
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 05be1c019a..8cfbeed186 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1638,4 +1638,25 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-clock-bootstrap-for-9.6
+ (package
+ (name "ghc-clock-bootstrap")
+ (version "0.8.3")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "clock" version))
+ (sha256
+ (base32
+ "1l850pf1dxjf3i15wc47d64gzkpzgvw0bq13fd8zvklq9kdyap44"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "clock")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/corsis/clock")
+ (synopsis "High-resolution clock for Haskell")
+ (description
+ "A package for convenient access to high-resolution clock and
+timer functions of different operating systems via a unified API.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 05/24] gnu: Add ghc-extra-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (3 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 04/24] gnu: Add ghc-clock-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 06/24] gnu: Add ghc-hashable-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (18 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-extra-bootstrap-for-9.6): New
variable.
Change-Id: I73f1bd1a821bb01fc9d081c78313e583ce8fab6b
---
gnu/packages/haskell.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 8cfbeed186..22fa3614ea 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1638,6 +1638,30 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-extra-bootstrap-for-9.6
+ (package
+ (name "ghc-extra-bootstrap")
+ (version "1.7.12")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "extra" version))
+ (sha256
+ (base32
+ "0g5h8fp0nq4k9asiknw0bhvb10zpfnsixfp0n3xz0rc83pnajwg5"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "extra")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-clock-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/extra#readme")
+ (synopsis "Extra Haskell functions")
+ (description
+ "This library provides extra functions for the standard
+Haskell libraries. Most functions are simple additions, filling out missing
+functionality. A few functions are available in later versions of GHC, but
+this package makes them available back to GHC 7.2.")
+ (license license:bsd-3)))
+
(define ghc-clock-bootstrap-for-9.6
(package
(name "ghc-clock-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 06/24] gnu: Add ghc-hashable-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (4 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 05/24] gnu: Add ghc-extra-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 07/24] gnu: Add ghc-splitmix-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (17 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-hashable-bootstrap-for-9.6): New
variable.
Change-Id: Id96f7df459a3db56747cd4204b32b7ad253139a4
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 22fa3614ea..c1a1fa190c 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1683,4 +1683,27 @@ (define ghc-clock-bootstrap-for-9.6
timer functions of different operating systems via a unified API.")
(license license:bsd-3)))
+(define ghc-hashable-bootstrap-for-9.6
+ (package
+ (name "ghc-hashable-bootstrap")
+ (version "1.4.1.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "hashable" version))
+ (sha256
+ (base32
+ "11sycr73821amdz8g0k8c97igi4z7f9xdvgaxlkxhsp6h310bcz1"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "hashable")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (home-page "http://github.com/haskell-unordered-containers/hashable")
+ (synopsis "Class for types that can be converted to a hash value")
+ (description
+ "This package defines a class, @code{Hashable}, for types that can be
+converted to a hash value. This class exists for the benefit of hashing-based
+data structures. The package provides instances for basic types and a way to
+combine hash values.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 07/24] gnu: Add ghc-splitmix-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (5 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 06/24] gnu: Add ghc-hashable-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 08/24] gnu: Add ghc-random-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (16 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-splitmix-bootstrap-for-9.6): New
variable.
Change-Id: I65584aa893975015dc44491b120636844af801de
---
gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index c1a1fa190c..f93e3bf6c7 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1706,4 +1706,36 @@ (define ghc-hashable-bootstrap-for-9.6
combine hash values.")
(license license:bsd-3)))
+(define ghc-splitmix-bootstrap-for-9.6
+ (package
+ (name "ghc-splitmix-bootstrap")
+ (version "0.1.0.5")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "splitmix" version))
+ (sha256
+ (base32
+ "00ihw7vji8ydik7f5lk9iwj21j829lpl22wa4nqz2igg26b7mw4x"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "splitmix")))
+ (arguments
+ `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "http://hackage.haskell.org/package/splitmix")
+ (synopsis "Fast and splittable pseudorandom number generator")
+ (description
+ "This package provides a Pure Haskell implementation of the
+SplitMix pseudorandom number generator. SplitMix is a \"splittable\"
+pseudorandom number generator that is quite fast: 9 64-bit
+arithmetic/logical operations per 64 bits generated. SplitMix is tested
+with two standard statistical test suites (DieHarder and TestU01, this
+implementation only using the former) and it appears to be adequate for
+\"everyday\" use, such as Monte Carlo algorithms and randomized data
+structures where speed is important. In particular, it @strong{should not
+be used for cryptographic or security applications}, because generated
+sequences of pseudorandom values are too predictable (the mixing functions
+are easily inverted, and two successive outputs suffice to reconstruct the
+internal state).")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 08/24] gnu: Add ghc-random-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (6 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 07/24] gnu: Add ghc-splitmix-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 09/24] gnu: Add ghc-primitive-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (15 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-random-bootstrap-for-9.6): New variable.
Change-Id: If1a39b27687a63a63dab5aa4c1a366a8ba78196a
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index f93e3bf6c7..2d50113d64 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1738,4 +1738,26 @@ (define ghc-splitmix-bootstrap-for-9.6
internal state).")
(license license:bsd-3)))
+(define ghc-random-bootstrap-for-9.6
+ (package
+ (name "ghc-random-bootstrap")
+ (version "1.2.1.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "random" version))
+ (sha256
+ (base32
+ "0xlv1k4sj87akwvj54kq4nrfkzi6qcz1941bf78pnkbaxpvp44iy"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "random")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-splitmix-bootstrap-for-9.6))
+ (home-page "http://hackage.haskell.org/package/random")
+ (synopsis "Random number library")
+ (description
+ "This package provides a basic random number generation
+library, including the ability to split random number generators.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 09/24] gnu: Add ghc-primitive-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (7 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 08/24] gnu: Add ghc-random-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 10/24] gnu: Add ghc-js-jquery-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (14 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-primitive-bootstrap-for-9.6): New
variable.
Change-Id: I393ff5f57862de0c6da118a803ed6f898adcf0cb
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 2d50113d64..a241e9253f 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1760,4 +1760,27 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-primitive-bootstrap-for-9.6
+ (package
+ (name "ghc-primitive-bootstrap")
+ (version "0.8.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "primitive" version))
+ (sha256
+ (base32
+ "0pwr5g3bra5m2zjm14pj98klqj2qrjcfasgd3rcrp7vq98dw4lsm"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "primitive")))
+ (arguments
+ `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:cabal-revision ("1"
+ "0w1nf0rabgyk5q7ccw7va1mj6k50lswvikhi6vr2myb1dvx4bzyh")))
+ (home-page "https://github.com/haskell/primitive")
+ (synopsis "Primitive memory-related operations")
+ (description
+ "This package provides various primitive memory-related operations.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 10/24] gnu: Add ghc-js-jquery-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (8 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 09/24] gnu: Add ghc-primitive-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 11/24] gnu: Add ghc-utf8-string-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (13 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-js-jquery-bootstrap-for-9.6): New
variable.
Change-Id: I579efb04ad665f0938e24a9656f959abdd27905e
---
gnu/packages/haskell.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index a241e9253f..fbca58286c 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1760,6 +1760,32 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-js-jquery-bootstrap-for-9.6
+ (package
+ (name "ghc-js-jquery-bootstrap")
+ (version "3.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (hackage-uri "js-jquery" version))
+ (sha256
+ (base32
+ "16q68jzbs7kp07dnq8cprdcc8fd41rim38039vg0w4x11lgniq70"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "js-jquery")))
+ (arguments `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/js-jquery")
+ (synopsis "Obtain minified jQuery code")
+ (description "This package bundles the minified
+@url{http://jquery.com/, jQuery} code into a Haskell package, so it can
+be depended upon by Cabal packages. The first three components of the
+version number match the upstream jQuery version. The package is
+designed to meet the redistribution requirements of downstream
+users (e.g. Debian).")
+ (license license:expat)))
+
(define ghc-primitive-bootstrap-for-9.6
(package
(name "ghc-primitive-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 11/24] gnu: Add ghc-utf8-string-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (9 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 10/24] gnu: Add ghc-js-jquery-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 12/24] gnu: Add ghc-heaps-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (12 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-utf8-string-bootstrap-for-9.6): New
variable.
Change-Id: Iea2ba4d3202195a54b71037882352cdac9415901
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index fbca58286c..c5224aee1e 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1760,6 +1760,28 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-utf8-string-bootstrap-for-9.6
+ (package
+ (name "ghc-utf8-string-bootstrap")
+ (version "1.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "utf8-string" version))
+ (sha256
+ (base32 "16mh36ffva9rh6k37bi1046pgpj14h0cnmj1iir700v0lynxwj7f"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "utf8-string")))
+ (arguments `(#:tests? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/glguy/utf8-string/")
+ (synopsis "Support for reading and writing UTF8 Strings")
+ (description
+ "A UTF8 layer for Strings. The utf8-string package provides operations
+for encoding UTF8 strings to Word8 lists and back, and for reading and writing
+UTF8 without truncation.")
+ (license license:bsd-3)))
+
(define ghc-js-jquery-bootstrap-for-9.6
(package
(name "ghc-js-jquery-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 12/24] gnu: Add ghc-heaps-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (10 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 11/24] gnu: Add ghc-utf8-string-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 13/24] gnu: Add ghc-js-dgtable-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (11 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-heaps-bootstrap-for-9.6): New variable.
Change-Id: Ib04a47d3eacba415fd44cd532c18c02f8d9cf40b
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index c5224aee1e..ab770be456 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1760,6 +1760,27 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-heaps-bootstrap-for-9.6
+ (package
+ (name "ghc-heaps-bootstrap")
+ (version "0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "heaps" version))
+ (sha256
+ (base32 "1zbw0qrlnhb42v04phzwmizbpwg21wnpl7p4fbr9xsasp7w9scl9"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "heaps")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "http://github.com/ekmett/heaps/")
+ (synopsis "Asymptotically optimal Brodal/Okasaki heaps.")
+ (description
+ "Asymptotically optimal Brodal\\/Okasaki bootstrapped skew-binomial heaps from the
+paper <http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.48.973 \"Optimal
+Purely Functional Priority Queues\">, extended with a Foldable interface.")
+ (license license:bsd-3)))
+
(define ghc-utf8-string-bootstrap-for-9.6
(package
(name "ghc-utf8-string-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 13/24] gnu: Add ghc-js-dgtable-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (11 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 12/24] gnu: Add ghc-heaps-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 14/24] gnu: Add ghc-nats-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (10 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-js-dgtable-bootstrap-for-9.6): New
variable.
Change-Id: Ic7e9e6c584e4fb8830ec55288759796271822964
---
gnu/packages/haskell.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index ab770be456..6c2fd8bdd5 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1760,6 +1760,29 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-js-dgtable-bootstrap-for-9.6
+ (package
+ (name "ghc-js-dgtable-bootstrap")
+ (version "0.5.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "js-dgtable" version))
+ (sha256
+ (base32 "1b10kx703kbkb5q1ggdpqcrxqjb33kh24khk21rb30w0xrdxd3g2"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "js-dgtable")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/js-dgtable#readme")
+ (synopsis "Obtain minified jquery.dgtable code")
+ (description
+ "This package bundles the minified <https://github.com/danielgindi/jquery.dgtable
+jquery.dgtable> code into a Haskell package, so it can be depended upon by Cabal
+packages. The first three components of the version number match the upstream
+jquery.dgtable version. The package is designed to meet the redistribution
+requirements of downstream users (e.g. Debian).")
+ (license license:expat)))
+
(define ghc-heaps-bootstrap-for-9.6
(package
(name "ghc-heaps-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 14/24] gnu: Add ghc-nats-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (12 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 13/24] gnu: Add ghc-js-dgtable-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 15/24] gnu: Add ghc-tagged-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (9 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-nats-bootstrap-for-9.6): New variable.
Change-Id: I57351e88ba0bc52e7fd5fefc5c3006f63925fd86
---
gnu/packages/haskell.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 6c2fd8bdd5..a7e8cc93ef 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1760,6 +1760,28 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-nats-bootstrap-for-9.6
+ (package
+ (name "ghc-nats-bootstrap")
+ (version "1.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "nats" version))
+ (sha256
+ (base32
+ "1v40drmhixck3pz3mdfghamh73l4rp71mzcviipv1y8jhrfxilmr"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "nats")))
+ (arguments `(#:haddock? #f
+ #:haskell ,ghc-bootstrap-for-9.6))
+ (inputs
+ (list ghc-hashable-bootstrap-for-9.6))
+ (home-page "https://hackage.haskell.org/package/nats")
+ (synopsis "Natural numbers")
+ (description "This library provides the natural numbers for Haskell.")
+ (license license:bsd-3)))
+
(define ghc-js-dgtable-bootstrap-for-9.6
(package
(name "ghc-js-dgtable-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 15/24] gnu: Add ghc-tagged-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (13 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 14/24] gnu: Add ghc-nats-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 16/24] gnu: Add ghc-semigroups-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (8 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-tagged-bootstrap-for-9.6): New variable.
Change-Id: Ifd3996a62cfa33d155315807d4ead706f7e64452
---
gnu/packages/haskell.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index a7e8cc93ef..d59f9d7133 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1760,6 +1760,26 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-tagged-bootstrap-for-9.6
+ (package
+ (name "ghc-tagged-bootstrap")
+ (version "0.8.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "tagged" version))
+ (sha256
+ (base32
+ "0qdr1kv1zn5iamnwyn5nf0ywxs4wv779k0gpw94kyqx14ynfw534"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "tagged")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (home-page "https://hackage.haskell.org/package/tagged")
+ (synopsis "Haskell phantom types to avoid passing dummy arguments")
+ (description "This library provides phantom types for Haskell 98, to avoid
+having to unsafely pass dummy arguments.")
+ (license license:bsd-3)))
+
(define ghc-nats-bootstrap-for-9.6
(package
(name "ghc-nats-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 16/24] gnu: Add ghc-semigroups-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (14 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 15/24] gnu: Add ghc-tagged-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 17/24] gnu: Add ghc-base16-bytestring-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (7 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-semigroups-bootstrap-for-9.6): New
variable.
Change-Id: Ic676fed80bea3805f8e70cd958c3d7523226053d
---
gnu/packages/haskell.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index d59f9d7133..ca82f51fd0 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1760,6 +1760,36 @@ (define ghc-random-bootstrap-for-9.6
library, including the ability to split random number generators.")
(license license:bsd-3)))
+(define ghc-semigroups-bootstrap-for-9.6
+ (package
+ (name "ghc-semigroups-bootstrap")
+ (version "0.20")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "semigroups" version))
+ (sha256
+ (base32
+ "1qbk6scp1rzb69dy8mz26p6az5vi16g2lzwmwnfshh3br4rjwbch"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "semigroups")))
+ (arguments (list #:haskell ghc-bootstrap-for-9.6))
+ (inputs
+ (list ghc-nats-bootstrap-for-9.6
+ ghc-tagged-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ ghc-hashable-bootstrap-for-9.6))
+ (home-page "http://github.com/ekmett/semigroups/")
+ (synopsis "Semigroup operations for Haskell")
+ (description
+ "This package provides semigroups for Haskell. In
+mathematics, a semigroup is an algebraic structure consisting of a set
+together with an associative binary operation. A semigroup generalizes a
+monoid in that there might not exist an identity element. It
+also (originally) generalized a group (a monoid with all inverses) to a type
+where every element did not have to have an inverse, thus the name
+semigroup.")
+ (license license:bsd-3)))
+
(define ghc-tagged-bootstrap-for-9.6
(package
(name "ghc-tagged-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 17/24] gnu: Add ghc-base16-bytestring-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (15 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 16/24] gnu: Add ghc-semigroups-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 18/24] gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (6 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-base16-bytestring-bootstrap-for-9.6):
New variable.
Change-Id: I7c20bdfd7600fb2bed5de497e02acda74b242fec
---
gnu/packages/haskell.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index ca82f51fd0..5feef5992c 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1638,6 +1638,27 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-base16-bytestring-bootstrap-for-9.6
+ (package
+ (name "ghc-base16-bytestring-bootstrap")
+ (version "1.0.2.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "base16-bytestring" version))
+ (sha256
+ (base32
+ "1167f9jaivnabn6kg2gc421ac9njb67fr4v0adbj3qph7qa92nhx"))))
+ (build-system haskell-build-system)
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (properties '((upstream-name . "base16-bytestring")))
+ (home-page "http://github.com/haskell/base16-bytestring")
+ (synopsis "Fast base16 (hex) encoding and decoding for ByteStrings")
+ (description
+ "This package provides a Haskell library for working with base16-encoded
+data quickly and efficiently, using the ByteString type.")
+ (license license:bsd-3)))
+
(define ghc-extra-bootstrap-for-9.6
(package
(name "ghc-extra-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 18/24] gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (16 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 17/24] gnu: Add ghc-base16-bytestring-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 19/24] gnu: Add ghc-unordered-containers-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (5 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-cryptohash-sha256-bootstrap-for-9.6):
New variable.
Change-Id: I80dd73de554160f4dc904c01ea292a886f51e970
---
gnu/packages/haskell.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 5feef5992c..c0d2ab8c1d 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1638,6 +1638,35 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-cryptohash-sha256-bootstrap-for-9.6
+ (package
+ (name "ghc-cryptohash-sha256-bootstrap")
+ (version "0.11.102.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "cryptohash-sha256" version))
+ (sha256
+ (base32
+ "1xkb7iqplbw4fy1122p79xf1zcb7k44rl0wmfj1q06l7cdqxr9vk"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "cryptohash-sha256")))
+ (arguments
+ `(#:cabal-revision
+ ("1" "1hyzqv30rpj920ddnr0zypyjjlh52vyp2d140pn2byayj820rkgs")
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:tests? #f))
+ (home-page "https://github.com/hvr/cryptohash-sha1")
+ (synopsis "SHA-256 implementation for Haskell")
+ (description "This Haskell package provides an incremental and
+one-pass, pure API to the @uref{https://en.wikipedia.org/wiki/SHA-2,
+SHA-256 cryptographic hash algorithm}, with performance close to the
+fastest implementations available in other languages.
+
+The implementation is made in C with a haskell FFI wrapper that hides
+the C implementation.")
+ (license license:bsd-3)))
+
(define ghc-base16-bytestring-bootstrap-for-9.6
(package
(name "ghc-base16-bytestring-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 19/24] gnu: Add ghc-unordered-containers-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (17 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 18/24] gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 20/24] gnu: Add ghc-filepattern-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (4 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-unordered-containers-bootstrap-for-9.6):
New variable.
Change-Id: I190d7e765d30b469290d26109478fbe97dfbe3ae
---
gnu/packages/haskell.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index c0d2ab8c1d..d63dde6319 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1638,6 +1638,33 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-unordered-containers-bootstrap-for-9.6
+ (package
+ (name "ghc-unordered-containers-bootstrap")
+ (version "0.2.19.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "unordered-containers" version))
+ (sha256
+ (base32
+ "1li8s6qw8mgv6a7011y7hg0cn2nllv2g9sr9c1xb48nmw32vw9qv"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "unordered-containers")))
+ (inputs (list ghc-hashable-bootstrap-for-9.6))
+ (arguments
+ `(#:cabal-revision ("3"
+ "1p9a2mvfbfz2d4cyr16b03bxvb6c4yj7k1ch601xwq1rkr1cla0w")
+ #:haskell ,ghc-bootstrap-for-9.6
+ #:tests? #f))
+ (home-page
+ "https://github.com/haskell-unordered-containers/unordered-containers")
+ (synopsis "Efficient hashing-based container types")
+ (description
+ "Efficient hashing-based container types. The containers have been
+optimized for performance critical use, both in terms of large data quantities
+and high speed.")
+ (license license:bsd-3)))
+
(define ghc-cryptohash-sha256-bootstrap-for-9.6
(package
(name "ghc-cryptohash-sha256-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 20/24] gnu: Add ghc-filepattern-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (18 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 19/24] gnu: Add ghc-unordered-containers-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:46 ` Nicolas Graves via Guix-patches via
2024-10-31 12:47 ` [bug#67921] [PATCH v3 21/24] gnu: Add ghc-shake-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
` (3 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:46 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-filepattern-bootstrap-for-9.6): New
variable.
Change-Id: I3778f85d7a14474445295ebd6bbb1f4bfbe4f6d5
---
gnu/packages/haskell.scm | 41 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index d63dde6319..0ffc4df728 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1638,6 +1638,47 @@ (define ghc-js-flot-bootstrap-for-9.6
requirements of downstream users (e.g. Debian).")
(license license:expat)))
+(define ghc-filepattern-bootstrap-for-9.6
+ (package
+ (name "ghc-filepattern-bootstrap")
+ (version "0.1.3")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "filepattern" version))
+ (sha256
+ (base32
+ "0dlnwnwhsfdkwm69z66wj5d2x9n3la55glq4fsn5rxm2kr1msi6c"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "filepattern")))
+ (arguments (list #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6))
+ (inputs (list ghc-extra-bootstrap-for-9.6))
+ (home-page "https://github.com/ndmitchell/filepattern#readme")
+ (synopsis "File path glob-like matching")
+ (description
+ "This package provides Haskell library for matching files using patterns
+such as @code{\\\"src\\/**\\/*.png\\\"} for all @@file{.png} files recursively
+under the @@file{src} directory.
+
+Some of its features include:
+
+@itemize
+@item All matching is O(n).
+
+@item Most functions pre-compute some information given only one argument.
+
+@item Uses @code{match} and @code{substitute} to extract suitable strings from
+the @code{*} and @code{**} matches, and substitutes them back into other
+patterns.
+
+@item Uses @code{step} and @code{matchMany} to perform bulk matching of many
+patterns against many paths simultaneously.
+
+@item Uses @code{System.FilePattern.Directory} to perform optimised directory
+traverals using patterns.
+@end itemize")
+ (license license:bsd-3)))
+
(define ghc-unordered-containers-bootstrap-for-9.6
(package
(name "ghc-unordered-containers-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 21/24] gnu: Add ghc-shake-bootstrap-for-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (19 preceding siblings ...)
2024-10-31 12:46 ` [bug#67921] [PATCH v3 20/24] gnu: Add ghc-filepattern-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:47 ` Nicolas Graves via Guix-patches via
2024-10-31 12:47 ` [bug#67921] [PATCH v3 22/24] gnu: Add hadrian-for-ghc-9.6 Nicolas Graves via Guix-patches via
` (2 subsequent siblings)
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:47 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-shake-bootstrap-for-9.6): New variable.
Change-Id: I195bc5f779709ef7b2ccefe2271402ef342bc0b8
---
gnu/packages/haskell.scm | 56 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 0ffc4df728..4bd1ef150b 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1612,6 +1612,62 @@ (define-public ghc-9.4
(define ghc-bootstrap-for-9.6 ghc-9.4)
+(define ghc-shake-bootstrap-for-9.6
+ (package
+ (name "ghc-shake-bootstrap")
+ (version "0.19.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "shake" version))
+ (sha256
+ (base32 "1lcr6q53qwm308bny6gfawcjhxsmalqi3dnwckam02zp2apmcaim"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "shake")))
+ (inputs (list bash-minimal
+ ghc-extra-bootstrap-for-9.6
+ ghc-filepattern-bootstrap-for-9.6
+ ghc-hashable-bootstrap-for-9.6
+ ghc-heaps-bootstrap-for-9.6
+ ghc-js-dgtable-bootstrap-for-9.6
+ ghc-js-flot-bootstrap-for-9.6
+ ghc-js-jquery-bootstrap-for-9.6
+ ghc-primitive-bootstrap-for-9.6
+ ghc-random-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ ghc-utf8-string-bootstrap-for-9.6
+ ghc-semigroups-bootstrap-for-9.6))
+ (arguments
+ (list #:cabal-revision '("1"
+ "1hz57kw5pp5cpbicbi7x8sz8c6qy58dzyiljz9b9f2r1rr683d9w")
+ #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'patch-source-shebangs 'patch-/bin/sh
+ (lambda _
+ (for-each
+ (lambda (file)
+ (substitute*
+ file
+ (("/bin/sh")
+ #$(file-append (this-package-input "bash-minimal")
+ "/bin/sh"))))
+ '("src/Development/Shake/Command.hs")))))))
+ (home-page "https://shakebuild.com")
+ (synopsis
+ "Build system library, like Make, but more accurate dependencies.")
+ (description
+ "Shake is a Haskell library for writing build systems - designed as a
+replacement for @@make@@. To use Shake the user writes a Haskell program that
+imports \"Development.Shake\", defines some build rules, and calls the
+Development.Shake.@code{shakeArgs} function. However, as build systems get more
+complex, Shake is able to take advantage of the excellent abstraction facilities
+offered by Haskell and easily support much larger projects. Shake also provides more
+accurate dependency tracking, including seamless support for generated files, and
+dependencies on system information (e.g. compiler version).")
+ (license license:bsd-3)))
+
(define ghc-js-flot-bootstrap-for-9.6
(package
(name "ghc-js-flot-bootstrap")
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 22/24] gnu: Add hadrian-for-ghc-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (20 preceding siblings ...)
2024-10-31 12:47 ` [bug#67921] [PATCH v3 21/24] gnu: Add ghc-shake-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:47 ` Nicolas Graves via Guix-patches via
2024-10-31 12:47 ` [bug#67921] [PATCH v3 23/24] gnu: Add ghc-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:47 ` [bug#67921] [PATCH v3 24/24] gnu: ghc: Update to version 9.6.4 Nicolas Graves via Guix-patches via
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:47 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (hadrian-for-ghc-9.6): New variable.
Change-Id: I4205c888afa7b03b4b1622a3af7d1d538fa5c9b1
---
gnu/packages/haskell.scm | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 4bd1ef150b..256fe84c89 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -2121,4 +2121,44 @@ (define ghc-primitive-bootstrap-for-9.6
"This package provides various primitive memory-related operations.")
(license license:bsd-3)))
+(define hadrian-for-ghc-9.6
+ (package
+ (name "hadrian")
+ (version "9.6.4")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://www.haskell.org/ghc/dist/" version
+ "/ghc-" version "-src.tar.xz"))
+ (sha256
+ (base32
+ "1h6lpx8kd4xycjwb8iv2rgnz23kwq5b0qp4bhvczsx3in2w2bgqh"))))
+ (build-system haskell-build-system)
+ (inputs
+ (list ghc-base16-bytestring-bootstrap-for-9.6
+ ghc-cryptohash-sha256-bootstrap-for-9.6
+ ghc-extra-bootstrap-for-9.6
+ ghc-shake-bootstrap-for-9.6
+ ghc-unordered-containers-bootstrap-for-9.6
+ bash-minimal))
+ (arguments
+ (list #:configure-flags ''("--flags=-selftest")
+ #:tests? #f
+ #:haskell ghc-bootstrap-for-9.6
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'cd-to-hadrian
+ (lambda _
+ (chdir "hadrian")))
+ (add-after 'cd-to-hadrian 'fix-shell-wrappers
+ (lambda _
+ (substitute*
+ "src/Rules/Test.hs"
+ (("\"#!/bin/sh\"")
+ (format #f "\"#!~a/bin/sh\"" #$(this-package-input "bash-minimal")))))))))
+ (home-page "https://gitlab.haskell.org/ghc/ghc/-/tree/master/hadrian")
+ (synopsis "Build system for the Glasgow Haskell Compiler (@code{ghc})")
+ (description "Hadrian is the build system for the Glasgow Haskell Compiler.
+It is based on the Shake library and replaces @{make} in building GHC")
+ (license license:expat)))
+
;;; haskell.scm ends here
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 23/24] gnu: Add ghc-9.6
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (21 preceding siblings ...)
2024-10-31 12:47 ` [bug#67921] [PATCH v3 22/24] gnu: Add hadrian-for-ghc-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:47 ` Nicolas Graves via Guix-patches via
2024-10-31 12:47 ` [bug#67921] [PATCH v3 24/24] gnu: ghc: Update to version 9.6.4 Nicolas Graves via Guix-patches via
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:47 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc-9.6): New variable.
Change-Id: I6883ed973bdd1d6eaf981605c1bc8f855f850187
---
gnu/packages/haskell.scm | 108 ++++++++++++++++++++++++++++++++++++++-
1 file changed, 107 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 256fe84c89..239871cfcd 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -72,7 +72,8 @@ (define-module (gnu packages haskell)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (ice-9 match)
- #:use-module (ice-9 regex))
+ #:use-module (ice-9 regex)
+ #:use-module (srfi srfi-26))
(define-public cl-yale-haskell
(let ((commit "85f94c72a16c5f70301dd8db04cde9de2d7dd270")
@@ -2161,4 +2162,109 @@ (define hadrian-for-ghc-9.6
It is based on the Shake library and replaces @{make} in building GHC")
(license license:expat)))
+(define-public ghc-9.6
+ (let ((base ghc-9.4))
+ (package
+ (inherit base)
+ (name "ghc-next")
+ (version "9.6.4")
+ (source (origin
+ (inherit (package-source base))
+ (uri (string-append "https://www.haskell.org/ghc/dist/" version
+ "/ghc-" version "-src.tar.xz"))
+ (sha256
+ (base32
+ "1h6lpx8kd4xycjwb8iv2rgnz23kwq5b0qp4bhvczsx3in2w2bgqh"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:make-flags flags ''())
+ #~(list "-V" "--docs=no-sphinx"))
+ ((#:phases phases '%standard-phases)
+ #~(let* ((run-hadrian (lambda args
+ (apply invoke "hadrian" args))))
+ (modify-phases #$phases
+ (delete 'fix-shell-wrappers)
+ ;; https://gitlab.haskell.org/ghc/ghc/-/issues/22557
+ (add-before 'build 'fix-iserv-rpath
+ (lambda _
+ (mkdir-p "_build")
+ (call-with-output-file
+ "_build/hadrian.settings"
+ (lambda (port)
+ (display
+ (string-append
+ "*.iserv.ghc.link.opts += -optl-Wl,-rpath,"
+ #$output "/lib/ghc-" #$(package-version this-package)
+ "/lib/" #$(or (%current-target-system)
+ (%current-system))
+ "-ghc-" #$(package-version this-package) "/")
+ port)))))
+ (replace 'build
+ (lambda* (#:key (parallel-build? #f) (make-flags '())
+ #:allow-other-keys)
+ (apply run-hadrian
+ `("binary-dist-dir"
+ ,@(if parallel-build?
+ `(,(string-append "-j" (number->string (parallel-job-count))))
+ '())
+ ,@make-flags))))
+ (replace 'check
+ (lambda* (#:key (tests? #t) (parallel-tests? #f) (make-flags '()) #:allow-other-keys)
+ (if tests?
+ (apply run-hadrian
+ `(,@(if parallel-tests?
+ `(,(string-append "-j" (number->string (parallel-job-count))))
+ '())
+ ,@make-flags
+ "test"
+ "--skip-perf"))
+ (format #t "test suite not run~%"))))
+ (replace 'install
+ (lambda* (#:key (make-flags '()) #:allow-other-keys)
+ (apply run-hadrian
+ `("install"
+ ,@make-flags
+ ,(string-append "--prefix=" #$output)))))
+ (add-after 'install 'replace-$pkgroot
+ (lambda _
+ (substitute*
+ (find-files
+ (string-append #$output "/lib/ghc-"
+ #$(package-version this-package)
+ "/lib/package.conf.d/")
+ "^.*\\.conf$")
+ (("\\$\\{pkgroot\\}/")
+ (string-append #$output "/lib/ghc-"
+ #$(package-version this-package)
+ "/lib/"))))))))))
+ (inputs (list bash-minimal gmp ncurses libffi))
+ (native-inputs
+ `(("perl" ,perl)
+ ("python" ,python)
+ ("git" ,git-minimal/pinned)
+ ("which" ,which)
+ ("ghostscript" ,ghostscript)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+
+ ("hadrian" ,hadrian-for-ghc-9.6)
+ ("ghc-bootstrap" ,ghc-bootstrap-for-9.6)
+ ("ghc-alex" ,ghc-alex-bootstrap-for-9.4)
+ ("ghc-happy" ,ghc-happy-bootstrap-for-9.4)
+ ("ghc-testsuite"
+ ,(origin
+ (method url-fetch)
+ (uri (string-append
+ "https://www.haskell.org/ghc/dist/"
+ version "/ghc-" version "-testsuite.tar.xz"))
+ (sha256
+ (base32
+ "0wwd6d68aia2rmlpki30azz0raf98is472cqljhbzzdzpqpjh4vf"))))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GHC_PACKAGE_PATH")
+ (files (list (string-append "lib/ghc-" version)))
+ (file-pattern ".*\\.conf\\.d$")
+ (file-type 'directory)))))))
+
;;; haskell.scm ends here
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 24/24] gnu: ghc: Update to version 9.6.4
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
` (22 preceding siblings ...)
2024-10-31 12:47 ` [bug#67921] [PATCH v3 23/24] gnu: Add ghc-9.6 Nicolas Graves via Guix-patches via
@ 2024-10-31 12:47 ` Nicolas Graves via Guix-patches via
23 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 12:47 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
From: Saku Laesvuori <saku@laesvuori.fi>
* gnu/packages/haskell.scm (ghc): Update to ghc-9.6
Change-Id: I40da6cacc4d260902cd66d7d626375038fba4346
---
gnu/packages/haskell.scm | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 239871cfcd..5bdedcc05c 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -1498,12 +1498,6 @@ (define-public ghc-9.2
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
-;; Versions newer than ghc defined below (i.e. the compiler
-;; haskell-build-system uses) should use ghc-next as their name to
-;; ensure ghc (without version specification) and ghc-* packages are
-;; always compatible. See https://issues.guix.gnu.org/issue/47335.
-(define-public ghc ghc-9.2)
-
;; 9.4 is the last version to support the make-based build system,
;; but it boot with 9.2, only 9.0 is supported.
(define ghc-bootstrap-for-9.4 ghc-9.0)
@@ -1567,7 +1561,7 @@ (define-public ghc-9.4
(let ((base ghc-9.2))
(package
(inherit base)
- (name "ghc-next")
+ (name "ghc")
(version "9.4.8")
(source (origin
(method url-fetch)
@@ -2166,7 +2160,7 @@ (define-public ghc-9.6
(let ((base ghc-9.4))
(package
(inherit base)
- (name "ghc-next")
+ (name "ghc")
(version "9.6.4")
(source (origin
(inherit (package-source base))
@@ -2267,4 +2261,10 @@ (define-public ghc-9.6
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory)))))))
+;; Versions newer than ghc defined below (i.e. the compiler
+;; haskell-build-system uses) should use ghc-next as their name to
+;; ensure ghc (without version specification) and ghc-* packages are
+;; always compatible. See https://issues.guix.gnu.org/issue/47335.
+(define-public ghc ghc-9.6)
+
;;; haskell.scm ends here
--
2.46.0
^ permalink raw reply related [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-10-31 12:46 ` [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39 Nicolas Graves via Guix-patches via
@ 2024-10-31 14:02 ` Nicolas Graves via Guix-patches via
2024-11-02 15:18 ` Lars-Dominik Braun
0 siblings, 1 reply; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-10-31 14:02 UTC (permalink / raw)
To: 67921; +Cc: dev, lars, saku
On 2024-10-31 13:46, Nicolas Graves via Guix-patches via wrote:
> Future versions of ghc will have more occurrences of the execstack
> warning. Instead of modifying the tests for each new version, a more
> robust approach is to explicitely make ghc pass -Wl,-z,noexecstack to
> its ld invocations during all tests. This is what this patch does.
>
> * gnu/packages/patches/ghc-testsuite-recomp015-execstack.patch: New patches.
> * gnu/local.mk (disp_path_DATA): Deregister patch.
> * gnu/packages/haskell.scm (ghc-8.6, ghc-8.8, ghc-9.0, ghc-9.2,
> ghc-9.4): Deregister patch use. Add phase 'fix-tests-with-binutils@2.39.
My mistake, just to be clear, this patch is here to fix the build of
9.8.4 after the core-updates merges, more than to fix the last errors on
the 9.6 version. I needed it anyway to be able to compile up to 9.6,
but I haven't taken a look at 9.6 yet.
--
Best regards,
Nicolas Graves
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-10-31 14:02 ` Nicolas Graves via Guix-patches via
@ 2024-11-02 15:18 ` Lars-Dominik Braun
2024-11-02 18:47 ` Nicolas Graves via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Lars-Dominik Braun @ 2024-11-02 15:18 UTC (permalink / raw)
To: Nicolas Graves; +Cc: dev, saku, 67921
Hi,
> My mistake, just to be clear, this patch is here to fix the build of
> 9.8.4 after the core-updates merges, more than to fix the last errors on
> the 9.6 version. I needed it anyway to be able to compile up to 9.6,
> but I haven't taken a look at 9.6 yet.
you mean “fix the build of 8.8.4”? I don’t see that we have 9.8 anywhere.
Lars
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-11-02 15:18 ` Lars-Dominik Braun
@ 2024-11-02 18:47 ` Nicolas Graves via Guix-patches via
2024-11-13 4:47 ` Divya Ranjan via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-11-02 18:47 UTC (permalink / raw)
To: Lars-Dominik Braun; +Cc: dev, saku, 67921
On 2024-11-02 16:18, Lars-Dominik Braun wrote:
> Hi,
>
>> My mistake, just to be clear, this patch is here to fix the build of
>> 9.8.4 after the core-updates merges, more than to fix the last errors on
>> the 9.6 version. I needed it anyway to be able to compile up to 9.6,
>> but I haven't taken a look at 9.6 yet.
>
> you mean “fix the build of 8.8.4”? I don’t see that we have 9.8
> anywhere.
9.4.8 sorry.
It actually needed another small fix (there is an invocation of ghc in
RTS tests that doesn't use TEST_HC_OPTS). I will provide it in another
revision. I still have the bugs for 9.6, I'm trying to investigate them
but they are indeed tricky, the rebuild time for ghc and the default
flags of ld incompatible with --print-c-compiler-link-flags
makes it difficult to even understand why these last 9.6 tests are
failing.
>
> Lars
>
--
Best regards,
Nicolas Graves
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-11-02 18:47 ` Nicolas Graves via Guix-patches via
@ 2024-11-13 4:47 ` Divya Ranjan via Guix-patches via
2024-11-13 8:00 ` Nicolas Graves via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Divya Ranjan via Guix-patches via @ 2024-11-13 4:47 UTC (permalink / raw)
To: Nicolas Graves; +Cc: dev, Lars-Dominik Braun, saku, 67921
Hello Nicholas, Lars and others.
I’ve planned to pick up the work needed for this upgrade. Where are we and what more work is needed? A brief summary with specific tasks would help me get started.
Regards,
--
Divya Ranjan,
Philosophy, Mathematics, Libre Software.
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-11-13 4:47 ` Divya Ranjan via Guix-patches via
@ 2024-11-13 8:00 ` Nicolas Graves via Guix-patches via
2024-11-14 17:42 ` Divya Ranjan via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-11-13 8:00 UTC (permalink / raw)
To: Divya Ranjan; +Cc: dev, Lars-Dominik Braun, saku, 67921
On 2024-11-13 04:47, Divya Ranjan via Guix-patches via wrote:
> Hello Nicholas, Lars and others.
>
> I’ve planned to pick up the work needed for this upgrade. Where are we
> and what more work is needed? A brief summary with specific tasks
> would help me get started.
I haven't managed to get much more done. What happened is that
core-updates broke the original patch series, the patch I added fixes
the build of version 9.4.8 and makes a previous patch unnecessary, but
the way I wrote it required to build from versions 8.6 (basically one
entire day of pure build on my machine).
If I were to rebuild everything from 8.6 once again, I would actually
rather try the #:make-flag EXTRA_HC_OPTS (IIRC) which is definitely the
same thing in 9.4.8, but it wasn't that clear in 8.6.
From there you'll see that some tests for 9.6 are still broken. I last
was working on decoupling the build (which works) from the tests (some
still failed, hard to understand why), because the rebuild is huge and
makes iterations quite painful. But even that is hard since you would
need the hadrian test phase to be run to get the necessary files
(hadrian config for tests and some binaries) to run tests independently
in another guix package. IIRC I stopped there but still have some
progress in my stash.
>
> Regards,
--
Best regards,
Nicolas Graves
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-11-13 8:00 ` Nicolas Graves via Guix-patches via
@ 2024-11-14 17:42 ` Divya Ranjan via Guix-patches via
2024-11-14 22:55 ` Nicolas Graves via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Divya Ranjan via Guix-patches via @ 2024-11-14 17:42 UTC (permalink / raw)
To: Nicolas Graves; +Cc: dev, Lars-Dominik Braun, saku, 67921
Nicolas Graves <ngraves@ngraves.fr> writes:
> On 2024-11-13 04:47, Divya Ranjan via Guix-patches via wrote:
>
>> Hello Nicholas, Lars and others.
>>
>> I’ve planned to pick up the work needed for this upgrade. Where are we
>> and what more work is needed? A brief summary with specific tasks
>> would help me get started.
>
> I haven't managed to get much more done. What happened is that
> core-updates broke the original patch series, the patch I added fixes
> the build of version 9.4.8 and makes a previous patch unnecessary, but
> the way I wrote it required to build from versions 8.6 (basically one
> entire day of pure build on my machine).
>
> If I were to rebuild everything from 8.6 once again, I would actually
> rather try the #:make-flag EXTRA_HC_OPTS (IIRC) which is definitely the
> same thing in 9.4.8, but it wasn't that clear in 8.6.
Is building everything from 8.6 a good idea though? Is it /that/ broken?
> From there you'll see that some tests for 9.6 are still broken. I last
> was working on decoupling the build (which works) from the tests (some
> still failed, hard to understand why), because the rebuild is huge and
> makes iterations quite painful. But even that is hard since you would
> need the hadrian test phase to be run to get the necessary files
> (hadrian config for tests and some binaries) to run tests independently
> in another guix package. IIRC I stopped there but still have some
> progress in my stash.
Okay, is there any particular reason why this is being so hard? I haven’t seen such problems with Nix.
Regards,
--
Divya Ranjan,
Philosophy, Mathematics, Libre Software.
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-11-14 17:42 ` Divya Ranjan via Guix-patches via
@ 2024-11-14 22:55 ` Nicolas Graves via Guix-patches via
2024-11-14 23:13 ` Divya Ranjan via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-11-14 22:55 UTC (permalink / raw)
To: Divya Ranjan; +Cc: dev, Lars-Dominik Braun, saku, 67921
On 2024-11-14 17:42, Divya Ranjan wrote:
> Nicolas Graves <ngraves@ngraves.fr> writes:
>
>> On 2024-11-13 04:47, Divya Ranjan via Guix-patches via wrote:
>>
>>> Hello Nicholas, Lars and others.
>>>
>>> I’ve planned to pick up the work needed for this upgrade. Where are we
>>> and what more work is needed? A brief summary with specific tasks
>>> would help me get started.
>>
>> I haven't managed to get much more done. What happened is that
>> core-updates broke the original patch series, the patch I added fixes
>> the build of version 9.4.8 and makes a previous patch unnecessary, but
>> the way I wrote it required to build from versions 8.6 (basically one
>> entire day of pure build on my machine).
>>
>> If I were to rebuild everything from 8.6 once again, I would actually
>> rather try the #:make-flag EXTRA_HC_OPTS (IIRC) which is definitely the
>> same thing in 9.4.8, but it wasn't that clear in 8.6.
>
> Is building everything from 8.6 a good idea though? Is it /that/
> broken?
The upside is more consistent and easier to understand code in Guix, the
downside is rebuild times. Only depends on how you weight each other.
>> From there you'll see that some tests for 9.6 are still broken. I last
>> was working on decoupling the build (which works) from the tests (some
>> still failed, hard to understand why), because the rebuild is huge and
>> makes iterations quite painful. But even that is hard since you would
>> need the hadrian test phase to be run to get the necessary files
>> (hadrian config for tests and some binaries) to run tests independently
>> in another guix package. IIRC I stopped there but still have some
>> progress in my stash.
>
> Okay, is there any particular reason why this is being so hard? I
> haven’t seen such problems with Nix.
It is hard to get what's wrong based on the error messages. Also when I
tried to add options for more logging (don't remember which one I
tested) on Hadrian's options passed to the linker (through
EXTRA_HC_OPTS for instance), it fails because the option was
incompatible with another one set by Hadrian. I wanted to try more
logging options to at least have a better understanding of what was
going wrong, but then started on decoupling build and tests because of
the high rebuild time.
There's still ultimately the option to skip the tests, which is not
difficult, but neither desirable.
>
> Regards,
--
Best regards,
Nicolas Graves
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-11-14 22:55 ` Nicolas Graves via Guix-patches via
@ 2024-11-14 23:13 ` Divya Ranjan via Guix-patches via
2024-11-15 8:38 ` Nicolas Graves via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Divya Ranjan via Guix-patches via @ 2024-11-14 23:13 UTC (permalink / raw)
To: Nicolas Graves; +Cc: dev, Lars-Dominik Braun, saku, 67921
[-- Attachment #1: Type: text/plain, Size: 3043 bytes --]
> The upside is more consistent and easier to understand code in Guix, the downside is rebuild times. Only depends on how you weigh each other.
Any estimation for the ballpark within which which it might fall? Here do you mean rebuild times of each version? Like, this build time isn't going to affect user installation and creation of drvs, or would it?
On 14 November 2024 22:55:17 GMT, Nicolas Graves <ngraves@ngraves.fr> wrote:
>On 2024-11-14 17:42, Divya Ranjan wrote:
>
>> Nicolas Graves <ngraves@ngraves.fr> writes:
>>
>>> On 2024-11-13 04:47, Divya Ranjan via Guix-patches via wrote:
>>>
>>>> Hello Nicholas, Lars and others.
>>>>
>>>> I’ve planned to pick up the work needed for this upgrade. Where are we
>>>> and what more work is needed? A brief summary with specific tasks
>>>> would help me get started.
>>>
>>> I haven't managed to get much more done. What happened is that
>>> core-updates broke the original patch series, the patch I added fixes
>>> the build of version 9.4.8 and makes a previous patch unnecessary, but
>>> the way I wrote it required to build from versions 8.6 (basically one
>>> entire day of pure build on my machine).
>>>
>>> If I were to rebuild everything from 8.6 once again, I would actually
>>> rather try the #:make-flag EXTRA_HC_OPTS (IIRC) which is definitely the
>>> same thing in 9.4.8, but it wasn't that clear in 8.6.
>>
>> Is building everything from 8.6 a good idea though? Is it /that/
>> broken?
>
>The upside is more consistent and easier to understand code in Guix, the
>downside is rebuild times. Only depends on how you weight each other.
>
>>> From there you'll see that some tests for 9.6 are still broken. I last
>>> was working on decoupling the build (which works) from the tests (some
>>> still failed, hard to understand why), because the rebuild is huge and
>>> makes iterations quite painful. But even that is hard since you would
>>> need the hadrian test phase to be run to get the necessary files
>>> (hadrian config for tests and some binaries) to run tests independently
>>> in another guix package. IIRC I stopped there but still have some
>>> progress in my stash.
>>
>> Okay, is there any particular reason why this is being so hard? I
>> haven’t seen such problems with Nix.
>
>It is hard to get what's wrong based on the error messages. Also when I
>tried to add options for more logging (don't remember which one I
>tested) on Hadrian's options passed to the linker (through
>EXTRA_HC_OPTS for instance), it fails because the option was
>incompatible with another one set by Hadrian. I wanted to try more
>logging options to at least have a better understanding of what was
>going wrong, but then started on decoupling build and tests because of
>the high rebuild time.
>
>There's still ultimately the option to skip the tests, which is not
>difficult, but neither desirable.
>>
>> Regards,
>
>--
>Best regards,
>Nicolas Graves
Divya Ranjan, Mathematics, Philosophy and Libre Software
[-- Attachment #2: Type: text/html, Size: 4360 bytes --]
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-11-14 23:13 ` Divya Ranjan via Guix-patches via
@ 2024-11-15 8:38 ` Nicolas Graves via Guix-patches via
2024-11-15 19:52 ` Divya Ranjan via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-11-15 8:38 UTC (permalink / raw)
To: Divya Ranjan; +Cc: dev, Lars-Dominik Braun, saku, 67921
On 2024-11-14 23:13, Divya Ranjan wrote:
>> The upside is more consistent and easier to understand code in Guix,
>> the downside is rebuild times. Only depends on how you weigh each
>> other.
>
> Any estimation for the ballpark within which which it might fall? Here
> do you mean rebuild times of each version? Like, this build time isn't
> going to affect user installation and creation of drvs, or would it?
I'm not sure I understand your question well. Once these derivations
are built on the server and available as substitutes, users will replace
them by downloading their binaries. But I'm not sure this is your
question.
Using 15 cores on x86-64, it takes basically one day (~10h) to rebuild
versions 8.6 to 9.4.
This first commit is not strictly necessary. If you wich to avoid these
rebuild costs, you can instead just drop the patch, and use this option
passed to the linker on 9.4 only (necessary, there are similar build
failures otherwise). This is actually a good alternative, since I know
other versions will build. If you can fix 9.6, we can inject my first
patch only for server evaluation before merging.
--
Best regards,
Nicolas Graves
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-11-15 8:38 ` Nicolas Graves via Guix-patches via
@ 2024-11-15 19:52 ` Divya Ranjan via Guix-patches via
2024-11-16 8:26 ` Saku Laesvuori via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Divya Ranjan via Guix-patches via @ 2024-11-15 19:52 UTC (permalink / raw)
To: Nicolas Graves; +Cc: dev, Lars-Dominik Braun, saku, 67921
[-- Attachment #1: Type: text/plain, Size: 1430 bytes --]
> I'm not sure I understand your question well. Once these derivations are built on the server and available as substitutes, users will replace them by downloading their binaries. But I'm not sure this is your
question.
I meant is this building process going to be conducted everytime one installs a version of ghc using guix install?
> Using 15 cores on x86-64, it takes basically one day (~10h) to rebuild versions 8.6 to 9.4.
That is humungous. I can't even estimate how long that'll take on my poor i3, if it doesn't melt it.
> If you wish to avoid these rebuild costs, you can instead just drop the patch, and use this option passed to the linker on 9.4 only (necessary, there are similar build
failures otherwise). This is actually a good alternative, since I know other versions will build. If you can fix 9.6, we can inject my first patch only for server evaluation before merging.
Okay, indeed this seems the better option. I'll try this the option method and see if 9.4 builds.
Also, do you want to catch up on this in-sync sometime? Like talk about this in realtime over mumble, jitsi or whatever. As a regular Haskeller I think this is extremely important, so I'm looking forward to getting this done.
Also, one of the reasons why we haven't yet packaged haskell-language-server is because of these ghc build issues, right?
Regards,
Divya Ranjan, Mathematics, Philosophy and Libre Software
[-- Attachment #2: Type: text/html, Size: 1560 bytes --]
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-11-15 19:52 ` Divya Ranjan via Guix-patches via
@ 2024-11-16 8:26 ` Saku Laesvuori via Guix-patches via
2024-11-16 10:36 ` Nicolas Graves via Guix-patches via
0 siblings, 1 reply; 123+ messages in thread
From: Saku Laesvuori via Guix-patches via @ 2024-11-16 8:26 UTC (permalink / raw)
To: Divya Ranjan; +Cc: Lars-Dominik Braun, dev, Nicolas Graves, 67921
[-- Attachment #1: Type: text/plain, Size: 674 bytes --]
On Fri, Nov 15, 2024 at 07:52:15PM +0000, Divya Ranjan wrote:
> Also, one of the reasons why we haven't yet packaged
> haskell-language-server is because of these ghc build issues, right?
I think it is mostly because haskell-language-server is not on stackage
and the hackage importer is[1] not able to recursively import working
versions of the dependencies. Thus packaging HLS is quite tidious as one
has to manually go through all the tens of invalid dependency versions.
Updating ghc would probably help a bit, but I don't think it is the main
issue.
[1]: There was recently some work related to importing hackage packages
by version so maybe this has changed
- Saku
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 123+ messages in thread
* [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39.
2024-11-16 8:26 ` Saku Laesvuori via Guix-patches via
@ 2024-11-16 10:36 ` Nicolas Graves via Guix-patches via
0 siblings, 0 replies; 123+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2024-11-16 10:36 UTC (permalink / raw)
To: Saku Laesvuori, Divya Ranjan; +Cc: dev, Lars-Dominik Braun, 67921
On 2024-11-16 10:26, Saku Laesvuori wrote:
> On Fri, Nov 15, 2024 at 07:52:15PM +0000, Divya Ranjan wrote:
>> Also, one of the reasons why we haven't yet packaged
>> haskell-language-server is because of these ghc build issues, right?
>
> I think it is mostly because haskell-language-server is not on stackage
> and the hackage importer is[1] not able to recursively import working
> versions of the dependencies. Thus packaging HLS is quite tidious as one
> has to manually go through all the tens of invalid dependency versions.
> Updating ghc would probably help a bit, but I don't think it is the main
> issue.
>
> [1]: There was recently some work related to importing hackage packages
> by version so maybe this has changed
Indeed, I'll provide some patches for that, will CC you.
>
> - Saku
--
Best regards,
Nicolas Graves
^ permalink raw reply [flat|nested] 123+ messages in thread
end of thread, other threads:[~2024-11-16 10:37 UTC | newest]
Thread overview: 123+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-20 7:10 [bug#67921] [PATCH haskell-team 1/3] gnu: ghc-next: Update to version 9.4.8 Saku Laesvuori via Guix-patches via
2023-12-20 7:13 ` [bug#67921] [PATCH haskell-team 2/3] gnu: ghc: Use version 9.4.8 as the default Saku Laesvuori via Guix-patches via
2023-12-22 10:07 ` Lars-Dominik Braun
2023-12-22 10:33 ` Saku Laesvuori via Guix-patches via
2023-12-22 11:03 ` Lars-Dominik Braun
2023-12-20 7:13 ` [bug#67921] [PATCH haskell-team 3/3] guix: haskell-build-system: Hide dependecies from ghc's package db Saku Laesvuori via Guix-patches via
2024-01-06 18:42 ` Lars-Dominik Braun
2024-01-08 7:09 ` Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [WIP PATCH v2 00/23] Update GHC to 9.6.4 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69154] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 01/23] gnu: ghc-next: Update to version 9.4.8 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69144] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 02/23] gnu: Add ghc-js-flot-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69143] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 03/23] gnu: Add ghc-clock-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69142] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 04/23] gnu: Add ghc-extra-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69151] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 05/23] gnu: Add ghc-hashable-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69158] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 06/23] gnu: Add ghc-splitmix-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69165] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 07/23] gnu: Add ghc-random-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69156] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 08/23] gnu: Add ghc-primitive-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69161] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 09/23] gnu: Add ghc-js-jquery-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69153] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 10/23] gnu: Add ghc-utf8-string-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69157] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 11/23] gnu: Add ghc-heaps-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69152] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 12/23] gnu: Add ghc-js-dgtable-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69146] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 13/23] gnu: Add ghc-nats-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69147] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 14/23] gnu: Add ghc-tagged-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69145] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 15/23] gnu: Add ghc-semigroups-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69148] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 16/23] gnu: Add ghc-base16-bytestring-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69155] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 17/23] gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69160] " Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#67921] [PATCH v2 18/23] gnu: Add ghc-unordered-containers-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:49 ` [bug#69149] " Saku Laesvuori via Guix-patches via
2024-02-15 8:50 ` [bug#67921] [PATCH v2 19/23] gnu: Add ghc-filepattern-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:50 ` [bug#69162] " Saku Laesvuori via Guix-patches via
2024-02-15 8:50 ` [bug#67921] [PATCH v2 20/23] gnu: Add ghc-shake-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:50 ` [bug#69163] " Saku Laesvuori via Guix-patches via
2024-02-15 8:50 ` [bug#67921] [PATCH v2 21/23] gnu: Add hadrian-for-ghc-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:50 ` [bug#69164] " Saku Laesvuori via Guix-patches via
2024-02-15 8:50 ` [bug#67921] [PATCH v2 22/23] gnu: Add ghc-9.6 Saku Laesvuori via Guix-patches via
2024-02-15 8:50 ` [bug#69159] " Saku Laesvuori via Guix-patches via
2024-02-15 8:50 ` [bug#67921] [PATCH v2 23/23] gnu: ghc: Update to version 9.6.4 Saku Laesvuori via Guix-patches via
2024-02-15 8:50 ` [bug#69150] " Saku Laesvuori via Guix-patches via
2024-02-15 16:41 ` [bug#69154] Closing accidental issues Saku Laesvuori via Guix-patches via
2024-02-15 17:05 ` Hilton Chain via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 00/23] Update GHC to 9.6.5 Saku Laesvuori via Guix-patches via
2024-06-14 13:55 ` Lars-Dominik Braun
2024-06-27 20:24 ` Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 01/23] gnu: ghc-next: Update to version 9.4.8 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 02/23] gnu: Add ghc-js-flot-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 03/23] gnu: Add ghc-clock-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 04/23] gnu: Add ghc-extra-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 05/23] gnu: Add ghc-hashable-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 06/23] gnu: Add ghc-splitmix-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 07/23] gnu: Add ghc-random-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 08/23] gnu: Add ghc-primitive-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 09/23] gnu: Add ghc-js-jquery-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 10/23] gnu: Add ghc-utf8-string-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 11/23] gnu: Add ghc-heaps-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 12/23] gnu: Add ghc-js-dgtable-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 13/23] gnu: Add ghc-nats-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 14/23] gnu: Add ghc-tagged-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 15/23] gnu: Add ghc-semigroups-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 16/23] gnu: Add ghc-base16-bytestring-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 17/23] gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 18/23] gnu: Add ghc-unordered-containers-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 19/23] gnu: Add ghc-filepattern-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 20/23] gnu: Add ghc-shake-bootstrap-for-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 21/23] gnu: Add hadrian-for-ghc-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 22/23] gnu: Add ghc-9.6 Saku Laesvuori via Guix-patches via
2024-06-07 7:49 ` [bug#67921] [PATCH haskell-team 23/23] gnu: ghc: Update to version 9.6.5 Saku Laesvuori via Guix-patches via
2024-02-15 17:05 ` [bug#67921] [WIP PATCH v2 00/23] Update GHC to 9.6.4 Suhail via Guix-patches via
2024-02-15 17:49 ` Saku Laesvuori via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 00/24] [haskell-team] GHC update Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 01/24] gnu: ghc: More robust build with binutils ≥ 2.39 Nicolas Graves via Guix-patches via
2024-10-31 14:02 ` Nicolas Graves via Guix-patches via
2024-11-02 15:18 ` Lars-Dominik Braun
2024-11-02 18:47 ` Nicolas Graves via Guix-patches via
2024-11-13 4:47 ` Divya Ranjan via Guix-patches via
2024-11-13 8:00 ` Nicolas Graves via Guix-patches via
2024-11-14 17:42 ` Divya Ranjan via Guix-patches via
2024-11-14 22:55 ` Nicolas Graves via Guix-patches via
2024-11-14 23:13 ` Divya Ranjan via Guix-patches via
2024-11-15 8:38 ` Nicolas Graves via Guix-patches via
2024-11-15 19:52 ` Divya Ranjan via Guix-patches via
2024-11-16 8:26 ` Saku Laesvuori via Guix-patches via
2024-11-16 10:36 ` Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 02/24] gnu: ghc-next: Update to version 9.4.8 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 03/24] gnu: Add ghc-js-flot-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 04/24] gnu: Add ghc-clock-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 05/24] gnu: Add ghc-extra-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 06/24] gnu: Add ghc-hashable-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 07/24] gnu: Add ghc-splitmix-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 08/24] gnu: Add ghc-random-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 09/24] gnu: Add ghc-primitive-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 10/24] gnu: Add ghc-js-jquery-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 11/24] gnu: Add ghc-utf8-string-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 12/24] gnu: Add ghc-heaps-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 13/24] gnu: Add ghc-js-dgtable-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 14/24] gnu: Add ghc-nats-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 15/24] gnu: Add ghc-tagged-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 16/24] gnu: Add ghc-semigroups-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 17/24] gnu: Add ghc-base16-bytestring-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 18/24] gnu: Add ghc-cryptohash-sha256-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 19/24] gnu: Add ghc-unordered-containers-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:46 ` [bug#67921] [PATCH v3 20/24] gnu: Add ghc-filepattern-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:47 ` [bug#67921] [PATCH v3 21/24] gnu: Add ghc-shake-bootstrap-for-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:47 ` [bug#67921] [PATCH v3 22/24] gnu: Add hadrian-for-ghc-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:47 ` [bug#67921] [PATCH v3 23/24] gnu: Add ghc-9.6 Nicolas Graves via Guix-patches via
2024-10-31 12:47 ` [bug#67921] [PATCH v3 24/24] gnu: ghc: Update to version 9.6.4 Nicolas Graves via Guix-patches via
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.