diff options
| author | Sören Tempel <soeren+git@soeren-tempel.net> | 2026-08-07 12:00:46 +0200 |
|---|---|---|
| committer | Sören Tempel <soeren+git@soeren-tempel.net> | 2026-08-07 12:05:26 +0200 |
| commit | ede5806ac90db742296921e97c95d9715a1e7e95 (patch) | |
| tree | 06ab3d819be29df80067c7e150cd33847acaa369 | |
| parent | 726095a4c8b7f12b8fa04eb5f4e1d538b853014e (diff) | |
gnu: hoogle: Restore compatibility with our crypton-connection.
Without this change, `hoogle generate` fails unconditionally.
See: https://github.com/ndmitchell/hoogle/issues/450
* gnu/packages/haskell-apps.scm (hoogle): Restore crypton-connection compat.
[source]: Add new patch.
[inputs]: Add ghc-data-default-class.
* gnu/packages/patches/hoogle-crypton-connection-0.4.X.patch: Add file.
* gnu/local.mk (dist_patch_DATA): Register patch.
| -rw-r--r-- | gnu/local.mk | 1 | ||||
| -rw-r--r-- | gnu/packages/haskell-apps.scm | 4 | ||||
| -rw-r--r-- | gnu/packages/patches/hoogle-crypton-connection-0.4.X.patch | 40 |
3 files changed, 44 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index 3b91a9eb623..d828205b7cd 100644 --- a/gnu/local.mk +++ b/gnu/local.mk | |||
| @@ -1623,6 +1623,7 @@ dist_patch_DATA = \ | |||
| 1623 | %D%/packages/patches/helm-fix-gcc-9-build.patch \ | 1623 | %D%/packages/patches/helm-fix-gcc-9-build.patch \ |
| 1624 | %D%/packages/patches/highlight-gui-data-dir.patch \ | 1624 | %D%/packages/patches/highlight-gui-data-dir.patch \ |
| 1625 | %D%/packages/patches/hipblaslt-python-nanobind.patch \ | 1625 | %D%/packages/patches/hipblaslt-python-nanobind.patch \ |
| 1626 | %D%/packages/patches/hoogle-crypton-connection-0.4.X.patch \ | ||
| 1626 | %D%/packages/patches/hplip-usb-timeout.patch \ | 1627 | %D%/packages/patches/hplip-usb-timeout.patch \ |
| 1627 | %D%/packages/patches/http-parser-CVE-2020-8287.patch \ | 1628 | %D%/packages/patches/http-parser-CVE-2020-8287.patch \ |
| 1628 | %D%/packages/patches/hubbub-sort-entities.patch \ | 1629 | %D%/packages/patches/hubbub-sort-entities.patch \ |
diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm index 041b5ae93b7..374eb031747 100644 --- a/gnu/packages/haskell-apps.scm +++ b/gnu/packages/haskell-apps.scm | |||
| @@ -588,7 +588,8 @@ unwanted suggestions, and to add your own custom suggestions.") | |||
| 588 | (method url-fetch) | 588 | (method url-fetch) |
| 589 | (uri (hackage-uri "hoogle" version)) | 589 | (uri (hackage-uri "hoogle" version)) |
| 590 | (sha256 | 590 | (sha256 |
| 591 | (base32 "08z32d87vqzhapb2vw21h25jb2g74csxlpvd8f54xl91k3ijs3wx")))) | 591 | (base32 "08z32d87vqzhapb2vw21h25jb2g74csxlpvd8f54xl91k3ijs3wx")) |
| 592 | (patches (search-patches "hoogle-crypton-connection-0.4.X.patch")))) | ||
| 592 | (build-system haskell-build-system) | 593 | (build-system haskell-build-system) |
| 593 | (properties '((upstream-name . "hoogle"))) | 594 | (properties '((upstream-name . "hoogle"))) |
| 594 | (inputs (list ghc-quickcheck | 595 | (inputs (list ghc-quickcheck |
| @@ -599,6 +600,7 @@ unwanted suggestions, and to add your own custom suggestions.") | |||
| 599 | ghc-conduit | 600 | ghc-conduit |
| 600 | ghc-conduit-extra | 601 | ghc-conduit-extra |
| 601 | ghc-crypton-connection | 602 | ghc-crypton-connection |
| 603 | ghc-data-default-class | ||
| 602 | ghc-extra | 604 | ghc-extra |
| 603 | ghc-foundation | 605 | ghc-foundation |
| 604 | ghc-old-locale | 606 | ghc-old-locale |
diff --git a/gnu/packages/patches/hoogle-crypton-connection-0.4.X.patch b/gnu/packages/patches/hoogle-crypton-connection-0.4.X.patch new file mode 100644 index 00000000000..cde496d5104 --- /dev/null +++ b/gnu/packages/patches/hoogle-crypton-connection-0.4.X.patch | |||
| @@ -0,0 +1,40 @@ | |||
| 1 | Fixes compatibility with crypton-connection >= 0.4.1. | ||
| 2 | |||
| 3 | See: https://github.com/ndmitchell/hoogle/commit/77291e895b3704ecbdb7377867f1dc5f887b6f52 | ||
| 4 | |||
| 5 | diff --git a/hoogle.cabal b/hoogle.cabal | ||
| 6 | index dafc0945..c5f4c39d 100644 | ||
| 7 | --- a/hoogle.cabal | ||
| 8 | +++ b/hoogle.cabal | ||
| 9 | @@ -53,7 +53,8 @@ library | ||
| 10 | conduit >= 1.3.0, | ||
| 11 | conduit-extra >= 1.2.3.2, | ||
| 12 | containers >= 0.5, | ||
| 13 | - crypton-connection, | ||
| 14 | + crypton-connection >= 0.4.1, | ||
| 15 | + data-default-class, | ||
| 16 | deepseq, | ||
| 17 | directory, | ||
| 18 | extra >= 1.6.6, | ||
| 19 | diff --git a/src/Input/Download.hs b/src/Input/Download.hs | ||
| 20 | index 7171f458..5d40608e 100644 | ||
| 21 | --- a/src/Input/Download.hs | ||
| 22 | +++ b/src/Input/Download.hs | ||
| 23 | @@ -6,6 +6,7 @@ import System.FilePath | ||
| 24 | import Control.Monad.Extra | ||
| 25 | import System.Directory | ||
| 26 | import Data.Conduit.Binary (sinkFile) | ||
| 27 | +import Data.Default.Class | ||
| 28 | import qualified Network.HTTP.Conduit as C | ||
| 29 | import Network.Connection | ||
| 30 | import qualified Data.Conduit as C | ||
| 31 | @@ -45,7 +46,8 @@ downloadFile insecure file url = do | ||
| 32 | (TLSSettingsSimple { | ||
| 33 | settingDisableCertificateValidation = insecure, | ||
| 34 | settingDisableSession = False, | ||
| 35 | - settingUseServerName = False | ||
| 36 | + settingUseServerName = False, | ||
| 37 | + settingClientSupported = def | ||
| 38 | }) Nothing | ||
| 39 | runResourceT $ do | ||
| 40 | response <- C.http request manager | ||
