Differences between revisions 31 and 33 (spanning 2 versions)
Revision 31 as of 2006-02-22 23:29:00
Size: 4412
Editor: ?fiandro
Comment: Updated open issues list
Revision 33 as of 2006-05-14 09:46:08
Size: 4988
Editor: ?GeertStappers
Comment: daily-build update request
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## page was renamed from DebianInstallerGUIToDo
Line 8: Line 7:
There is currently one remaining issue that blocks including the graphical installer from being included in the main installer build infrastructure: udeb dependency resolution. The main issues left are:
 * use of official font packages instead of tarballs
 * solve the console switching problem on AMD64
 * inventory of which powerpc systems are supported and which are not; some could maybe be supported with special boot options or rootskel scripts; rootskel scripts could also be udes to disable the gtk frontend for non-compatible systems
 * endianness color issue for powerpc
Line 20: Line 23:
It seems this problem has been fixed in a recent version of dpkg-dev. '''Update'''
 * udeb dependency resolution is now supported in dpkg-dev and debhelper
 * all (library) udebs relevant for the graphical installer now have correct dependencies
Line 26: Line 31:

== Building ==

The script `installer/build/daily-build` needs to be updated
to build ["DebianInstaller/GUI"] beside the existing images of d-i.
Line 56: Line 66:
'''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.

Overview of open issues and things to be done for the ["DebianInstaller/GUI"].

See also open [http://bugs.debian.org/cdebconf-gtk-udeb bug reports against cdebconf-gtk-udeb].

Issues

The main issues left are:

  • use of official font packages instead of tarballs
  • solve the console switching problem on AMD64
  • inventory of which powerpc systems are supported and which are not; some could maybe be supported with special boot options or rootskel scripts; rootskel scripts could also be udes to disable the gtk frontend for non-compatible systems
  • endianness color issue for powerpc

udeb dependency resolution

During a build, not all dependencies between udebs can be resolved if all udebs are taken from the official mirrors. The current workaround is to copy some udebs to "localudebs", but this is not acceptable for the main build infrastructure (see also [http://lists.debian.org/debian-boot/2005/10/msg00955.html this thread]).

The problem occurs if some udebs depend on a normal library package (libfoo.deb) while other udebs depend on the corresponding udeb (libfoo.udeb).

There are two known solutions for this issue.

  1. Change dependencies in udebs in such a way that they all depend in the same manner. This is what currently happens for the main installer. Problem with this solution is that the udebs involved are not maintained by the d-i team. Also, this would be ignoring the structural problem.
  2. Fix the toolchain (mainly dpkg-dev) to improve automatic dependency determination when udebs are build. A [http://lists.debian.org/debian-dpkg/2005/06/msg00198.html patch] for this has been proposed but has not yet been implemented.

Update

  • udeb dependency resolution is now supported in dpkg-dev and debhelper
  • all (library) udebs relevant for the graphical installer now have correct dependencies

Other issues

TODO

Building

The script installer/build/daily-build needs to be updated to build ["DebianInstaller/GUI"] beside the existing images of d-i.

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

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.

Options to reduce initrd size.

  • Library reduction for graphical libraries.
  • Remove unused files from udebs.
  • Reduction of space used by fonts (see above).

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.

Migrate from gtk+-directfb-2.0.9 to more recent version of GTK+ )

The udebs for gtk+-directfb are based on a [http://www.directfb.org/downloads/Libs/gtk+-directfb-2.0.9-2.tar.gz set of sources] released in Apr 2003; it's now possible to build a set of libraries based on gtk+2.8.10 which was released around Jan 2006. The main problem is that [http://wiki.debian.org/DebianInstaller/GUIBuild building] is rather tricky, and there are no pre-patched sources available from upstream. Recently the Direct Frame Buffer backend was merged into GTK+ mainline and will be part of the upcoming GTK+ libraries version 2.10, whose release date is set around May 2006. Once upstream libraries will be ready to be used, they'll have to be packaged into udebs before we can use them in the installer.