[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

doc/TODO up-to-date

I think I have doc/TODO back up-to-date. Please take a minute to look
over it and correct or add anything I'm not aware of.

see shy jo
Important things to do before preview release

Here's a list of urgent things we need to do before issuing a preview

  * Get the load-* stuff out of NEW.

  * Fix mkreiserfs to not hang. (#213314)

  * Finish the libdebian-installer transition, get a working install again.
    (Done or nearly so.)

  * Error handling.  We need to make sure the user is told so when
    something goes wrong. It's especially bad for debootstrap.

  * Progress bar when running mkfs.

  * bogl-term refresh problem

  * Is cfdisk really the best partitioner we can come up with on i386, 
    aside from autopartkit?

  * Get some new successful CD installation reports with builds newer than
    the Oct 8th build.

  * Update the web site to include user docs, including links to download
    boot media.

Current status

	CD installs to i386 and (some) powerpc are working, with many
	successful installs (and many bugs).
	Some success with other install methods: floppy, netboot, etc.

	debian-installer images are built daily for i386, powerpc.
	This includes CD images.

	debian-installer boot images (i386, powerpc) are available in
	the Debian archive, in unstable.
Status for different parts of debian-installer.  The numbers are
approximate (as in +/- 50%) and may change in any direction, at any

[0%] Not begun
	- Some kind of a mechanism for udebs to declare what parts of
	  busybox they need, so we can ensure that all deps are met while
	  keeping the busybox footprint small.
          Packages depending on base-installer should use the
	  utilities in /target so we can keep busybox's size down.
	  (We will probably ship without this.)
	- lintian support for udebs, to catch all the common gotchas
	- ppp support
	  Not as important for analog dialup, as for ISDN, pppoe.
	- wireless support
	  If you're lucky, you may just get a nearby AP by default, but
	  there is no wireless-tools, no way to configure it
	- some architectures

[30%] Might need large rewrites. Current implementation might
      work by accident
        - user documentation
		Short term we have the INSTALLATION-HOWTO, but the real
		install manual is still being put together, and lacks a
        - 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
	- cdrom-checker
		apparently broken (#213054)
	- pcmcia support
		may work, may not..
		pcmcia-modules are not installed onto the target 
		pcmcia-cs-udeb has a broken (reduced?) pcmcia config
		which makes it not work with eg, orinoco
		Probably need to re-run hw-detect after loading pcmcia from
		the net_driver floppy.
	- some architectures
		m69k (some subarches)
		mips, mipsel
[60%] Needs some work, but does its grunt work
	- I18N
		Mostly there.
		Still working on various things such as moving menu items
		into debconf.
	- translations
		Varying languages translated to varying degrees.
	- language-chooser
		The perrenial problem is how to order/present the list of
		languages. Many complaints, but it works.
        - boot loader installers (lilo, grub, etc)
		Work, except for when they don't. See BTS.
        - disk formatter
                Works, except for reiserfs hang prolem.
        - base system installer
		debootstrap is stable, and has quite good support in
		Except for when it fails. See BTS.
		In particular, it always fails when used on a non-empty
		partition. Many users run into this.
        - netcfg
		Working, pending rewrite for IPv6 and multiple devices
	- anna
		Works, mostly.  Needs support for Releases 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.
	- kernel-package integration
		Moving to the new linux-kernel-di system, so far only i386
		is fully converted.
        - disk selector, partitioner
		There are two of them, autopartkit and partkit.
		partkit needs polish, both work, except for when they
		don't. (See BTS.)
	- iso-scan
		Works, but does not flag the disk the iso is mounted from
		as unusable by the rest of the installer.
	- web site
		Could be better laid out, lacking some sections, other
		parts are quite good.
	- archive integration
                We probably want to separate testing and unstable at some
		Only a few arches (i386, powerpc) have boot media in the
		There is currently no mechanism to promote boot media
		or udebs from unstable to testing.
	- some architectures
		powerpc (some subarches)

[90%] Single missing important feature or bug.
        - install media build system
		The mrvn branch needs to be tested and merged.
		The dest/ image names need to be reorganised.
	- partconf
		Reiserfs hangs, in interactive mode.
	- hw-detect
		Working but needs to be switched over to discover2
	- bts
		Search for bugs tagged d-i
		(Still need a non-manual way to tag our bugs.)

[100%] Those shouldn't need to be touched any more 
       (famous last words)
        - udpkg
		May be eventually replaced with busybox dpkg.
	- cd installs
                Works mostly.
 	- net retriever
	- cdrom retriever
        - ethdetect
        - library reduction
		Working (on all arches?)
	- post-reboot configuration
		base-cofig is stable, though stuff may need to be added to
		it to handle things d-i doesn't bother with. i18n is
		Integration with debian installer's debconf database still
		needs to be done, although the current ugly system works.
        - cdebconf
	- dhcp
	- floppy retriever
        - main-menu
        - choose-mirror
        - busybox integration

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/distribution", NULL); /* unchecked return code ! */
    asprintf(&command, "foo %s", debconf->value);

  * Nothing should send error messages to stderr. If there is an error,
    use debconf to display a message. stderr messages will overwrite the
    newt frontend.

  * 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

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

  * udebs should not include md5sums files, or postrm, prerm, preinst
    scripts. This includes ones generated by debhelper.

  * Use the cdebconf error template type for error messages, instead of
  * Most debconf title setting can be replaced with providing the
    appropriate title template and letting main-menu set it.

  * Some main menu items still need to be updated to provide menu entry

Attachment: signature.asc
Description: Digital signature

Reply to: