recent d-i hacking
Yesterday after doing the shopping, I worked on main-menu, closing several old bugs. Unfortunatly I failed to do one fix cleanly, as it would have required inverting the return values of most of the functions in main-menu. I tried to be smart about doing that, and changed their return types so static type checking would help me make sure I'd not missed changing anything. While that helped, the result still ended up buggy (what looked like deep recursion and a crash in an edge case), and I didn't have time to pinpoint where I'd went wrong, so I threw in a hack (global variable) instead. Sigh. Late last night, I also changed quite a lot of strings, which the translators have been doing a good job at unfuzzying today.
Today I started some code that will try to look at a mounted partition and return the name of the OS that was installed on it. It's easy to handle DOS, Debian, Red Hat, Mandrake, and LSB systems, but I need listings or disk images to add ones like Slackware, Windows > 3.11, etc. My hope is that this info can be used by the grub-installer as part of the upcoming os-prober udeb, to make a nice grub menu. And also possibly by partman in the partion list menu. Unfortunatly, the rest of os-prober, if it exists, is not in svn yet.
I also wrote a short guide on building d-i with a custom kernel. I'd hoped to convince a user who'd actally done this to write it, as I think that would have produced a better document. Oh well. If debian-cd was not such a bear, this would be really quite easy. To avoid the need to use debian-cd or set up a local d-i mirror with customised udebs, I added a new image type to d-i, it biulds a 7 mb iso image with a full d-i on it (making it easy to include different kernel module udebs in there), that downloads debian from the net. Kind of a miniature businesscard image. So d-i now has CD images of these sizes: 3 mb, 7 mb, 25 mb, 100 mb, full CD, full DVD. Whee!