Differences between revisions 88 and 89
Revision 88 as of 2007-04-09 17:18:01
Size: 10056
Editor: HolgerLevsen
Comment:
Revision 89 as of 2007-04-09 17:18:39
Size: 10058
Editor: HolgerLevsen
Comment:
Deletions are marked like this. Additions are marked like this.
Line 64: Line 64:
 * logfile-view (in split window) in expert mode as default, if screen resolution permits  * Logfile-viewer (in split window) in expert mode as default, if screen resolution permits

Introduction

This is an overview of some of the bugs and issues that presumably will be left open or workarounded only in Etch and that i hope will be fixed later in a point release.

This is no way meant to be an exhaustive list of every bug somehow related to the graphical installer, for a complete buglist see packages [http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=cdebconf-gtk-udeb cdebconf-gtk-udeb], [http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=directfb directfb], [http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=libdirectfb-0.9-25-udeb libdirectfb-0.9-25-udeb], [http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=libgtk-directfb-2.0-0 libgtk-directfb-2.0-0], [http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=libgtk-directfb-2.0-0 libgtk-directfb-2.0-0-udeb], [http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=rootskel rootskel], [http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=rootskel-gtk rootskel-gtk]

?TableOfContents([2])

Architecture independent issues

  • Develop real graphical interfaces for components where that adds value. Main example is partitioning.
  • Try to find a way to present information in columns despite using a proportional font. This may require extensions to the debconf protocol. This should also be generally useful for frontends used in the installed system for configuring packages. This idea could be extended to providing basic support for buleted or numbered lists.
  • Input is not handled in UTF-8 mode, some letters cannot be correctly typed. [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=401296 #401296]

  • Support for dead keys was added in DFB post 0.9.25, but GTKDFB does not handle deadkeys anyway, so backporting the DrectFB patch is useless ATM [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=394871 #394871]

  • Touchpad support in linux_input was added to DFB in CVS and then backported to 0.9.25-5 via a patch i wrote; Ville Sryala produced an updated, better, patch which we weren't able to include in our sources because of time constrains.?BRAs we want to give best support possible to laptop users Ville's patch should be fixed and backported in our sources. [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=400579 #400579]?BRThis issue will get automatically fixed when we switch to DFB 1.0, which natively includes the fix.

  • Diagnostic tool dfbinfo is now provided by libdirectfb-udeb, later we should move it to a specific udeb, possibly with the df_input tool [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=390437 #390437]

  • A cdebconf-gtk-entropy plug-in is needed if we want to be able to install on encrypted volumes using random keys with the the GTK frontend too.
  • Plans for Lenny are having cdebconf (C implementation of debconf used in the d-i) [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=328498 replacing] debconf in regular debian systems: this will require cdebconf's building system and the GTK frontend being able to build atop of both gtk/directfb nad gtk/x11, see also [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=402127 #402127]

  • A [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=407035 crash] was detected when drag&drop'ing blocks of text and was workarounded in the GTK frontend. I could not reproduce this bug with gtk/dfb libs in gnome svn head, so i think this is related to our heavily patched gtk/dfb 2.8.20 set of libs.

Per-architecture issues

We're trying to inventory bugs affecting the g-i on a per-architecture base, architectures considered here are i386, PPC, AMD64 .

i386 specific

  • For historical reasons the vga16fb module is still loaded even if a framebuffer device is already provided by vesafb: this forced us to check that DirectFB actually accesses the framebuffer device provided by vesafb , better would be not starting at all two fb devices concurrently (this also wastes little memory). [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=401685 #401685]

  • Some popular video chips, like intel i810, are not supported by the vesafb framebuffer module and hw-specific modules are not available in the installer, so we cannot currently support those chips. We need to either build into the kernel or provide as loadable modules hw specific framebuffer modules, and load them on the base of the found hardware [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=405737 #405737].

AMD64 specific

Proper fix requires adding that library via an udeb, or removing pthread_cancel() calls from DirectFB source code.

PowerPC specific

  • On PPC the framebuffer device has a fixed size that cannot be set at boot like it's done on i386, so the GTK frontend should adapt itself to go "fullscreen". [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=401693 #401693]

  • DirectFB's linux_input input module seems particularly willing to crash on this architecture, and as a result we had to selectively disable such module basing on experiments on on various PPC boxes.?BRThis resulted in the inclusion into rootskel and rootskel-gtk packages of ad hoc startup scripts that take care of picking the correct DirectFB input driver depending on the architecture.?BRMy plans are (if i will ever be able to put my hands on a PPC box) to fix the linux_input module bug upstream in DFB, backport the patch to debian sources (or awaiting to switch to newer DFB version), switch to linux_input input module for al architectures and eventually get us rid of all those messy startup scripts.

Read also this long [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=342053 thread] about the g-i on PPC machines, mainly due to the crashing of linux_input module on most PPC boxes.

A table with test results for a variety of PowerPC systems can be found at ["DebianInstaller/GUIPowerPC"]. Feel free to add results for any configuration that's not yet listed.

Ideas for future development

Porting

The graphical version of the installer is currently available for Intel x86, AMD64 and PowerPC. The PowerPC port [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=341597 needs work] to get different types of system correctly supported. Other architectures the graphical installer could be ported to include Sparc, Alpha and HPPA.

Fonts

For font information, please see ["DebianInstaller/GUIFonts"]

Usability

  • Interface should adapt itself so that text blocks are never too wide for optimal readability.
  • Improve accessability (for the visually handicapped). One way to do this is to [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=339735 support different themes] (color schemes). (Note: should not lead to a major increase in initrd size.)

  • Alternative (graphical) ways to start a shell or browse log files
  • Logfile-viewer (in split window) in expert mode as default, if screen resolution permits
  • Interface design.
  • Create custom plug-ins for cdebconf to improve handling of some dialogs and make optimal use of possibilities offered by the graphical environment.

Interface design

Most of the work on the graphical side has been done by Eduardo Silva. He has set up a [http://www.geocities.com/jobezone/d-i_gtk.html webpage] with images he designed and some comments about possible future changes.

Games

It would be nice for g-i to have some games to help kill time during lengthy install sessions.

Candidates for inclusion need to have a limited set of dependencies, preferable only those that are already included in g-i, use directfb for graphics, eventually using SDL, sound should be optional, and not need more input device than already detected by g-i.

This excludes c++ implemented games linked against libstdc++, or other language whose runtime is not-available in g-i, as well as all those that link with the gnome libs or other such. A preliminary list follows, out of them, icebreaker sounds like a very good candidate. It is only depending on libsdl, easy to understand, using only the mouse and not the keyboard, and not controversial in any way.