[arch-commits] Commit in cabal-install/repos (3 files)
Felix Yan
felixonmars at gemini.archlinux.org
Sun Jun 12 17:08:50 UTC 2022
Date: Sunday, June 12, 2022 @ 17:08:50
Author: felixonmars
Revision: 1237057
archrelease: copy trunk to community-staging-x86_64
Added:
cabal-install/repos/community-staging-x86_64/
cabal-install/repos/community-staging-x86_64/PKGBUILD
(from rev 1237056, cabal-install/trunk/PKGBUILD)
cabal-install/repos/community-staging-x86_64/cabal-install-base16-bytestring1.0.patch
(from rev 1237056, cabal-install/trunk/cabal-install-base16-bytestring1.0.patch)
------------------------------------------+
PKGBUILD | 46 +++++++++++++++++
cabal-install-base16-bytestring1.0.patch | 78 +++++++++++++++++++++++++++++
2 files changed, 124 insertions(+)
Copied: cabal-install/repos/community-staging-x86_64/PKGBUILD (from rev 1237056, cabal-install/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD (rev 0)
+++ community-staging-x86_64/PKGBUILD 2022-06-12 17:08:50 UTC (rev 1237057)
@@ -0,0 +1,46 @@
+# Maintainer: Felix Yan <felixonmars at archlinux.org>
+# Contributor: Thomas Dziedzic <gostrc at gmail.com>
+# Contributor: Vesa Kaihlavirta <vesa at archlinux.org>
+# Contributor: Arch Haskell Team <arch-haskell at haskell.org>
+
+pkgname=cabal-install
+pkgver=3.4.0.0
+pkgrel=158
+pkgdesc="The command-line interface for Cabal and Hackage."
+url="https://hackage.haskell.org/package/cabal-install"
+license=('BSD')
+arch=('x86_64')
+depends=('ghc-libs' 'haskell-async' 'haskell-base16-bytestring' 'haskell-cryptohash-sha256'
+ 'haskell-echo' 'haskell-edit-distance' 'haskell-hackage-security' 'haskell-hashable'
+ 'haskell-http' 'haskell-network-uri' 'haskell-random' 'haskell-regex-base'
+ 'haskell-regex-posix' 'haskell-resolv' 'haskell-tar' 'haskell-zlib' 'haskell-lukko')
+makedepends=('ghc' 'uusi')
+source=("https://hackage.haskell.org/package/cabal-install-${pkgver}/cabal-install-${pkgver}.tar.gz"
+ $pkgname-base16-bytestring1.0.patch)
+sha512sums=('0fd93c86c59e3c626341be3c67e69a1502f1ce1413b4a456cd930d5449cabdaeb033ac5f47673db0e708fc194aadf8ab0aa2904b6b0f195b57907c5b40588323'
+ '966e2f0e3fd1cff3d673cb91f73b2a42049653e39a3025cdbbf86ec8ebfbd49bad278c8d01f521bbe580369bd11baf2aa7f8195e0ae450efd8ae615d13aa2300')
+
+prepare() {
+ cd $pkgname-$pkgver
+ patch -p2 -i ../$pkgname-base16-bytestring1.0.patch
+ uusi -u base -u hashable -u HTTP $pkgname.cabal
+}
+
+build() {
+ cd $pkgname-$pkgver
+
+ runhaskell Setup configure -O --prefix=/usr --enable-executable-dynamic --disable-library-vanilla \
+ --docdir=/usr/share/doc/$pkgname --datasubdir=$pkgname
+ runhaskell Setup build $MAKEFLAGS
+}
+
+package() {
+ cd $pkgname-$pkgver
+ runhaskell Setup copy --destdir="${pkgdir}"
+
+ install -Dm644 LICENSE \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+
+ install -Dm644 bash-completion/cabal \
+ "${pkgdir}/usr/share/bash-completion/completions/cabal"
+}
Copied: cabal-install/repos/community-staging-x86_64/cabal-install-base16-bytestring1.0.patch (from rev 1237056, cabal-install/trunk/cabal-install-base16-bytestring1.0.patch)
===================================================================
--- community-staging-x86_64/cabal-install-base16-bytestring1.0.patch (rev 0)
+++ community-staging-x86_64/cabal-install-base16-bytestring1.0.patch 2022-06-12 17:08:50 UTC (rev 1237057)
@@ -0,0 +1,78 @@
+diff --git a/cabal-install/Distribution/Client/HashValue.hs b/cabal-install/Distribution/Client/HashValue.hs
+index 54b8aee9e..11e647c1c 100644
+--- a/cabal-install/Distribution/Client/HashValue.hs
++++ b/cabal-install/Distribution/Client/HashValue.hs
+@@ -1,3 +1,4 @@
++{-# LANGUAGE CPP #-}
+ {-# LANGUAGE DeriveDataTypeable #-}
+ {-# LANGUAGE DeriveGeneric #-}
+ module Distribution.Client.HashValue (
+@@ -72,10 +73,14 @@ hashFromTUF (Sec.Hash hashstr) =
+ --TODO: [code cleanup] either we should get TUF to use raw bytestrings or
+ -- perhaps we should also just use a base16 string as the internal rep.
+ case Base16.decode (BS.pack hashstr) of
++#if MIN_VERSION_base16_bytestring(1,0,0)
++ Right hash -> HashValue hash
++ Left _ -> error "hashFromTUF: cannot decode base16"
++#else
+ (hash, trailing) | not (BS.null hash) && BS.null trailing
+ -> HashValue hash
+ _ -> error "hashFromTUF: cannot decode base16 hash"
+-
++#endif
+
+ -- | Truncate a 32 byte SHA256 hash to
+ --
+diff --git a/cabal-install/src/Distribution/Client/HttpUtils.hs b/cabal-install/src/Distribution/Client/HttpUtils.hs
+index 9b8a8ecb844..0c334bec44a 100644
+--- a/cabal-install/Distribution/Client/HttpUtils.hs
++++ b/cabal-install/Distribution/Client/HttpUtils.hs
+@@ -1,4 +1,5 @@
+ {-# LANGUAGE BangPatterns #-}
++{-# LANGUAGE CPP #-}
+ -----------------------------------------------------------------------------
+ -- | Separate module for HTTP actions, using a proxy server if one exists.
+ -----------------------------------------------------------------------------
+@@ -182,7 +183,11 @@ downloadURI transport verbosity uri path = do
+ fragmentParser = do
+ _ <- P.string "#sha256="
+ str <- some P.hexDigit
++#if MIN_VERSION_base16_bytestring(1,0,0)
++ return (Base16.decodeLenient (BS8.pack str))
++#else
+ return (fst (Base16.decode (BS8.pack str)))
++#endif
+
+ ------------------------------------------------------------------------------
+ -- Utilities for repo url management
+diff --git a/cabal-install/src/Distribution/Client/HttpUtils.hs b/cabal-install/src/Distribution/Client/HttpUtils.hs
+index 0c334bec44a..6de14f3c661 100644
+--- a/cabal-install/Distribution/Client/HttpUtils.hs
++++ b/cabal-install/Distribution/Client/HttpUtils.hs
+@@ -183,10 +183,11 @@ downloadURI transport verbosity uri path = do
+ fragmentParser = do
+ _ <- P.string "#sha256="
+ str <- some P.hexDigit
++ let bs = Base16.decode (BS8.pack str)
+ #if MIN_VERSION_base16_bytestring(1,0,0)
+- return (Base16.decodeLenient (BS8.pack str))
++ either fail return bs
+ #else
+- return (fst (Base16.decode (BS8.pack str)))
++ return (fst bs)
+ #endif
+
+ ------------------------------------------------------------------------------
+diff --git a/cabal-install/cabal-install.cabal b/cabal-install/cabal-install.cabal
+index ee49fe245..6d423fdb3 100644
+--- a/cabal-install/cabal-install.cabal
++++ b/cabal-install/cabal-install.cabal
+@@ -319,7 +319,7 @@ executable cabal
+ async >= 2.0 && < 2.3,
+ array >= 0.4 && < 0.6,
+ base >= 4.8 && < 4.15,
+- base16-bytestring >= 0.1.1 && < 0.2,
++ base16-bytestring >= 0.1.1 && < 1.1.0.0,
+ binary >= 0.7.3 && < 0.9,
+ bytestring >= 0.10.6.0 && < 0.11,
+ Cabal == 3.2.*,
More information about the arch-commits
mailing list