Differences between revisions 63 and 102 (spanning 39 versions)
Revision 63 as of 2006-10-04 09:58:12
Size: 7881
Editor: ?fiandro
Comment:
Revision 102 as of 2009-09-14 14:23:54
Size: 8076
Editor: GeoffSimmons
Comment: DebianBug, DebianPkg. sdljump is now gnujump.
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Introduction = == Introduction ==
This is an overview of some of the bugs and issues left open or workarounded only in Etch and that i hope will be fixed later in a point release.
Line 3: Line 4:
Overview of open issues and things to be done for the ["DebianInstaller/GUI"]. Items tagged as '''''pointrelease''''' are desiderata for next Etch pointrelease (mainly bugfixes), all other items refer to issues which will be addressed in Lenny only.
Line 5: Line 6:
A complete list of bugs affecting the g-i can be found in the [http://bugs.debian.org/cdebconf-gtk-udeb bug reports against cdebconf-gtk-udeb] page. 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 DebianBug:cdebconf-gtk-udeb, DebianBug:directfb, [[DebianBug:libdirectfb-1.0-0-udeb]], [[DebianBug:libgtk-directfb-2.0-0]], [[DebianBug:libgtk-directfb-2.0-0-udeb]], DebianBug:rootskel, DebianBug:rootskel-gtk.
Line 7: Line 8:
[[TableOfContents([2])]] <<TableOfContents(3)>>
Line 9: Line 10:
= Per-architecture issues = == 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. '''done'''
 * Input is not handled in UTF-8 mode, some letters cannot be correctly typed. DebianBug:401296 - '''done'''
 * 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 DebianBug:394871 - '''done'''
 * Plans for Lenny are having cdebconf (C implementation of debconf used in the d-i) replacing debconf (DebianBug:328498) 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 DebianBug:402127 - '''done'''
Line 11: Line 18:
We're trying to schematize bugs affecting the g-i on a per-architecture base, architectures considered here are i386, PPC, AMD64 . == Per-architecture issues ==
We're trying to inventory bugs affecting the g-i on a per-architecture base, architectures considered here are i386, PowerPC, AMD64 .
Line 13: Line 21:
== i386 specific ==
 * No known bugs affecting i386 is known ATM :)
=== 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). DebianBug:401685 - '''done'''
 * 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 DebianBug:405737.
Line 16: Line 25:
== AMD64 specific ==
 * solve the console switching problem on AMD64 [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=373253 #373253]
=== AMD64 specific ===
 * '''pointrelease''' The console switching problem on AMD64 DebianBug: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.
Line 19: Line 28:
== PPC specific == === PowerPC specific ===
Line 21: Line 30:
 * Builds with the tentative fix from Attilio are available at [http://people.debian.org/~luther/g-i], please test them.  * DirectFB linux_input input module cannot correctly detect the keyboard on most PowerMacintosh models, so we had to disable it relying on the legacy ps2mouse and keyboard input dr.<<BR>>This required the inclusion into rootskel and rootskel-gtk packages of some ad hoc startup scripts that take care of picking the correct DirectFB input driver depending on the host architecture.<<BR>>A prper addressing of this issue requires fixing the linux_input module so that we can switch to linux_input input module for all supported architectures and drop some startup scripts.<<BR>><<BR>>
 * Another issue is related to the fact that apparently DirectFB cannot run on top of the nvidia framebuffer: no more information are available because not much light was made on this problem yet.<<BR>><<BR>> This thread (DebianBug:422146) is about the two above mentioned issues, while a g-i on PowerPC compatibility list can be found here [[DebianInstaller/GUIPowerPC]]: feel free to add entries for any configuration that's not yet listed.<<BR>><<BR>>
 * 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". DebianBug:401693
Line 23: Line 34:
PPC has been for a long time the toughest architecture of the three to support because DirectFrameBuffer seems particulary willing to mess up with input devices on PPCs.
Right now HW acceleration provided by DFB seems to be broken for almost every suported video chipset on PPCs, so it was forced off by default.
Read also this long [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=342053 thread] about the g-i on PPC machines.
== Ideas for future development ==
Line 27: Line 36:
||Tester||Test date||Model||cat /proc/cpuinfo | grep mainboard||cat /proc/fb||lspci | grep VGA||Magic directfbrc||Bad directfbrc lines||Notes||
||<bgcolor="green">Sven Luther luther@debian.org||22/09/2006||Pegasos||CHRP Pegasos ||0 ATI Radeon Yd||ATI Technologies Inc RV280 [Radeon 9200 SE] (rev 01)||no-hardware|| ||
||<bgcolor="green">Sven Luther luther@debian.org||22/09/2006||Pegasos||CHRP Pegasos ||0 ATI Radeon NH|| ATI Technologies Inc Radeon R350 [Radeon 9800 Pro]||no-hardware disable-module=radeon|| || ||
||<bgcolor="green">alessandro de zorzi lota@klez.it||27/09/2006||ibook G4||PowerBook6,7 MacRISC3 Power Macintosh||0 ATI Radeon NV||ATI Technologies Inc M11 NV [FireGL Mobility T2e] (rev 80)||no-hardware||disable-module=linux_input|| ||
||<bgcolor="green">Jack Malmostoso jackmalmostoso@freesurf.ch||26/09/2006||ibook G4||PowerBook6,3 MacRISC3 Power Macintosh||0 ATI Radeon /c||ATI Technologies INC M9+ 5C63 [Radeon Mobility 9200 (AGP)] (rev 01) ||no-hardware disable-module=linux_input|| || ||
||<bgcolor="red">Elena Grassi grassi.e@gmail.com||26/09/2006||ibook G3||PowerBook4,3 MacRISC2 MacRISC Power Macintosh||0 ATI Radeon LW||ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500] ||no way to make this work|| ||It needs video=radeonfb to be specified at boot time, otherwise even the textual console is corrupted||
||<bgcolor="green">Luca Suriano luka@linux.it||01/10/2006||ibook G3||PowerBook4,3 MacRISC2 MacRISC Power Macintosh||0 ATI Radeon LW||ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500]||no-hardware disable-module=linux_input || || ||
||<bgcolor="green">Marco Bertorello marco@nosgoth.homelinux.org||26/09/2006||ibook G4|| PowerBook 6,5 MacRisc3 Power Macintosh ||0 ATI Radeon \c|| ATI TECHNOLOGIES Inc. M9+ 5C63 [Radeon Mobility 9200 (AGP)] (rev 01) ||no-hardware disable-module=linux_input|| || ||
||<bgcolor="green">Attilio Fiandrotti||26/09/2006||ibook G4||PowerBook6,7 MacRISC3 Power Macintosh||0 ATI Radeon NV||ATI Technologies Inc M11 NV [FireGL Mobility T2e] (rev 80)||no-hardware||disable-module=linux_input|| ||
||Rick Thomas rbthomas55@pobox.com||26/09/2006||PowerMac G4||PowerMac3,5 MacRISC2 MacRISC Power Macintosh ||0 ATI Radeon QW||ATI Technologies Inc Radeon RV200 QW [Radeon 7500] || || || Unsupported video format dtected (!) DirectFB/FBDev: Current mode's pixelformat: rgba 8/0, 8/0, 8/0, 0/0 (8bit) ||
||<bgcolor="red">Rick Thomas rbthomas55@pobox.com||01/10/2006||PowerMac G3 [Blue&White]||PowerMac1,1||0 OFfb ATY,XCLAIM||ATI Technologies Inc 3D Rage Pro (rev 5c)||no way to make this work|| ||requires boot arg "video=ofonly" to even do text mode install. Details in Bug#342053||
||<bgcolor="green">Rick Thomas rbthomas55@pobox.com||01/10/2006||PowerMac G4 [QuickSilver]||PowerMac3,4||0 ATY Rage128|| ATI Technologies Inc Rage 128 PF/PRO AGP 4x TMDS|| ||independant of enable or disable "linux_input"|| ||
||<bgcolor="green">Mirko Grava mgrava@rhx.it||27/09/2006||ibook G4||PowerBook5,4 MacRISC3 Power Macintosh||0 ATI Radeon NP||VGA compatible controller: ATI Technologies Inc RV350 [Mobility Radeon 9600 M10] (prog-if 00 [VGA])||no-hardware|| || ||
||<bgcolor="green">Eddy Petrișor eddy.petrisor@gmail.com||27/09/2006||powerbook G4||PowerBook5,2 MacRISC3 Power Macintosh ||0 ATI Radeon NP ||ATI Technologies Inc RV350 [Mobility Radeon 9600 M10] ||no-hardware disable-module=linux_input || ||disable-module=radeon has no ill effects||
||<bgcolor="green">Attilio Fiandrotti||29/09/2006|| MiniMAC || PowerBook10,2 MacRISC3 Power Macintosh || ATI Radeon Yb ||ATI Technologies Inc RV280 [Raeon9200] (rev 01)|| no-hardware disable-module=linux_input|| || Keymap was messed up in DFB after language change ||
||<bgcolor="green">Sven Luther luther@debian.org||30/09/2006|| XServe G5 || RackMac3,1 MacRISC4 Power Macintosh || 0 ATI Radeon QY || ATI Technologies Inc Radeon RV100 QY [Radeon 7000/VE]|| disable-module=radeon disable-module=linux_input|| || ||
||<bgcolor="red">Jan Schukat shookie@email.de||02/10/2006|| PowerMac G5 || PowerMac7,3 MacRISC4 Power Macintosh || 0 NV32 || nVidia Corporation NV34 [GeForce FX 5200 Ultra] (rev a1) || || no way to make this work || ||
=== Porting ===
Line 45: Line 38:
 * An endianness color [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=341770 issue] for powerpc was experienced some times ago with DFB 0.9.22, but it seems it was fixed in 0.9.25 and so recently closed The graphical version of the installer is currently available for Intel x86, AMD64 and PowerPC. The PowerPC port needs work (DebianBug:341597) to get different types of system correctly supported. Other architectures the graphical installer could be ported to include Sparc, Alpha and HPPA.
Line 47: Line 40:
 * The list selection is invisible bug seems to be gone on both radeon 9800 and 9200 on pegasos, when using disable-module=radeon. === Fonts ===
Line 49: Line 42:
 * Going to the console on pegasos/radeon9200 leaves a garbagy font. Using disable-modules=radeon fixes this issue. For font information, please see [[DebianInstaller/GUIFonts]]
Line 51: Line 44:
= TODO = === Usability ===
Line 53: Line 46:
== 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 ==
 * Screen resolution.
   * Currently fixed at 800x600. Should be made flexible (adapt to resolution set by system or user).
   * 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.)
 * Progress bar in separate window.
 * Alternative (graphical) ways to start a shell or browse log files.
 * 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 support different themes (DebianBug:339735) (color schemes). (Note: should not lead to a major increase in initrd size.)
 * Alternative (graphical) ways to start a shell or browse log files - '''done'''
 * Logfile-viewer (in split window) in expert mode as default, if screen resolution permits
Line 71: Line 54:
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.
Line 73: Line 55:
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.
Line 74: Line 57:
== Reduce size of initrds ==
The initrds are currently very large which also results in fairly high memory requirements to run the graphical installer. Size has thus far not been a major concern, our focus has been on getting things working.
=== Games ===
Line 77: Line 59:
Options to reduce initrd size.
 * Library reduction for graphical libraries.
 * Remove unused files from udebs.
 * Reduction of space used by fonts (see above).
It would be nice for g-i to have some games to help kill time during lengthy install sessions.
Line 82: Line 61:
'''Update'''
The size of the initrds is now down to around 10MB. Further reduction would be nice, but it is no longer a major issue.
The [[http://lists.debian.org/debian-boot/2007/08/msg00560.html|cdebconf-gtk-tetris]] udeb is a start, but having a separate entry in the menu does not seem the best way to do it.

Other 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.

 * [[DebianPkg:unstable/games/airstrike|airstrike]] - 2d dogfight game in the tradition of 'Biplanes' and 'BIP'
 * [[DebianPkg:unstable/games/atris|atris]] - tetris-like game with a twist for Unix
 * [[DebianPkg:unstable/games/barrage|barrage]] - Rather violent action game
 * [[DebianPkg:unstable/games/black-box|black-box]] - Find the crystals
 * [[DebianPkg:unstable/games/bomberclone|bomberclone]] - free Bomberman-like game
 * [[DebianPkg:unstable/games/bugsquish|bugsquish]] - Bugs are trying to suck blood out of your arm!
 * [[DebianPkg:unstable/games/bumprace|bumprace]] - 1 or 2 players race through a multi-level maze
 * [[DebianPkg:unstable/games/bygfoot|bygfoot]] - soccer (football) manager game featuring the most important European leagues
 * [[DebianPkg:unstable/games/circuslinux|circuslinux]] - The clowns are trying to pop balloons to score points!
 * [[DebianPkg:unstable/games/dangen|dangen]] - shoot 'em up game where accurate shooting matters
 * [[DebianPkg:unstable/games/gnujump|gnujump]] - (formerly 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> )
 * [[DebianPkg:unstable/games/icebreaker|icebreaker]] - Break the iceberg

Introduction

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

Items tagged as pointrelease are desiderata for next Etch pointrelease (mainly bugfixes), all other items refer to issues which will be addressed in Lenny only.

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 cdebconf-gtk-udeb, directfb, libdirectfb-1.0-0-udeb, libgtk-directfb-2.0-0, libgtk-directfb-2.0-0-udeb, rootskel, rootskel-gtk.

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 Xavier Oswald. Current code is available 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. done

  • Input is not handled in UTF-8 mode, some letters cannot be correctly typed. 401296 - done

  • 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 394871 - done

  • Plans for Lenny are having cdebconf (C implementation of debconf used in the d-i) replacing debconf (328498) 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 402127 - done

Per-architecture issues

We're trying to inventory bugs affecting the g-i on a per-architecture base, architectures considered here are i386, PowerPC, 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). 401685 - done

  • 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 405737.

AMD64 specific

  • pointrelease The console switching problem on AMD64 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.

PowerPC specific

  • DirectFB linux_input input module cannot correctly detect the keyboard on most ?PowerMacintosh models, so we had to disable it relying on the legacy ps2mouse and keyboard input dr.
    This required the inclusion into rootskel and rootskel-gtk packages of some ad hoc startup scripts that take care of picking the correct DirectFB input driver depending on the host architecture.
    A prper addressing of this issue requires fixing the linux_input module so that we can switch to linux_input input module for all supported architectures and drop some startup scripts.

  • Another issue is related to the fact that apparently DirectFB cannot run on top of the nvidia framebuffer: no more information are available because not much light was made on this problem yet.

    This thread (422146) is about the two above mentioned issues, while a g-i on PowerPC compatibility list can be found here DebianInstaller/GUIPowerPC: feel free to add entries for any configuration that's not yet listed.

  • 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". 401693

Ideas for future development

Porting

The graphical version of the installer is currently available for Intel x86, AMD64 and PowerPC. The PowerPC port needs work (341597) 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 support different themes (339735) (color schemes). (Note: should not lead to a major increase in initrd size.)

  • Alternative (graphical) ways to start a shell or browse log files - done

  • 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 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.

The cdebconf-gtk-tetris udeb is a start, but having a separate entry in the menu does not seem the best way to do it.

Other 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.

  • airstrike - 2d dogfight game in the tradition of 'Biplanes' and 'BIP'

  • atris - tetris-like game with a twist for Unix

  • barrage - Rather violent action game

  • black-box - Find the crystals

  • bomberclone - free Bomberman-like game

  • bugsquish - Bugs are trying to suck blood out of your arm!

  • bumprace - 1 or 2 players race through a multi-level maze

  • bygfoot - soccer (football) manager game featuring the most important European leagues

  • circuslinux - The clowns are trying to pop balloons to score points!

  • dangen - shoot 'em up game where accurate shooting matters

  • gnujump - (formerly sdljump) Jump up in a sinking tower (a first unofficial (and untested) udeb was already made by Bas Wijnen <shevek at fmf.nl> )

  • icebreaker - Break the iceberg