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.
For partitioning one option is porting gparted to C. Work on this was already started by [http://lists.debian.org/debian-boot/2006/06/msg01358.html Xavier Oswald]. Current code is available [http://svn.debian.org/wsvn/parted/gdisktool/trunk/?rev=0&sc=0 on alioth].
- 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
The console switching problem on AMD64 [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=373253 #373253] was worked around by adding libgcc1.so.1 via the EXTRAFILES option available in the installer.
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-view (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.
[http://packages.debian.org/unstable/games/airstrike airstrike] - 2d dogfight game in the tradition of 'Biplanes' and 'BIP'
[http://packages.debian.org/unstable/games/atris atris] - tetris-like game with a twist for Unix
[http://packages.debian.org/unstable/games/barrage barrage] - Rather violent action game
[http://packages.debian.org/unstable/games/black-box black-box] - Find the crystals
[http://packages.debian.org/unstable/games/bomberclone bomberclone] - free Bomberman-like game
[http://packages.debian.org/unstable/games/bugsquish bugsquish] - Bugs are trying to suck blood out of your arm!
[http://packages.debian.org/unstable/games/bumprace bumprace] - 1 or 2 players race through a multi-level maze
[http://packages.debian.org/unstable/games/bygfoot bygfoot] - soccer (football) manager game featuring the most important European leagues
[http://packages.debian.org/unstable/games/circuslinux circuslinux] - The clowns are trying to pop balloons to score points!
[http://packages.debian.org/unstable/games/dangen dangen] - shoot 'em up game where accurate shooting matters
[http://packages.debian.org/unstable/games/icebreaker icebreaker] - Break the iceberg
[http://packages.debian.org/unstable/games/sdljump sdljump] - Jump up in a sinking tower (a first [http://lists.alioth.debian.org/pipermail/pkg-games-devel/2006-February/000349.html unofficial (and untested) udeb] was already made by Bas Wijnen <shevek at fmf.nl> )