Comment 53 for bug 576724

Colin Watson (cjwatson) wrote :

There's been a lot of discussion on this bug, and I confess with apologies that I haven't had enough time to read it all. However, I entirely agree with Erick's original point and I intend to figure out a way to rework this set of dialogs, since it obviously isn't working in its current state. The reason why I haven't dealt with it until now is essentially that I've been buried trying to get grub2 into a decent state for Maverick, but I'm finally getting around to looking at the upgrade issues. There's no need to shout, scream, talk about how people should resign, etc., as some people have been doing in this bug log; that sort of thing is entirely unproductive. Still, I realise that it's frustrating when developers fail to respond to well-formed bug reports, so I'll try to keep up at least with this one a bit better.

I feel I should give a few explanations to address particular questions people have raised:

1) While it would be nice to simply revert to Karmic's presentation, as it was undeniably much simpler, it just wasn't meeting everyone's needs. The GRUB 2 development team, including myself, strongly believe that people should be encouraged to install GRUB to disk devices where possible, and that's the only mode Karmic supported. However, lots of people find it necessary or preferable to install to partition devices instead, whether for interoperability with certain pieces of third-party Windows software, or because they have a heavily customised boot loader already in their MBR, or various other reasons. GRUB 2's design means that running grub-install on the wrong device on upgrade can lead to an unbootable system, and so we cannot simply ignore these use cases; we have to accommodate them.

2) The reason why this dialog sometimes appears on upgrade even though you've already answered its questions beforehand is not just because I enjoy asking users useless questions. :-) The GRUB 2 packaging tries very hard to avoid asking questions when it already knows the answer. Unfortunately, sometimes it simply doesn't know. There are two common reasons for this. Firstly, Karmic stored the answer to that question in a suboptimal way: it stored strings such as "/dev/sda", which may well refer to a different disk from boot to boot! On a multiple-disk system, on upgrade from Karmic, it's entirely possible that the GRUB 2 packaging simply doesn't have the previous answer in a form which is at all reliable. Of course we try to deal with the common cases: if you only have one disk then the answer is obvious - but there are situations where we just have to ask again. From now on the answer is being stored in a more reliable way. Secondly, if some of the disks you installed to don't exist any more (this might happen, for instance, if you simply selected all disks but one of them was a removable USB drive), then we ask again since the correct answer isn't obvious.

In any case, I think a rework of this dialog will be sufficient to address the most pressing concerns here. I rather like part of Nicolò Chieffo's suggestion in comment 38, although I'd modify it a bit: offer disk devices and the partition holding /boot. That seems much more sensible than offering all partitions, quite easy to implement (very relevant given that I want to get this into a Lucid update!), and it would greatly reduce the potential for disaster. The postinst can still accept other answers via preseeding, for advanced deployments.