dev-haskell/dbus: Bump to 1.2.27, patch to allow earlier TH

Patch (by me) to allow earlier template-haskell versions.

Tests pass with network-sandbox, thanks to eroen for reporting.

Fix: dbus depends on nonexistent version of lens #1360, thanks to Hypoon
for reporting.

Closes: https://github.com/gentoo-haskell/gentoo-haskell/issues/1360
Closes: https://bugs.gentoo.org/575254
Signed-off-by: Mark Wright <gienah@gentoo.org>
This commit is contained in:
Mark Wright
2022-11-15 14:39:19 +11:00
parent 79abfd1e5c
commit 4184202494
4 changed files with 77 additions and 7 deletions

View File

@@ -1 +1,2 @@
DIST dbus-1.2.22.tar.gz 78010 BLAKE2B c7189e15e0a9622e707bb50064584bd43141857257baec8e6d59d0cf39428b3b5efa82668ef70fbff218738ba5822b1aaad0c85b5e14bfa3ae4ef237e2458a9d SHA512 81f9fe1420939ebb5b03602ba59dd86656e4443690d8be460684dcb461ff7df1ff4cdf846a5a15ea6193b6f64b08526b27d3e12825a375eecbded3d0a99a59b9
DIST dbus-1.2.27.tar.gz 78017 BLAKE2B 396739e7e6af0fe1921c9d3857c0650db9532d00a3fd2eda18042d42ce8336631d93d0c0ce75681b695f9e90c7205e38aea7c4f984544460ecab19c7d5090478 SHA512 2c6b87b4a793b555ef617e3f3f89695116180f0e1df2f84ee3da62c819c05c10a78d328644b84c8c9796354ee6dd1c6ad6b0430a1b9a2d7fe112b251d4606e8d

View File

@@ -0,0 +1,51 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# ebuild generated by hackport 0.7.1.1.9999
CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
inherit haskell-cabal
DESCRIPTION="A client library for the D-Bus IPC system"
HOMEPAGE="https://github.com/rblaze/haskell-dbus#readme"
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0/${PV}"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
PATCHES=(
"${FILESDIR}/${PN}-1.2.22-disable-integration-tests.patch"
"${FILESDIR}/${PN}-1.2.27-template-haskell.patch"
)
RDEPEND="<dev-haskell/cereal-0.6:=[profile?]
>=dev-haskell/conduit-1.3.0:=[profile?] <dev-haskell/conduit-1.4:=[profile?]
<dev-haskell/lens-5.3:=[profile?]
>=dev-haskell/network-3.1.2.1:=[profile?] <dev-haskell/network-3.2:=[profile?]
<dev-haskell/random-1.3:=[profile?]
<dev-haskell/split-0.3:=[profile?]
<dev-haskell/th-lift-0.9:=[profile?]
<dev-haskell/vector-0.14:=[profile?]
>=dev-haskell/xml-conduit-1.9.0.0:=[profile?] <dev-haskell/xml-conduit-1.10.0.0:=[profile?]
<dev-haskell/xml-types-0.4:=[profile?]
>=dev-lang/ghc-8.10.1:=
"
DEPEND="${RDEPEND}
>=dev-haskell/cabal-3.2.0.0
test? ( <dev-haskell/extra-1.8
<dev-haskell/quickcheck-2.15
<dev-haskell/resourcet-1.3
<dev-haskell/tasty-1.5
<dev-haskell/tasty-hunit-0.11
<dev-haskell/tasty-quickcheck-0.11 )
"
src_prepare() {
default
cabal_chdeps \
"base >=4.16 && <5" "base >=4 && <5" \
"template-haskell >= 2.18 && < 2.20" "template-haskell"
}

View File

@@ -0,0 +1,14 @@
--- dbus-1.2.27-orig/lib/DBus/Generation.hs 2022-07-13 00:32:15.000000000 +1000
+++ dbus-1.2.27/lib/DBus/Generation.hs 2022-11-15 11:11:32.291154128 +1100
@@ -148,7 +148,11 @@
makeFromVariantApp name = AppE (VarE 'T.fromVariant) $ VarE name
makeJustPattern :: Name -> Pat
+#if MIN_VERSION_template_haskell(2,18,0)
makeJustPattern name = ConP 'Just [] [VarP name]
+#else
+makeJustPattern name = ConP 'Just [VarP name]
+#endif
mapOrHead ::
(Num a, Eq a) => a -> (t -> b) -> [t] -> ([b] -> b) -> b

View File

@@ -8,23 +8,23 @@
D-Bus is a simple, message-based protocol for inter-process
communication, which allows applications to interact with other parts of
the machine and the user's session using remote procedure calls.
D-Bus is a essential part of the modern Linux desktop, where it replaces
earlier protocols such as CORBA and DCOP.
This library is an implementation of the D-Bus protocol in Haskell. It
can be used to add D-Bus support to Haskell applications, without the
awkward interfaces common to foreign bindings.
Example: connect to the session bus, and get a list of active names.
@
&amp;#x7b;-\# LANGUAGE OverloadedStrings \#-&amp;#x7d;
import Data.List (sort)
import DBus
import DBus.Client
main = do
&amp;#x20; client &lt;- connectSession
&amp;#x20; //
@@ -41,7 +41,7 @@
&amp;#x20; \-- temporary names.
&amp;#x20; mapM_ putStrLn (sort names)
@
&gt;$ ghc --make list-names.hs
&gt;$ ./list-names
&gt;:1.0
@@ -56,4 +56,8 @@
&gt;org.freedesktop.secrets
&gt;org.gnome.ScreenSaver
</longdescription>
<upstream>
<remote-id type="hackage">dbus</remote-id>
<remote-id type="github">rblaze/haskell-dbus</remote-id>
</upstream>
</pkgmetadata>