--- Begin Message ---
Package: matchbox-window-manager
Version: 1.2-4
Severity: wishlist
Tags: d-i patch
I'm currently working on Debian Installer for the FreeRunner, and, as it
doesn't have a physical keyboard, the graphical installer would be useless
without an on-screen keyboard.
I chose to use matchbox-keyboard to provide an on-screen keyboard, as it has
few dependencies and provides a GTK input method module (so the screen can pop
only when needed).
However, in order to run properly, matchbox-keyboard needs a WM supporting a
precise featureset.
Obviously, matchbox-window-manager fulfills this requirement. Furthermore, it
is quite lightweight and can be built with very few dependencies.
The first patch changes the build system to debhelper, since I wasn't able to
build two binaries out of the same source package using CDBS. By the way, it
also switches to source format "3.0 (quilt)".
The second patch adds what is needed to build the udeb, providing a second
binary built with different options.
The third patch adds a script to start matchbox-window-manager with g-i,
although the way it is done might be discussed.
-- System Information:
Debian Release: squeeze/sid
APT prefers testing
APT policy: (990, 'testing'), (120, 'unstable'), (105, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.35-rc3+ (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages matchbox-window-manager depends on:
ii libc6 2.11.2-2 Embedded GNU C Library: Shared lib
ii libexpat1 2.0.1-7 XML parsing C library - runtime li
ii libmatchbox1 1.9-5 shared library for Matchbox Projec
ii libstartup-notification0 0.10-1 library for program launch feedbac
ii libx11-6 2:1.3.3-3 X11 client-side library
ii libxext6 2:1.1.2-1 X11 miscellaneous extension librar
ii libxsettings-client0 0.17-5 utility functions for the Xsetting
matchbox-window-manager recommends no packages.
matchbox-window-manager suggests no packages.
-- no debconf information
# HG changeset patch
# User Thibaut Girka <[email protected]>
# Date 1281225985 14400
# Node ID 00b42e28514ee1f87c511e39f0ddd2427bf1a8f1
# Parent 744c92c13f1270f87e43e7eb38ddf3aa20858219
Switch to source format 3.0 (quilt) and debhelper.
You may want to document the patches in debian/patches according to DEP3
diff --git a/matchbox-window-manager-1.2/debian/control
b/matchbox-window-manager-1.2/debian/control
--- a/matchbox-window-manager-1.2/debian/control
+++ b/matchbox-window-manager-1.2/debian/control
@@ -2,7 +2,7 @@
Section: embedded
Priority: optional
Maintainer: Moray Allan <[email protected]>
-Build-Depends: cdbs (>= 0.4.21), debhelper (>= 5.0.0), pkg-config,
libstartup-notification0-dev, libmatchbox-dev (>= 1.9-4), libxsettings-dev,
libxsettings-client-dev
+Build-Depends: debhelper (>= 7.0.50~), pkg-config,
libstartup-notification0-dev, libmatchbox-dev (>= 1.9-4), libxsettings-dev,
libxsettings-client-dev
Standards-Version: 3.8.2
Homepage: http://matchbox-project.org/
diff --git a/matchbox-window-manager-1.2/debian/docs
b/matchbox-window-manager-1.2/debian/docs
new file mode 100644
--- /dev/null
+++ b/matchbox-window-manager-1.2/debian/docs
@@ -0,0 +1,3 @@
+README
+NEWS
+AUTHORS
diff --git a/matchbox-window-manager-1.2/debian/patches/config.patch
b/matchbox-window-manager-1.2/debian/patches/config.patch
new file mode 100644
--- /dev/null
+++ b/matchbox-window-manager-1.2/debian/patches/config.patch
@@ -0,0 +1,22 @@
+--- matchbox-window-manager-1.2.orig/configure
++++ matchbox-window-manager-1.2/configure
+@@ -7518,7 +7518,7 @@
+ { echo "$as_me:$LINENO: checking for libmb xsettings support" >&5
+ echo $ECHO_N "checking for libmb xsettings support... $ECHO_C" >&6; }
+
+- if $PKG_CONFIG --libs libmb | grep -i xsettings ; then
++ if $PKG_CONFIG --static --libs libmb | grep -i xsettings ; then
+ mb_have_xsettings="yes"
+
+ cat >>confdefs.h <<\_ACEOF
+--- matchbox-window-manager-1.2.orig/configure.ac
++++ matchbox-window-manager-1.2/configure.ac
+@@ -413,7 +413,7 @@
+ if test x$enable_standalone != xyes && test x$enable_standalone_xft != xyes;
then
+ AC_MSG_CHECKING([for libmb xsettings support])
+
+- if $PKG_CONFIG --libs libmb | grep -i xsettings ; then
++ if $PKG_CONFIG --static --libs libmb | grep -i xsettings ; then
+ mb_have_xsettings="yes"
+ AC_DEFINE(USE_XSETTINGS, [1], [Use XSettings])
+ AC_MSG_RESULT([yes])
diff --git a/matchbox-window-manager-1.2/debian/patches/mbtheme.patch
b/matchbox-window-manager-1.2/debian/patches/mbtheme.patch
new file mode 100644
--- /dev/null
+++ b/matchbox-window-manager-1.2/debian/patches/mbtheme.patch
@@ -0,0 +1,23 @@
+--- matchbox-window-manager-1.2.orig/src/mbtheme.c
++++ matchbox-window-manager-1.2/src/mbtheme.c
+@@ -19,6 +19,7 @@
+ */
+
+ #include "mbtheme.h"
++#include <assert.h>
+
+ #ifdef HAVE_XCURSOR
+ #include <X11/Xcursor/Xcursor.h>
+@@ -2024,6 +2025,11 @@
+ if ((font = mb_font_new_from_string(theme->wm->dpy, spec)) == NULL)
+ return ERROR_INCORRECT_PARAMS;
+
++ dbg("%s() font spec: %s\n", __func__, spec);
++
++ assert(font != NULL);
++ assert(font->family != NULL);
++
+ dbg("%s() got font family: %s size: %i\n",
+ __func__, mb_font_get_family(font), mb_font_get_point_size(font));
+
+
diff --git a/matchbox-window-manager-1.2/debian/patches/series
b/matchbox-window-manager-1.2/debian/patches/series
new file mode 100644
--- /dev/null
+++ b/matchbox-window-manager-1.2/debian/patches/series
@@ -0,0 +1,2 @@
+config.patch
+mbtheme.patch
diff --git a/matchbox-window-manager-1.2/debian/rules
b/matchbox-window-manager-1.2/debian/rules
--- a/matchbox-window-manager-1.2/debian/rules
+++ b/matchbox-window-manager-1.2/debian/rules
@@ -1,6 +1,10 @@
#!/usr/bin/make -f
-include /usr/share/cdbs/1/rules/debhelper.mk
-include /usr/share/cdbs/1/class/autotools.mk
-DEB_CONFIGURE_EXTRA_FLAGS = --enable-startup-notification --enable-expat
-# --enable-gconf
+%:
+ dh $@
+
+override_dh_auto_configure:
+ dh_auto_configure -- --enable-startup-notification --enable-expat
+
+override_dh_installchangelogs:
+ dh_installchangelogs ChangeLog
diff --git a/matchbox-window-manager-1.2/debian/source/format
b/matchbox-window-manager-1.2/debian/source/format
new file mode 100644
--- /dev/null
+++ b/matchbox-window-manager-1.2/debian/source/format
@@ -0,0 +1,1 @@
+3.0 (quilt)
# HG changeset patch
# User Thibaut Girka <[email protected]>
# Date 1281230477 14400
# Node ID 48518413fd47fedd712d7dd59ca2fd60d27eb846
# Parent 00b42e28514ee1f87c511e39f0ddd2427bf1a8f1
Added matchbox-window-manager-udeb configured with less features
diff --git a/matchbox-window-manager-1.2/debian/control
b/matchbox-window-manager-1.2/debian/control
--- a/matchbox-window-manager-1.2/debian/control
+++ b/matchbox-window-manager-1.2/debian/control
@@ -17,3 +17,11 @@
for which screen space, input mechanisms or system resources are limited.
.
This package contains the Matchbox window manager.
+
+Package: matchbox-window-manager-udeb
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Section: debian-installer
+XC-Package-Type: udeb
+Description: window manager for resource-limited systems
+ This is a udeb, or a microdeb, for the debian-installer.
diff --git
a/matchbox-window-manager-1.2/debian/matchbox-window-manager-udeb.install
b/matchbox-window-manager-1.2/debian/matchbox-window-manager-udeb.install
new file mode 100644
--- /dev/null
+++ b/matchbox-window-manager-1.2/debian/matchbox-window-manager-udeb.install
@@ -0,0 +1,1 @@
+build-udeb/src/matchbox-window-manager
diff --git a/matchbox-window-manager-1.2/debian/rules
b/matchbox-window-manager-1.2/debian/rules
--- a/matchbox-window-manager-1.2/debian/rules
+++ b/matchbox-window-manager-1.2/debian/rules
@@ -3,8 +3,22 @@
%:
dh $@
+override_dh_auto_clean:
+ rm -rf build-main build-udeb
+
override_dh_auto_configure:
- dh_auto_configure -- --enable-startup-notification --enable-expat
+ mkdir build-main build-udeb
+ dh_auto_configure -Bbuild-main -- --enable-startup-notification
--enable-expat
+ dh_auto_configure -Bbuild-udeb -- --disable-startup-notification
--disable-expat \
+ --disable-keyboard --disable-xrm --disable-ping-protocol
--enable-standalone
+
+override_dh_auto_build:
+ dh_auto_build -Bbuild-main
+ dh_auto_build -Bbuild-udeb
+
+override_dh_auto_install:
+ dh_auto_install -Bbuild-main --destdir=debian/matchbox-window-manager
+ #dh_auto_install -Bbuild-udeb
--destdir=debian/matchbox-window-manager-udeb
override_dh_installchangelogs:
dh_installchangelogs ChangeLog
# HG changeset patch
# User Thibaut Girka <[email protected]>
# Date 1281458776 -7200
# Node ID f080f4378d600935f9c8d36cdf0f030c5ac704f1
# Parent 48518413fd47fedd712d7dd59ca2fd60d27eb846
matchbox-window-manager-udeb: start matchbox-window-manager with
debian-installer
diff --git a/matchbox-window-manager-1.2/debian/S64matchbox-window-manager
b/matchbox-window-manager-1.2/debian/S64matchbox-window-manager
new file mode 100644
--- /dev/null
+++ b/matchbox-window-manager-1.2/debian/S64matchbox-window-manager
@@ -0,0 +1,4 @@
+if [ "$DEBIAN_FRONTEND" = gtk ] && [ -z "$LIVE_INSTALLER_MODE" ]; then
+ matchbox-window-manager -use_titlebar no -use_desktop_mode plain &
+fi
+
diff --git
a/matchbox-window-manager-1.2/debian/matchbox-window-manager-udeb.install
b/matchbox-window-manager-1.2/debian/matchbox-window-manager-udeb.install
--- a/matchbox-window-manager-1.2/debian/matchbox-window-manager-udeb.install
+++ b/matchbox-window-manager-1.2/debian/matchbox-window-manager-udeb.install
@@ -1,1 +1,2 @@
-build-udeb/src/matchbox-window-manager
+build-udeb/src/matchbox-window-manager /usr/bin/
+debian/S64matchbox-window-manager /lib/debian-installer.d/
--- End Message ---