[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

GTK+ frontend for the installer



[CC-ing debian-gtk-gnome as many gtk-related people are there
 who could be of help]

Hi all,

I've worked on the gtk frontend a bit some time ago, and now real
life is allowing me to take another pick at it. I have not yet
been able to boot it =/.

Some time ago, I tried to boot with bochs and a real machine, and
all I got were problems with the initrd and crashes.

Now the problem is a bit simpler to look at, I hope, as cdebconf
is trying to launch the gtkfb-based frontend but the kernel is
lacking fb support. I'm trying to boot with qemu, and I found out
that the debian package for qemu is needing some love... I even
built qemu from cvs but to no avail. Here's a screenshot:

http://beterraba.no-ip.org/shots/cdebconf-dfb-problem.png

If anyone wants to give this problem a shot, here's what you
have to do:

1. checkout debian installer from svn
2. attached to this email find a patch containing all the
   modifications I did to the cdebconf 'package' for testing
3. install the libgtk+2.0-directfb-udeb-dev and all other
   build-deps for cdebconf
4. build cdebconf
5. copy the cdebconf-udeb and cdebconf-gtk-udeb udebs to
   debian-installer/build/localudebs/
6. attached find a patch with dirty hacks (which will be
   cleaned up when I get this damn thing working, of course =P)
   which will make the build process include some necessary
   udebs and avoid a library reduction problem
7. go to debian-installer/build and build the image of your
   choice after installing the build-deps (read the README)
   -- I am using netboot and tried netboot_2.6

Is anyone able to get the gtk installer to boot with this?
We need to get this thing to boot to work on the issues
that were detected previously, I think the UI will be a
not-so-difficult step, but we need to go through this here
first.

I have no real machine to boot this on and my current machine
is not that fast for running emulators, so if qemu worked it
would make me very happy, as it is quite fast.

Thanks,

-- 
Gustavo Noronha Silva <kov@debian.org>     | http://beterraba.no-ip.org/~kov
  Debian Developer: http://www.debian.org/ | http://www.debian-br.org/
  Brazilian GNOME Translation Effort: http://gnome-br.sourceforge.net/
Index: debian/rules
===================================================================
--- debian/rules	(revision 17092)
+++ debian/rules	(working copy)
@@ -27,7 +27,7 @@
 
 text_udebname=cdebconf-text-udeb_$(VERSION)_$(DEB_HOST_ARCH).udeb
 text_udebpriority=$(shell grep '^Package: cdebconf-text-udeb' debian/control -A 10 | grep ^Priority: | cut -d ' ' -f 2)
-	
+
 newt_udebname=cdebconf-newt-udeb_$(VERSION)_$(DEB_HOST_ARCH).udeb
 newt_udebpriority=$(shell grep '^Package: cdebconf-newt-udeb' debian/control -A 10 | grep ^Priority: | cut -d ' ' -f 2)
 
@@ -39,8 +39,8 @@
 LIBDEBCONFDEV=libdebconfclient0-dev
 LIBDEBCONF=libdebconfclient0
 
-FRONTENDS=text newt
-UDEB_FRONTENDS=text newt
+FRONTENDS=text newt gtk
+UDEB_FRONTENDS=text newt gtk
 
 SIZEOPTFLAG=-Os
 SPEEDOPTFLAG=-O2
@@ -70,7 +70,7 @@
 		--enable-d-i \
 		--without-rpath --with-db="rfc822db" \
 		--with-frontend="$(UDEB_FRONTENDS)" $(DEBUG_CONFIGURE_OPT) \
-		--with-default-frontend=newt \
+		--with-default-frontend=gtk \
 		--with-syslog-logging \
 		--with-textwrap \
 		--with-conffile=$(CONFFILE))
@@ -101,6 +101,7 @@
 	rm -rf $(shell pwd)/debian/cdebconf-udeb/usr/include
 	rm -rf $(shell pwd)/debian/cdebconf-udeb/usr/share/man
 	rm -rf $(shell pwd)/debian/cdebconf-udeb/usr/lib/cdebconf/frontend/newt.so
+	rm -rf $(shell pwd)/debian/cdebconf-udeb/usr/lib/cdebconf/frontend/gtk.so
 	rm -rf $(shell pwd)/debian/cdebconf-udeb/usr/lib/cdebconf/frontend/text.so
 	rm -rf $(shell pwd)/debian/cdebconf-udeb/usr/lib/lib*.a
 	rm -rf $(shell pwd)/debian/cdebconf-udeb/usr/lib/libdebconfclient.so
@@ -169,7 +170,7 @@
 #
 # Note that this builds a .udeb, which is not policy compliant or anything.
 binary-arch: cdebconf cdebconf-udeb cdebconf-priority libdebconfclient0-udeb \
-	cdebconf-newt-udeb cdebconf-text-udeb
+	cdebconf-newt-udeb cdebconf-text-udeb cdebconf-gtk-udeb
 
 $(LIBDEBCONF): install
 	dh_testdir
Index: src/cdebconf.conf
===================================================================
--- src/cdebconf.conf	(revision 17092)
+++ src/cdebconf.conf	(working copy)
@@ -17,7 +17,7 @@
 
 frontend {
   instance "default_fe" {
-    driver "text";
+    driver "gtk";
   };
 };
 
Index: src/modules/frontend/gtk/Makefile
===================================================================
--- src/modules/frontend/gtk/Makefile	(revision 17092)
+++ src/modules/frontend/gtk/Makefile	(working copy)
@@ -1,8 +1,8 @@
 MODULE=gtk
 SOBJ=gtk.so
 OBJS=gtk.opic
-MODCFLAGS=`pkg-config --cflags gtk+-2.0`
+MODCFLAGS=`env PKG_CONFIG_PATH=/usr/lib/udeblib/pkgconfig pkg-config --cflags gtk+-2.0`
 
-MODLDFLAGS=`pkg-config --libs gtk+-2.0`
+MODLDFLAGS=`env PKG_CONFIG_PATH=/usr/lib/udeblib/pkgconfig pkg-config --libs gtk+-2.0`
 
 include ../modules.mak
Index: Makefile
===================================================================
--- Makefile	(revision 17092)
+++ Makefile	(working copy)
@@ -424,7 +424,7 @@
 	mkdir -p $(TEMP)/udeblibs
 	-cp -a `find $(TREE)/lib -type f -name '*.so.*'` $(TEMP)/udeblibs
 	mkdir -p $(TREE)/lib
-	$(MKLIBS) -L $(TREE)/usr/lib -L $(TEMP)/udeblibs -v -d $(TREE)/lib --root=$(TREE) `find $(TEMP) -type f -perm +0111 -o -name '*.so' | grep -v udeblibs`
+	$(MKLIBS) -L $(TREE)/usr/lib -L $(TEMP)/udeblibs -v -d $(TREE)/lib --root=$(TREE) `find $(TEMP) -type f -perm +0111 -o -name '*.so' | grep -v udeblibs` $(TREE)/usr/lib/libdirectfb-0.9-udeb.so.20
 	rm -rf $(TEMP)/udeblibs
 
 	# Add missing symlinks for libraries
Index: pkg-lists/netboot/common
===================================================================
--- pkg-lists/netboot/common	(revision 17092)
+++ pkg-lists/netboot/common	(working copy)
@@ -10,6 +10,9 @@
 net-retriever
 load-installer
 cdebconf-newt-udeb
+fb-modules-2.4.26-1-386-di
+libdirectfb-0.9-20-udeb
+cdebconf-gtk-udeb
 rootskel-locale
 di-utils-terminfo
 

Reply to: