Hi,

I saw your gtk2hs package in m.d.n and indeed it's very well done, but
I think you forgot to include the Cairo bindings, so I tried to fix that.

I think a very good improvement would be trying to build the package
with xulrunner, but maybe you're going to need upstream support for
this, and xulrunner hasn't gone yet through the new queue. For more
info see:

http://web.glandium.org/blog/?p=69
http://web.glandium.org/blog/?p=70

Attached is the interdiff between my changes and yours. Please kill
the changelog and firefox-dev usage.

diffstat gtk2hs-interdiff.patch 
 debian/libghc6-cairo-dev.install  |    4 +++
 debian/libghc6-cairo-dev.postinst |   41 ++++++++++++++++++++++++++++++++++++++
 debian/libghc6-cairo-dev.prerm    |   38 +++++++++++++++++++++++++++++++++++
 gtk2hs-0.9.10/debian/changelog    |   13 ++++++++++++
 gtk2hs-0.9.10/debian/control      |   26 ++++++++++++++++++++++--
 gtk2hs-0.9.10/debian/rules        |    2 -
 6 files changed, 121 insertions(+), 3 deletions(-)

Regards,

Emilio

--- gtk2hs-0.9.10/debian/control
+++ gtk2hs-0.9.10/debian/control
@@ -2,7 +2,7 @@
 Priority: optional
 Maintainer: Marco Tulio Gontijo e Silva <[EMAIL PROTECTED]>
 Uploaders: John Goerzen <[EMAIL PROTECTED]>
-Build-Depends: debhelper (>= 4.1.0), autotools-dev, cdbs, ghc6, libglib2.0-dev, libgtk2.0-dev, libglade2-dev, libgconf2-dev, libgtksourceview-dev, mozilla-dev, haddock
+Build-Depends: debhelper (>= 4.1.0), autotools-dev, cdbs, ghc6, libglib2.0-dev, libgtk2.0-dev, libglade2-dev, libgconf2-dev, libgtksourceview-dev, firefox-dev, haddock
 Standards-Version: 3.6.2
 Section: libdevel
 
@@ -50,6 +50,28 @@
  .
  Homepage: http://www.gtk2hs.org/
 
+Package: libghc6-cairo-dev
+Section: libdevel
+Architecture: any
+Depends: ghc6, libglib2.0-dev, libcairo2-dev, ${shlibs:Depends}, ${misc:Depends}
+Suggests: gtk2hs-doc (= ${Source-Version}), libghc6-glib-dev (= ${Source-Version}), libghc6-gtk-dev (= ${Source-Version}), libghc6-mogul-dev (= ${Source-Version}), libghc6-glade-dev (= ${Source-Version}), libghc6-sourceview-dev (= ${Source-Version}), libghc6-mozembed-dev (= ${Source-Version})
+Description: A GUI library for Haskell based on GTK (gtk2hs) -- Cairo bindings.
+ It features:
+  * Automatic memory management.
+  * Nearly complete coverage of the underlying Gtk+ library.
+  * Unicode support.
+  * Documentation.
+  * Support for Linux, Unix, MacOS X and Windows platforms.
+  * Bindings for several Gnome modules:
+    - libglade for loading GUIs from xml files at run-time. This allows you to
+      design your user interface visually using the Glade user interface
+      builder.
+    - GConf, Gnome's system for storing application preferences.
+    - SourceView, a source code editor widget with syntax highlighting.
+  * Bindings for the Mozilla browser rendering engine.
+ .
+ Homepage: http://www.gtk2hs.org/
+
 Package: libghc6-gconf-dev
 Section: libdevel
 Architecture: any
@@ -141,7 +163,7 @@
 Package: libghc6-mozembed-dev
 Section: libdevel
 Architecture: any
-Depends: ghc6, libglib2.0-dev, libgtk2.0-dev, mozilla-dev, libghc6-glib-dev (= ${Source-Version}), libghc6-gtk-dev (= ${Source-Version}), ${shlibs:Depends}, ${misc:Depends}
+Depends: ghc6, libglib2.0-dev, libgtk2.0-dev, firefox-dev, libghc6-glib-dev (= ${Source-Version}), libghc6-gtk-dev (= ${Source-Version}), ${shlibs:Depends}, ${misc:Depends}
 Suggests: gtk2hs-doc (= ${Source-Version}), libghc6-gconf-dev (= ${Source-Version}), libghc6-mogul-dev (= ${Source-Version}), libghc6-glade-dev (= ${Source-Version}), libghc6-sourceview-dev (= ${Source-Version})
 Description: A GUI library for Haskell based on GTK (gtk2hs) -- Mozilla bindings
  It features:
--- gtk2hs-0.9.10/debian/rules
+++ gtk2hs-0.9.10/debian/rules
@@ -9 +9 @@
---enable-gconf --enable-sourceview --enable-mozilla --enable-docs
+--enable-gconf --enable-sourceview --enable-firefox --enable-docs --enable-cairo
--- gtk2hs-0.9.10/debian/changelog
+++ gtk2hs-0.9.10/debian/changelog
@@ -1,3 +1,16 @@
+gtk2hs (0.9.10-1.2) unstable; urgency=low
+
+  * Enable support for cairo bindings: new package libghc6-cairo-dev.
+
+ -- Emilio Jesús Gallego Arias <[EMAIL PROTECTED]>  Thu,  9 Feb 2006 08:53:12 +0100
+
+gtk2hs (0.9.10-1.1) unstable; urgency=low
+
+  * Change mozilla-dev to firefox-dev in debian/control.
+  * Change --enable-mozilla to --enable-firefox in debian/rules.
+
+ -- Emilio Jesús Gallego Arias <[EMAIL PROTECTED]>  Thu,  9 Feb 2006 07:06:02 +0100
+
 gtk2hs (0.9.10-1) unstable; urgency=low
 
   * New upstream version.
--- gtk2hs-0.9.10.orig/debian/libghc6-cairo-dev.install
+++ gtk2hs-0.9.10/debian/libghc6-cairo-dev.install
@@ -0,0 +1,3 @@
+debian/tmp/usr/lib/gtk2hs/cairo.package.conf usr/lib/libghc6-cairo-dev/
+debian/tmp/usr/lib/gtk2hs/libHScairo.a usr/lib/libghc6-cairo-dev/
+debian/tmp/usr/lib/gtk2hs/imports/cairo/* usr/lib/libghc6-cairo-dev/imports/
--- gtk2hs-0.9.10.orig/debian/libghc6-cairo-dev.postinst
+++ gtk2hs-0.9.10/debian/libghc6-cairo-dev.postinst
@@ -0,0 +1,41 @@
+#! /bin/sh
+# postinst script for libghc6-glib-dev
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postinst> `configure' <most-recently-configured-version>
+#        * <old-postinst> `abort-upgrade' <new version>
+#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
+#          <new-version>
+#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
+#          <failed-install-package> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+#
+
+case "$1" in
+    configure|abort-upgrade|abort-remove|abort-deconfigure)
+        # This rm is required for --auto-ghci-libs
+        # cairo
+        rm -f /usr/lib/libghc6-cairo-dev/HScairo.o
+        ghc-pkg --auto-ghci-libs register \
+            /usr/lib/libghc6-cairo-dev/cairo.package.conf
+    ;;
+    *)
+        echo "postinst called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+
--- gtk2hs-0.9.10.orig/debian/libghc6-cairo-dev.prerm
+++ gtk2hs-0.9.10/debian/libghc6-cairo-dev.prerm
@@ -0,0 +1,38 @@
+#! /bin/sh
+# prerm script for libghc6-cairo-dev
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <prerm> `remove'
+#        * <old-prerm> `upgrade' <new-version>
+#        * <new-prerm> `failed-upgrade' <old-version>
+#        * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
+#        * <deconfigured's-prerm> `deconfigure' `in-favour'
+#          <package-being-installed> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+    remove|upgrade|deconfigure|failed-upgrade)
+        ghc-pkg unregister cairo
+        rm -f /usr/lib/libghc6-cairo-dev/HScairo.o
+    ;;
+    *)
+        echo "prerm called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+

Reply via email to