Things we really should fix before rc2: - fix red screen problem (or not) - hppa 2.6 cd support to stop hangs - fix last few source/udeb inconsistencies Things that would be nice for rc2, but can't block it: - X's failure to use read-edid at all (#264792) - vmelilo-installer needs to remove no_bootloader from /target/etc/kernel-img.conf (still relevant?) This TODO list can only touch on some larger issues, but there are a great many open bugs on various components of the installer. See all bugs tagged d-i in the BTS. Also, there are many unprocessed installation-reports. Status for different parts of debian-installer. The numbers are approximate (as in +/- 50%) and may change in any direction, at any time. [0%] Not begun --------------------------------------------------------------------- - some architectures hurd-i386 (we will ship w/o this) sh (we will ship w/o this) [30%] Might need large rewrites. Current implementation might work by accident --------------------------------------------------------------------- - GUI frontend to cdebconf. There are some basic implementations. The trick is to make it a GUI that does not suck, while still using debconf underneath. - ppp support Not as important for analog dialup, as for ISDN, pppoe. [60%] Needs some work, but does its grunt work --------------------------------------------------------------------- - I18N Mostly done, still filling in minor holes. - translations Varying languages translated to varying degrees. http://people.debian.org/~seppy/d-i/translation-status.html - boot loader installers (lilo, grub, etc) Work, except for when they don't. See BTS. - anna Works, mostly. Needs support for Release files. Support for signed Release files would be cool, but needs gpgv-udeb. Needs to have load-installer properly split out of the anna binary to save space on root floppy. Or removed, not used anymore. - disk selector, partitioner We have switched to partman everything except a couple of subarches and s390. - bugreporter-udeb only supports saving to floppy, which many lack should offer a way to save via network or to usb stick - post-reboot configuration base-config is stable, though it could use more polish Some questions repeat questions from d-i. - web site http://www.debian.org/devel/debian-installer/ Could be better laid out, lacking some sections, other parts are quite good. - archive integration No automatic propagation to testing. No source propagation for udeb sources! - pcmcia support Much improved, generally works now. Automatic PCI resource range exclusion based on probing still needed, work in progress. - low memory support Where "low" is 24-46 mb! Works, but user must be careful to set up swap ASAP. There is no sanity checking, and some bad failure modes. - user documentation Installation manual is up-to-date for i386. Needs sanity checking for other architectures. - developer documentation We understand it, but it could be improved. - 2.6 support Works on i386, with minor bugs. Works on powerpc, at least newworld. Testing on other subarches needed, especially G5 and oldworld (with mkvmlinuz). - preseeding Works pretty well. Some things still cannot be preseeded. This is generally a bug in the udeb's use of debconf. Some problems with kernel command line limits. Too many things need to be set at the kernel command line for netboot preseeding. - most architectures i386 ia64 powerpc mips mipsel m68k (some subarches) - bvme floppies need root to build alpha sparc - floppies need root to build arm (some subarches) hppa amd64 (unofficial) s/390 [90%] Single missing important feature or bug. --------------------------------------------------------------------- - hw-detect Working but needs to be switched over to discover2 or hotplug - iso-scan Works, but does not flag the disk the iso is mounted from as unusable by the rest of the installer. - netcfg Working, pending rewrite for IPv6. - bts Still need a non-manual way to tag our bugs. - language-chooser The perennial problem is how to order/present the list of languages. Many complaints, but it works. - base system installer It can break due to testing package churn. cdebootstrap would fix this; also debootstrap/apt/archive changes in progress to add Base: overrides to Packages files. Needs more granular progress during debootstrp run (ubuntu patches) [100%] Those shouldn't need to be touched any more (famous last words) --------------------------------------------------------------------- - udpkg - cd installs - net retriever - cdrom retriever - ethdetect - cdebconf - floppy retriever - main-menu - choose-mirror - busybox integration - install media build system - kernel-package integration - library reduction - wireless support Post-sarge goals ================ - remove skolelinux/woody compatability code (after careful consideration and making sure it's ok) (joeyh) - switch to discover 2 (joeyh) - switch to cdebootstrap (joeyh) - 2.6 as default kernel on i386 (joeyh) - 2.6 floppies on i386 (joeyh) - fix pkg-lists names to match images (joeyh) - improve udeb dependancies and use fully in pkg-lists (joeyh) - consistent indentation of all shell scripts (with a style that minimises size on initrd! :-) (joeyh) - drop devfs! (joeyh) - improve base-installer kernel robustness (Kamion) - improve base-installer progress bar granularity (Kamion) - merged/rewritten localechooser (Bubulle) - 16 mb installs - graphical installer (markos, kamion) - finish partman (anton) - handle debian upgrades in partman (anton) - fai integration (markos) - cloning from installer system (luther) - base-installer test suite (kamion) - discover2 (gaudenz) - hotplug (gaudenz, kamion) - udev (kamion) - use same device names in installer and installed system (kamion) - non-linux d-i (jbailey) - libc udeb renamed to include version number (jbailey) - "vague thoughts of making debian-cd my bitch" (jbailey) - moon-buggy udeb (cts@debian) - britney and udebs - fai disk config files in d-i (holger) - low(er) mem (zboob) - etch in 2005 (or bust) (jvw) - uml for testing d-i (anton) - udebs and debs of same name (joeyh, gaudenz) - post reboot network configuration (kamion) - real deb from archdetect udeb (luther) - getting rid of hardcoded paths in d-i (kamion) Common problems and transitions =============================== This is a list of common mistakes that need to be corrected throughout the code base: * All debconf commands that INPUT, GO, GET or SET questions should check their return value. This is pure evil: debconf->command(debconf, "GET", "mirror/suite", NULL); /* unchecked return code ! */ asprintf(&command, "foo %s", debconf->value); system(command); * cdebconf's debconfclient.h has a set of macros for calling debconf (debconf_get() and so on) These should perhaps be used consistently throughout the code for clarity. * There needs to be a centralised logging method. Syslog will do, but we currently have a lot of nasty code that appends messages to /var/log/messages directly. All of that would be converted to pipe it to logger. However, this is a problem, because piping a command to logger loses the exit status of the command. Need some way to run a command, logging the ouput to syslog, w/o losing exit status. (Several exist in the bts/archives, none have been used yet.) * udebs should not include md5sums files, or postrm, prerm, preinst scripts. This includes ones generated by debhelper. Linda will find these pretty well. * There is no need to set the seen flag anymore. All code that does so should be removed, unless that code is expected to also possibly run on a normal debian system (choose-mirror). Seen flag munging can break preseeding.