summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-util/bustle
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-util/bustle')
-rw-r--r--dev-util/bustle/Manifest5
-rw-r--r--dev-util/bustle/bustle-0.4.2-r1.ebuild66
-rw-r--r--dev-util/bustle/bustle-0.4.3.ebuild65
-rw-r--r--dev-util/bustle/bustle-0.4.7-r1.ebuild71
-rw-r--r--dev-util/bustle/bustle-0.5.1.ebuild70
-rw-r--r--dev-util/bustle/files/0001-bustle-dbus-monitor-fix-linking-order-libs-go-after-.patch44
-rw-r--r--dev-util/bustle/files/bustle-0.2.3-ghc-7.4.patch89
-rw-r--r--dev-util/bustle/files/bustle-0.2.3-restrict-gtk2hs-deps-to-gtkplus2.patch40
-rw-r--r--dev-util/bustle/files/bustle-0.4.0-ghc-7.4.patch46
-rw-r--r--dev-util/bustle/files/bustle-0.4.0-restrict-gtk2hs-deps-to-gtkplus2.patch76
-rw-r--r--dev-util/bustle/files/bustle-0.4.2-restrict-gtk2hs-deps-to-gtkplus2.patch61
-rw-r--r--dev-util/bustle/files/bustle-0.4.7-gtk-0.13.patch172
-rw-r--r--dev-util/bustle/metadata.xml12
13 files changed, 817 insertions, 0 deletions
diff --git a/dev-util/bustle/Manifest b/dev-util/bustle/Manifest
new file mode 100644
index 000000000000..4c3b9c87ff68
--- /dev/null
+++ b/dev-util/bustle/Manifest
@@ -0,0 +1,5 @@
+DIST bustle-0.4.0-tests.tar.gz 8340 SHA256 7e4c354479edc835457fdecc89ab7fc5e1087ab4637b7b1ac6fadfe860190fbe SHA512 c7685496f3a84c1615752ae9aad22202bfe703147441581abe599a5e5055cdef54f27b4e0d01603b23a83a4b42b0595b5538c5b4d65a522a9e76b8d187ae54b1 WHIRLPOOL 6591ed10c75ef044375bf5e80719aac4a40244f647c4045f45811c9e8736afaafa5b83b92803ef8912c2ecfe9672ac20734fc954ab2bb09cff2842c1e6b4fe5a
+DIST bustle-0.4.2.tar.gz 95707 SHA256 bf03fb0a14a2559b6abe4cfeb673b30d86a31a89fb45883d7594644afc434cee SHA512 8a6c1860cb655fc9bd7d42d130d87416c74b988b81749ec8cc1c25cacd3dd4516f59f5cb5954b473c3f6ac32b11853e9bc8881708962144067a0325845dd8562 WHIRLPOOL ebc31713bb202f247a38ed04357598ba9951f72a3fa18b679d83a3ce088dd8a144d7ee5a772ce02715dd735907ba2219541e971d5b1f3a16eb21d22ab1600753
+DIST bustle-0.4.3.tar.gz 96970 SHA256 255e035a8b494f7edd21e657c246be00da1452faa2341abccebd53e8f333e9d1 SHA512 263c929a38ffa8c0df03deb9736879d1fbc630f1dcd47183cc304495cb6d5d2fbdb01e4b83e25712ad13d57662d41d0eee35495b76ca52484b9b2352dfde1bdb WHIRLPOOL fe434e7468132e3ecca848bdc09db3bd6d3191ca7fb720fabab48e6181983e6a6facc437421ba4eaea3e17815ac0527e3c0bd648ff449f5fb02212c920c40ff4
+DIST bustle-0.4.7.tar.gz 114231 SHA256 08b12207561157e639bc64e0b274e70e4909f50079cd97564c916d66a3f088b9 SHA512 c9b93ffda797a87342f5ba506db3c892bff8084fa0ec5897d676bef5e8367507970ae3e09555cda9b4de0c7b175dc396f2ccfb394d224e64225c0e7ded2164fd WHIRLPOOL 8f6a80b881b9c13498351e2dc4910406dc151db9c320b8fba291c9577b41eede58003b943de13bf637d28226e7301e4dfdc8f2b6a0fa4fda2792962505fd0153
+DIST bustle-0.5.1.tar.gz 118974 SHA256 06601c919d69bea28b116f6447f5557ce46a3e4c4b6b4b75bb65dc2579ff48d6 SHA512 8e77cd82253ba935f4f7b1edae5ba7a99c65cbee2ce6e7d8df48f3182ee5dac92c9b3bc9826a04555de605fa4577c51d9fd027d9e1b92e8a8cf149c466c04e8f WHIRLPOOL f77ca6da883d1b296c049ec67119e3fdf6114a48bd5c2432059b01c80e9e68ef9d0dc9ecd45510e8d4b37620337718bc75e67bc6ac326de9a5302d03d9a2eb22
diff --git a/dev-util/bustle/bustle-0.4.2-r1.ebuild b/dev-util/bustle/bustle-0.4.2-r1.ebuild
new file mode 100644
index 000000000000..26333ee0293c
--- /dev/null
+++ b/dev-util/bustle/bustle-0.4.2-r1.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# ebuild generated by hackport 0.3.9999
+
+CABAL_FEATURES="bin test-suite"
+inherit base haskell-cabal
+
+DESCRIPTION="Draw pretty sequence diagrams of D-Bus traffic"
+HOMEPAGE="http://willthompson.co.uk/bustle/"
+SRC_URI="http://willthompson.co.uk/${PN}/releases/${PV}/${P}.tar.gz http://dev.gentoo.org/~slyfox/bustle-0.4.0-tests.tar.gz"
+
+LICENSE="LGPL-2 GPL-2" # bustle-dbus-monitor.c is GPL-2, rest is LGPL-2
+SLOT="0"
+KEYWORDS="~alpha amd64 ~ia64 ppc ppc64 sparc x86"
+IUSE=""
+
+RDEPEND="dev-libs/glib:2
+ net-libs/libpcap
+ sys-apps/dbus
+ x11-libs/cairo
+ x11-libs/pango
+ gnome-base/libglade:2.0"
+DEPEND="${RDEPEND}
+ test? ( dev-haskell/hunit
+ dev-haskell/quickcheck
+ dev-haskell/test-framework
+ dev-haskell/test-framework-hunit
+ )
+ >=dev-haskell/cabal-1.8
+ dev-haskell/cairo:0
+ >=dev-haskell/dbus-0.10
+ dev-haskell/glib:0
+ >=dev-haskell/gtk-0.12.3:2
+ dev-haskell/mtl
+ dev-haskell/pango:0
+ dev-haskell/parsec
+ dev-haskell/pcap
+ dev-haskell/text
+ >=dev-lang/ghc-6.10.4"
+
+PATCHES=("${FILESDIR}"/${P}-restrict-gtk2hs-deps-to-gtkplus2.patch)
+
+src_compile() {
+ # compile haskell part
+ cabal_src_compile || die "could not build haskell parts"
+
+ # compile C part
+ emake \
+ "CC=$(tc-getCC)" \
+ "CFLAGS=${CFLAGS}" \
+ "CPPFLAGS=${CPPFLAGS}" \
+ "LDFLAGS=${LDFLAGS}"
+}
+
+src_install() {
+ # install haskell part
+ cabal_src_install || die "could not install haskell parts"
+
+ dobin "${S}"/dist/build/bustle-pcap
+
+ dodoc README HACKING NEWS
+}
diff --git a/dev-util/bustle/bustle-0.4.3.ebuild b/dev-util/bustle/bustle-0.4.3.ebuild
new file mode 100644
index 000000000000..094d21cfec41
--- /dev/null
+++ b/dev-util/bustle/bustle-0.4.3.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# ebuild generated by hackport 0.3.6.9999
+
+CABAL_FEATURES="bin test-suite"
+inherit haskell-cabal
+
+DESCRIPTION="Draw pretty sequence diagrams of D-Bus traffic"
+HOMEPAGE="http://hackage.haskell.org/package/bustle"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="LGPL-2 GPL-2" # bustle-dbus-monitor.c is GPL-2, rest is LGPL-2
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+RDEPEND="dev-libs/glib:2
+ net-libs/libpcap
+ sys-apps/dbus
+ x11-libs/cairo
+ x11-libs/pango
+ gnome-base/libglade:2.0"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.8.0.2
+ dev-haskell/cairo
+ >=dev-haskell/dbus-0.10
+ dev-haskell/glib
+ >=dev-haskell/gtk-0.12.4
+ dev-haskell/mtl
+ dev-haskell/pango
+ dev-haskell/parsec
+ dev-haskell/pcap
+ dev-haskell/text
+ >=dev-lang/ghc-6.12.1
+ virtual/pkgconfig
+ test? ( dev-haskell/hunit
+ dev-haskell/quickcheck
+ dev-haskell/test-framework
+ dev-haskell/test-framework-hunit )
+"
+
+src_compile() {
+ # compile haskell part
+ cabal_src_compile || die "could not build haskell parts"
+
+ # compile C part
+ emake \
+ "CC=$(tc-getCC)" \
+ "CFLAGS=${CFLAGS}" \
+ "CPPFLAGS=${CPPFLAGS}" \
+ "LDFLAGS=${LDFLAGS}"
+}
+
+src_install() {
+ # install haskell part
+ cabal_src_install || die "could not install haskell parts"
+
+ dobin "${S}"/dist/build/bustle-pcap
+ doman bustle-pcap.1
+ dodoc README HACKING NEWS
+}
diff --git a/dev-util/bustle/bustle-0.4.7-r1.ebuild b/dev-util/bustle/bustle-0.4.7-r1.ebuild
new file mode 100644
index 000000000000..affd07126556
--- /dev/null
+++ b/dev-util/bustle/bustle-0.4.7-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# ebuild generated by hackport 0.3.6.9999
+
+CABAL_FEATURES="bin test-suite"
+inherit haskell-cabal
+
+DESCRIPTION="Draw pretty sequence diagrams of D-Bus traffic"
+HOMEPAGE="http://hackage.haskell.org/package/bustle"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="LGPL-2 GPL-2 GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-libs/glib:2
+ net-libs/libpcap
+ sys-apps/dbus
+ x11-libs/cairo
+ x11-libs/pango
+ gnome-base/libglade:2.0"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.8.0.2
+ dev-haskell/cairo
+ >=dev-haskell/dbus-0.10
+ dev-haskell/glib
+ >=dev-haskell/gtk-0.13
+ >=dev-haskell/hgettext-0.1.5
+ dev-haskell/mtl
+ >=dev-haskell/pango-0.13
+ dev-haskell/parsec
+ dev-haskell/pcap
+ dev-haskell/setlocale
+ dev-haskell/text
+ >=dev-lang/ghc-6.12.1
+ virtual/pkgconfig
+ test? ( dev-haskell/hunit
+ dev-haskell/quickcheck
+ dev-haskell/test-framework
+ dev-haskell/test-framework-hunit )
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gtk-0.13.patch
+}
+
+src_compile() {
+ # compile haskell part
+ cabal_src_compile || die "could not build haskell parts"
+
+ # compile C part
+ emake \
+ "CC=$(tc-getCC)" \
+ "CFLAGS=${CFLAGS}" \
+ "CPPFLAGS=${CPPFLAGS}" \
+ "LDFLAGS=${LDFLAGS}"
+}
+
+src_install() {
+ # install haskell part
+ cabal_src_install || die "could not install haskell parts"
+
+ dobin "${S}"/dist/build/bustle-pcap
+ doman bustle-pcap.1
+ dodoc README HACKING NEWS
+}
diff --git a/dev-util/bustle/bustle-0.5.1.ebuild b/dev-util/bustle/bustle-0.5.1.ebuild
new file mode 100644
index 000000000000..8be9e2d307da
--- /dev/null
+++ b/dev-util/bustle/bustle-0.5.1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+# ebuild generated by hackport 0.4.5.9999
+
+CABAL_FEATURES="bin test-suite"
+inherit eutils haskell-cabal
+
+DESCRIPTION="Draw sequence diagrams of D-Bus traffic"
+HOMEPAGE="http://hackage.haskell.org/package/bustle"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="LGPL-2 GPL-2 GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="interactivetests +threaded"
+
+RDEPEND="dev-haskell/cairo:=
+ >=dev-haskell/dbus-0.10:=
+ dev-haskell/gio:=
+ dev-haskell/glib:=
+ >=dev-haskell/gtk3-0.13.7:0=
+ >=dev-haskell/hgettext-0.1.5:=
+ dev-haskell/mtl:=
+ dev-haskell/pango:=
+ dev-haskell/parsec:=
+ dev-haskell/pcap:=
+ dev-haskell/setlocale:=
+ dev-haskell/text:=
+ >=dev-lang/ghc-7.4.1:=
+ dev-libs/glib:2
+"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.8
+ virtual/pkgconfig
+ test? ( dev-haskell/hunit
+ dev-haskell/quickcheck
+ dev-haskell/test-framework
+ dev-haskell/test-framework-hunit )
+"
+
+src_configure() {
+ haskell-cabal_src_configure \
+ $(cabal_flag interactivetests interactivetests) \
+ $(cabal_flag threaded threaded)
+}
+
+src_compile() {
+ # compile haskell part
+ cabal_src_compile || die "could not build haskell parts"
+
+ # compile C part
+ emake \
+ "CC=$(tc-getCC)" \
+ "CFLAGS=${CFLAGS}" \
+ "CPPFLAGS=${CPPFLAGS}" \
+ "LDFLAGS=${LDFLAGS}"
+}
+
+src_install() {
+ # install haskell part
+ cabal_src_install || die "could not install haskell parts"
+
+ dobin "${S}"/dist/build/bustle-pcap
+ doman bustle-pcap.1
+ dodoc README.md HACKING.md NEWS.md
+}
diff --git a/dev-util/bustle/files/0001-bustle-dbus-monitor-fix-linking-order-libs-go-after-.patch b/dev-util/bustle/files/0001-bustle-dbus-monitor-fix-linking-order-libs-go-after-.patch
new file mode 100644
index 000000000000..206bcbc28cc4
--- /dev/null
+++ b/dev-util/bustle/files/0001-bustle-dbus-monitor-fix-linking-order-libs-go-after-.patch
@@ -0,0 +1,44 @@
+From b1d7a9b492a8fbe38f60585f6d5a25908e79c973 Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <st@anti-virus.by>
+Date: Mon, 7 Feb 2011 15:58:56 +0200
+Subject: [PATCH] bustle-dbus-monitor: fix linking order (libs go after object/source files)
+
+Fixes the following failure:
+
+ cc -O2 -pipe -Wl,--hash-style=gnu -Wl,-O1 -Wl,--as-needed \
+ -g -O2 `pkg-config --cflags --libs dbus-1` \
+ -Wall -Wunused \
+ -o bustle-dbus-monitor bustle-dbus-monitor.c
+ bustle-0.2.3/temp/ccodU65H.o: In function `main':
+ bustle-0.2.3/work/bustle-0.2.3/bustle-dbus-monitor.c:347: undefined reference to `dbus_error_init'
+ bustle-0.2.3/work/bustle-0.2.3/bustle-dbus-monitor.c:348: undefined reference to `dbus_bus_get'
+ bustle-0.2.3/temp/ccodU65H.o: In function `get_well_known_names':
+ bustle-0.2.3/work/bustle-0.2.3/bustle-dbus-monitor.c:241: undefined reference to `dbus_message_new_method_call'
+ bustle-0.2.3/work/bustle-0.2.3/bustle-dbus-monitor.c:249: undefined reference to `dbus_error_init'
+ bustle-0.2.3/work/bustle-0.2.3/bustle-dbus-monitor.c:250: undefined reference to `dbus_connection_send_with_reply_and_block'
+ bustle-0.2.3/work/bustle-0.2.3/bustle-dbus-monitor.c:252: undefined reference to `dbus_error_is_set'
+
+Signed-off-by: Sergei Trofimovich <st@anti-virus.by>
+---
+ Makefile | 5 +++--
+ 1 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 707790e..3f50370 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,8 +1,9 @@
+ bustle-dbus-monitor: bustle-dbus-monitor.c
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) \
+- -g -O2 `pkg-config --cflags --libs dbus-1` \
++ -g -O2 \
+ -Wall -Wunused \
+- -o bustle-dbus-monitor bustle-dbus-monitor.c
++ -o bustle-dbus-monitor bustle-dbus-monitor.c \
++ `pkg-config --cflags --libs dbus-1`
+
+ clean:
+ rm -f bustle-dbus-monitor
+--
+1.7.3.4
+
diff --git a/dev-util/bustle/files/bustle-0.2.3-ghc-7.4.patch b/dev-util/bustle/files/bustle-0.2.3-ghc-7.4.patch
new file mode 100644
index 000000000000..3c4544e32b7e
--- /dev/null
+++ b/dev-util/bustle/files/bustle-0.2.3-ghc-7.4.patch
@@ -0,0 +1,89 @@
+Starting with ghc-7.4 base and haskell98 are incompatible:
+
+ Ambiguous module name `Prelude':
+ it was found in multiple packages: base haskell98-2.0.0.1
+
+Gentoo-bug: https://bugs.gentoo.org/428226
+Reported-by: Chris Reffett
+diff --git a/Bustle/Noninteractive.hs b/Bustle/Noninteractive.hs
+index 2aa1e05..4a4d9b0 100644
+--- a/Bustle/Noninteractive.hs
++++ b/Bustle/Noninteractive.hs
+@@ -3,7 +3,8 @@ where
+
+ import Prelude hiding (log)
+
+-import System
++import System.Environment (getArgs)
++import System.Exit (exitFailure)
+ import System.IO (hPutStrLn, stderr)
+
+ import Bustle.Parser (readLog)
+diff --git a/Bustle/Stats.hs b/Bustle/Stats.hs
+index da374a5..939cafd 100644
+--- a/Bustle/Stats.hs
++++ b/Bustle/Stats.hs
+@@ -36,7 +36,7 @@ frequencies = reverse
+ where alt Nothing = Just 1
+ alt (Just n) = Just (n + 1)
+
+-mean :: Fractional a => [a] -> a
++mean :: (Eq a, Fractional a) => [a] -> a
+ mean = acc 0 0
+ where acc 0 _ [] = error "mean of empty list"
+ acc n t [] = t / n
+diff --git a/bustle-dot.hs b/bustle-dot.hs
+index aa7c45e..77d6f18 100644
+--- a/bustle-dot.hs
++++ b/bustle-dot.hs
+@@ -3,7 +3,9 @@ import Prelude hiding (log)
+ import Control.Monad
+ import Data.List
+ import Data.Maybe
+-import System
++import System.IO
++import System.Environment
++import System.Exit
+
+ import Bustle.Parser (readLog)
+ import Bustle.Types
+diff --git a/bustle.cabal b/bustle.cabal
+index 7ad7412..0a49ca1 100644
+--- a/bustle.cabal
++++ b/bustle.cabal
+@@ -27,11 +27,11 @@ Executable bustle
+ if flag(PostCabalizedGtk2HS)
+ -- Since gtk2hs 0.11, pango is a separate package, and its module names
+ -- have changed.
+- Build-Depends: haskell98, mtl, base >= 4 && < 5, containers, parsec,
++ Build-Depends: mtl, base >= 4 && < 5, containers, parsec,
+ filepath, process,
+ gtk > 0.11, glade, pango, glib, cairo
+ else
+- Build-Depends: haskell98, mtl, base >= 4 && < 5, containers, parsec,
++ Build-Depends: mtl, base >= 4 && < 5, containers, parsec,
+ filepath, process,
+ gtk > 0.10 && < 0.11, glade, pango, glib, cairo
+
+@@ -39,18 +39,18 @@ Executable bustle-count
+ Main-is: bustle-count.hs
+ Other-modules: Bustle.Parser, Bustle.Stats, Bustle.Types,
+ Bustle.Noninteractive
+- Build-Depends: haskell98, base >= 4 && < 5, containers, parsec
++ Build-Depends: base >= 4 && < 5, containers, parsec
+ Ghc-options: -Wall -fno-warn-unused-imports -fno-warn-unused-do-bind
+
+ Executable bustle-time
+ Main-is: bustle-time.hs
+ Other-modules: Bustle.Parser, Bustle.Stats, Bustle.Types,
+ Bustle.Noninteractive
+- Build-Depends: haskell98, base >= 4 && < 5, containers, parsec
++ Build-Depends: base >= 4 && < 5, containers, parsec
+ Ghc-options: -Wall -fno-warn-unused-imports -fno-warn-unused-do-bind
+
+ Executable bustle-dot
+ Main-is: bustle-dot.hs
+ Other-modules: Bustle.Parser, Bustle.Types
+- Build-Depends: haskell98, base >= 4 && < 5, containers, parsec
++ Build-Depends: base >= 4 && < 5, containers, parsec
+ Ghc-options: -Wall -fno-warn-unused-imports -fno-warn-unused-do-bind
diff --git a/dev-util/bustle/files/bustle-0.2.3-restrict-gtk2hs-deps-to-gtkplus2.patch b/dev-util/bustle/files/bustle-0.2.3-restrict-gtk2hs-deps-to-gtkplus2.patch
new file mode 100644
index 000000000000..18091352ab5a
--- /dev/null
+++ b/dev-util/bustle/files/bustle-0.2.3-restrict-gtk2hs-deps-to-gtkplus2.patch
@@ -0,0 +1,40 @@
+--- bustle-0.2.3-orig/bustle.cabal 2013-04-03 15:15:36.278582601 +1100
++++ bustle-0.2.3/bustle.cabal 2013-04-03 15:21:14.334592030 +1100
+@@ -27,30 +27,30 @@
+ if flag(PostCabalizedGtk2HS)
+ -- Since gtk2hs 0.11, pango is a separate package, and its module names
+ -- have changed.
+- Build-Depends: mtl, base >= 4 && < 5, containers, parsec,
++ Build-Depends: haskell98, mtl, base >= 4 && < 5, containers, parsec,
+ filepath, process,
+- gtk > 0.11, glade, pango, glib, cairo
++ gtk > 0.11 && < 0.13, glade < 0.13, pango < 0.13, glib < 0.13, cairo < 0.13
+ else
+- Build-Depends: mtl, base >= 4 && < 5, containers, parsec,
++ Build-Depends: haskell98, mtl, base >= 4 && < 5, containers, parsec,
+ filepath, process,
+- gtk > 0.10 && < 0.11, glade, pango, glib, cairo
++ gtk > 0.10 && < 0.11, glade < 0.13, pango < 0.13, glib < 0.13, cairo < 0.13
+
+ Executable bustle-count
+ Main-is: bustle-count.hs
+ Other-modules: Bustle.Parser, Bustle.Stats, Bustle.Types,
+ Bustle.Noninteractive
+- Build-Depends: base >= 4 && < 5, containers, parsec
++ Build-Depends: haskell98, base >= 4 && < 5, containers, parsec
+ Ghc-options: -Wall -fno-warn-unused-imports -fno-warn-unused-do-bind
+
+ Executable bustle-time
+ Main-is: bustle-time.hs
+ Other-modules: Bustle.Parser, Bustle.Stats, Bustle.Types,
+ Bustle.Noninteractive
+- Build-Depends: base >= 4 && < 5, containers, parsec
++ Build-Depends: haskell98, base >= 4 && < 5, containers, parsec
+ Ghc-options: -Wall -fno-warn-unused-imports -fno-warn-unused-do-bind
+
+ Executable bustle-dot
+ Main-is: bustle-dot.hs
+ Other-modules: Bustle.Parser, Bustle.Types
+- Build-Depends: base >= 4 && < 5, containers, parsec
++ Build-Depends: haskell98, base >= 4 && < 5, containers, parsec
+ Ghc-options: -Wall -fno-warn-unused-imports -fno-warn-unused-do-bind
diff --git a/dev-util/bustle/files/bustle-0.4.0-ghc-7.4.patch b/dev-util/bustle/files/bustle-0.4.0-ghc-7.4.patch
new file mode 100644
index 000000000000..0262dd8c9ddc
--- /dev/null
+++ b/dev-util/bustle/files/bustle-0.4.0-ghc-7.4.patch
@@ -0,0 +1,46 @@
+diff --git a/Bustle/Noninteractive.hs b/Bustle/Noninteractive.hs
+index 56e5d74..48d9461 100644
+--- a/Bustle/Noninteractive.hs
++++ b/Bustle/Noninteractive.hs
+@@ -25,7 +25,7 @@ where
+
+ import Prelude hiding (log)
+
+-import System
++import System.Exit (exitFailure)
+ import System.IO (hPutStrLn, stderr)
+ import Data.Maybe (fromMaybe, mapMaybe)
+ import Data.List (nub)
+diff --git a/Bustle/Stats.hs b/Bustle/Stats.hs
+index 8a3e206..d822058 100644
+--- a/Bustle/Stats.hs
++++ b/Bustle/Stats.hs
+@@ -68,7 +68,7 @@ frequencies = reverse
+ where alt Nothing = Just 1
+ alt (Just n) = Just (n + 1)
+
+-mean :: Fractional a => [a] -> a
++mean :: (Eq a, Fractional a) => [a] -> a
+ mean = acc 0 0
+ where acc 0 _ [] = error "mean of empty list"
+ acc n t [] = t / n
+diff --git a/bustle.cabal b/bustle.cabal
+index 93b16bd..cd47efa 100644
+--- a/bustle.cabal
++++ b/bustle.cabal
+@@ -94,7 +94,6 @@ Executable bustle
+ , glade
+ , glib
+ , gtk > 0.11
+- , haskell98
+ , mtl
+ , pango
+ , parsec
+@@ -114,7 +113,6 @@ Executable bustle
+ , glade
+ , glib
+ , gtk > 0.10 && < 0.11
+- , haskell98
+ , mtl
+ , pango
+ , parsec
diff --git a/dev-util/bustle/files/bustle-0.4.0-restrict-gtk2hs-deps-to-gtkplus2.patch b/dev-util/bustle/files/bustle-0.4.0-restrict-gtk2hs-deps-to-gtkplus2.patch
new file mode 100644
index 000000000000..fb7a149722b4
--- /dev/null
+++ b/dev-util/bustle/files/bustle-0.4.0-restrict-gtk2hs-deps-to-gtkplus2.patch
@@ -0,0 +1,76 @@
+--- bustle-0.4.0-orig/bustle.cabal 2013-04-03 15:59:57.193656822 +1100
++++ bustle-0.4.0/bustle.cabal 2013-04-03 15:09:21.825572157 +1100
+@@ -86,16 +86,17 @@
+ Build-Depends: base >= 4 && < 5
+ , binary
+ , bytestring
+- , cairo
++ , cairo < 0.13
+ , containers
+ , dbus-core == 0.9.*
+ , directory
+ , filepath
+- , glade
+- , glib
+- , gtk > 0.11
++ , glade < 0.13
++ , glib < 0.13
++ , gtk > 0.11 && < 0.13
++ , haskell98
+ , mtl
+- , pango
++ , pango < 0.13
+ , parsec
+ , pcap
+ , process
+@@ -105,16 +106,17 @@
+ Build-Depends: base >= 4 && < 5
+ , binary
+ , bytestring
+- , cairo
++ , cairo < 0.13
+ , containers
+ , dbus-core == 0.9.*
+ , directory
+ , filepath
+- , glade
+- , glib
++ , glade < 0.13
++ , glib < 0.13
+ , gtk > 0.10 && < 0.11
++ , haskell98
+ , mtl
+- , pango
++ , pango < 0.13
+ , parsec
+ , pcap
+ , process
+@@ -133,8 +135,8 @@
+ C-sources: c-sources/pcap-monitor.c
+ pkgconfig-depends: glib-2.0
+ Build-Depends: base >= 4 && < 5
+- , gtk > 0.11
+- , glib
++ , gtk > 0.11 && < 0.13
++ , glib < 0.13
+
+ Executable dump-messages
+ if flag(InteractiveTests) && flag(PostCabalizedGtk2HS)
+@@ -177,14 +179,14 @@
+ main-is: Test/Renderer.hs
+ other-modules: Bustle.Renderer
+ Build-Depends: base
+- , cairo
++ , cairo < 0.13
+ , containers
+ , dbus-core
+ , directory
+ , filepath
+- , gtk
++ , gtk < 0.13
+ , mtl
+- , pango
++ , pango < 0.13
+ , test-framework
+ , test-framework-hunit
+ , HUnit
diff --git a/dev-util/bustle/files/bustle-0.4.2-restrict-gtk2hs-deps-to-gtkplus2.patch b/dev-util/bustle/files/bustle-0.4.2-restrict-gtk2hs-deps-to-gtkplus2.patch
new file mode 100644
index 000000000000..74ab26ff8fcd
--- /dev/null
+++ b/dev-util/bustle/files/bustle-0.4.2-restrict-gtk2hs-deps-to-gtkplus2.patch
@@ -0,0 +1,61 @@
+--- bustle-0.4.2-orig/bustle.cabal 2012-11-15 02:19:34.000000000 +1100
++++ bustle-0.4.2/bustle.cabal 2013-04-03 15:07:35.381569187 +1100
+@@ -82,15 +82,15 @@
+
+ Build-Depends: base >= 4 && < 5
+ , bytestring
+- , cairo
++ , cairo < 0.13
+ , containers
+ , dbus >= 0.10
+ , directory
+ , filepath
+- , glib
+- , gtk >= 0.12.3
++ , glib < 0.13
++ , gtk >= 0.12.3 && < 0.13
+ , mtl
+- , pango
++ , pango < 0.13
+ , parsec
+ , pcap
+ , process
+@@ -111,15 +111,15 @@
+ pkgconfig-depends: glib-2.0
+ Build-Depends: base >= 4 && < 5
+ , bytestring
+- , cairo
++ , cairo < 0.13
+ , containers
+ , dbus
+ , directory
+ , filepath
+- , gtk > 0.12
+- , glib
++ , gtk > 0.12 && < 0.13
++ , glib < 0.13
+ , mtl
+- , pango
++ , pango < 0.13
+ , parsec
+ , pcap
+ , text
+@@ -163,15 +163,15 @@
+ main-is: Test/Renderer.hs
+ other-modules: Bustle.Renderer
+ Build-Depends: base
+- , cairo
++ , cairo < 0.13
+ , containers
+ , dbus >= 0.10
+ , directory
+ , filepath
+- , gtk
++ , gtk < 0.13
+ , mtl
+ , text
+- , pango
++ , pango < 0.13
+ , test-framework
+ , test-framework-hunit
+ , HUnit
diff --git a/dev-util/bustle/files/bustle-0.4.7-gtk-0.13.patch b/dev-util/bustle/files/bustle-0.4.7-gtk-0.13.patch
new file mode 100644
index 000000000000..f2691521c4bd
--- /dev/null
+++ b/dev-util/bustle/files/bustle-0.4.7-gtk-0.13.patch
@@ -0,0 +1,172 @@
+diff --git a/Bustle/Diagram.hs b/Bustle/Diagram.hs
+index d558beb..ef96d60 100644
+--- a/Bustle/Diagram.hs
++++ b/Bustle/Diagram.hs
+@@ -450,7 +450,7 @@ mkLayout :: (MonadIO m)
+ mkLayout s e a = liftIO $ do
+ ctx <- cairoCreateContext Nothing
+ layout <- layoutEmpty ctx
+- layoutSetMarkup layout (Markup.unMarkup s)
++ layoutSetMarkup layout (Markup.unMarkup s) :: IO String
+ layoutSetFontDescription layout (Just font)
+ layoutSetEllipsize layout e
+ layoutSetAlignment layout a
+diff --git a/Bustle/UI.hs b/Bustle/UI.hs
+index a78797e..9843b29 100644
+--- a/Bustle/UI.hs
++++ b/Bustle/UI.hs
+@@ -30,6 +30,7 @@ import Data.IORef
+ import qualified Data.Set as Set
+ import Data.List (intercalate)
+ import Data.Time
++import qualified Data.Text as T
+ import Data.Monoid (mempty)
+ import Text.Printf
+
+@@ -281,6 +282,7 @@ promptToSave wi = io $ do
+ case mdetails of
+ Just (RecordedLog tempFilePath) -> do
+ let tempFileName = takeFileName tempFilePath
++ title :: String
+ title = printf (__ "Save log '%s' before closing?") tempFileName
+ prompt <- messageDialogNew (Just (wiWindow wi))
+ [DialogModal]
+@@ -459,7 +461,7 @@ wiSetLogDetails :: WindowInfo
+ -> IO ()
+ wiSetLogDetails wi logDetails = do
+ writeIORef (wiLogDetails wi) (Just logDetails)
+- windowSetTitle (wiWindow wi) (printf (__ "%s - Bustle") (logWindowTitle logDetails))
++ windowSetTitle (wiWindow wi) (printf (__ "%s - Bustle") (logWindowTitle logDetails) :: String)
+
+ setPage :: MonadIO io
+ => WindowInfo
+@@ -525,7 +527,7 @@ loadPixbuf :: FilePath -> IO (Maybe Pixbuf)
+ loadPixbuf filename = do
+ iconName <- getDataFileName $ "data/" ++ filename
+ C.catch (fmap Just (pixbufNewFromFile iconName))
+- (\(GError _ _ msg) -> warn msg >> return Nothing)
++ (\(GError _ _ msg) -> warn (T.unpack msg) >> return Nothing)
+
+ openDialogue :: Window -> B ()
+ openDialogue window = embedIO $ \r -> do
+diff --git a/Bustle/UI/Canvas.hs b/Bustle/UI/Canvas.hs
+index 46c1582..5a28761 100644
+--- a/Bustle/UI/Canvas.hs
++++ b/Bustle/UI/Canvas.hs
+@@ -1,3 +1,4 @@
++{-# LANGUAGE OverloadedStrings #-}
+ {-
+ Bustle.UI.Canvas: displays diagrams
+ Copyright © 2008–2012 Collabora Ltd.
+@@ -58,7 +59,7 @@ canvasNew :: Eq a
+ -> (Maybe a -> IO ())
+ -> IO (Canvas a)
+ canvasNew builder showBounds selectionChangedCb = do
+- layout <- builderGetObject builder castToLayout "diagramLayout"
++ layout <- builderGetObject builder castToLayout ("diagramLayout" :: String)
+ idRef <- newIORef Nothing
+ shapesRef <- newIORef []
+ widthRef <- newIORef 0
+diff --git a/Bustle/UI/DetailsView.hs b/Bustle/UI/DetailsView.hs
+index 35e80d6..d1b9d96 100644
+--- a/Bustle/UI/DetailsView.hs
++++ b/Bustle/UI/DetailsView.hs
+@@ -55,7 +55,7 @@ addValue :: Table
+ -> Int
+ -> IO Label
+ addValue table row = do
+- label <- labelNew Nothing
++ label <- labelNew (Nothing :: Maybe String)
+ miscSetAlignment label 0 0
+ labelSetEllipsize label EllipsizeStart
+ labelSetSelectable label True
+@@ -77,7 +77,7 @@ detailsViewNew = do
+ , tableColumnSpacing := 6
+ ]
+
+- title <- labelNew Nothing
++ title <- labelNew (Nothing :: Maybe String)
+ miscSetAlignment title 0 0
+ tableAttach table title 0 2 0 1 [Fill] [Fill] 0 0
+
+diff --git a/Bustle/UI/FilterDialog.hs b/Bustle/UI/FilterDialog.hs
+index 9560507..152931e 100644
+--- a/Bustle/UI/FilterDialog.hs
++++ b/Bustle/UI/FilterDialog.hs
+@@ -99,7 +99,7 @@ runFilterDialog parent names currentlyHidden = do
+ nameStore <- makeStore names currentlyHidden
+ sw <- makeView nameStore
+
+- instructions <- labelNew Nothing
++ instructions <- labelNew (Nothing :: Maybe String)
+ widgetSetSizeRequest instructions 600 (-1)
+ labelSetMarkup instructions
+ (__ "Unticking a service hides its column in the diagram, \
+diff --git a/Bustle/UI/Recorder.hs b/Bustle/UI/Recorder.hs
+index 1e98a68..085eea2 100644
+--- a/Bustle/UI/Recorder.hs
++++ b/Bustle/UI/Recorder.hs
+@@ -27,6 +27,7 @@ import Control.Monad (when, liftM)
+ import Control.Concurrent.MVar
+ import qualified Data.Map as Map
+ import Data.Monoid
++import qualified Data.Text as T
+ import Control.Monad.State (runStateT)
+ import Text.Printf
+
+@@ -77,8 +78,7 @@ processBatch pendingRef n label incoming = do
+ -- message from the user's perspective.
+ i <- takeMVar n
+ let j = i + (length pending)
+- labelSetMarkup label $
+- printf (__ "Logged <b>%u</b> messages…") j
++ labelSetMarkup label $ (printf (__ "Logged <b>%u</b> messages…") j :: String)
+ putMVar n j
+
+ incoming rr'
+@@ -97,8 +97,8 @@ recorderRun filename mwindow incoming finished = C.handle newFailed $ do
+ maybe (return ()) (windowSetTransientFor dialog) mwindow
+ dialog `set` [ windowModal := True ]
+
+- label <- labelNew Nothing
+- labelSetMarkup label $ printf (__ "Logged <b>%u</b> messages…") (0 :: Int)
++ label <- labelNew (Nothing :: Maybe String)
++ labelSetMarkup label $ (printf (__ "Logged <b>%u</b> messages…") (0 :: Int) :: String)
+ loaderStateRef <- newMVar Map.empty
+ pendingRef <- newMVar []
+ let updateLabel µs body = do
+@@ -142,7 +142,7 @@ recorderRun filename mwindow incoming finished = C.handle newFailed $ do
+ widgetShowAll dialog
+ where
+ newFailed (GError _ _ message) = do
+- displayError mwindow message Nothing
++ displayError mwindow (T.unpack message) Nothing
+
+ recorderChooseFile :: FilePath
+ -> Maybe Window
+diff --git a/bustle.cabal b/bustle.cabal
+index 4ac107c..2d1f907 100644
+--- a/bustle.cabal
++++ b/bustle.cabal
+@@ -106,10 +106,10 @@ Executable bustle
+ , directory
+ , filepath
+ , glib
+- , gtk >= 0.12.4
++ , gtk >= 0.13
+ , hgettext >= 0.1.5
+ , mtl
+- , pango
++ , pango >= 0.13
+ , parsec
+ , pcap
+ , process
+@@ -136,7 +136,7 @@ Executable test-monitor
+ , dbus
+ , directory
+ , filepath
+- , gtk > 0.12
++ , gtk >= 0.13
+ , glib
+ , hgettext
+ , mtl
diff --git a/dev-util/bustle/metadata.xml b/dev-util/bustle/metadata.xml
new file mode 100644
index 000000000000..d2e02d93825d
--- /dev/null
+++ b/dev-util/bustle/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>haskell</herd>
+ <longdescription>
+ Draw pretty sequence diagrams of D-Bus traffic
+ </longdescription>
+ <use>
+ <flag name="interactivetests">Build interactive test programs</flag>
+ <flag name="threaded">Build with support for multithreaded execution.</flag>
+ </use>
+</pkgmetadata>