Bug Description

[Impact] The selected boot device in ubiquity's manual partitioner is sometimes wrong.
[Test Case] See comment #11 for a VM setup that reproduces this bug.
[Regression Potential] This is hairy code that has failed a number of times in the past, so it's worth checking that a few other setups still behave reasonably. It probably still won't be right in all cases (see e.g. bug 1066173 which I think precise may suffer from); this specifically addresses the case when installing from removable USB media onto a fixed disk, and ensuring that the boot loader defaults to the fixed disk.

== If you are affected by this bug ==

You can use Quantal beta or later images.
You can use Precise post 12.04.1 daily images.

Both are available from cdimages.ubuntu.com

=====================================

Precise Desktop 20120423

During a side by side installation with an existing Ubuntu Precise on the system, with the manual partitioner from a usb stick, the selected device for boot loader installation was set to /dev/sdb by default (installation media)
If the user doesn't pay attention to the selected value, the end of the installation will fail.

When grub fails to install on /dev/sdb, it shows a dialog to select another device. I choose /dev/sda, it installs without a failure but I'm dropped to a grub prompt on reboot.

ATM I'm much more concerned about 12.04.1. In order to verify that this is still a problem I created a Precise i386 20120810.1 disc and tried some installation cases on two totally different sets of hardware. This does still exist in the current Precise daily images!

I repeated this Precise test with the internal /dev/sdb disconnected but with a blank 4GB flash drive plugged in which then became /dev/sdb and I get the same result. I'd imagine that if someone were using a live USB and didn't pay attention that they could both end up with a borked grub on the machine and a borked syslinux on the USB drive :^(

I'm truly concerned about 12.04.1, I'd think we should be laser focused on fixing the bugs that slipped into Precise.

I've run into this issue as well when installing Precise on my brother's and cousin's machines, with both the manual partitioner and when simply picking the automatic "side-by-side" option from the installer. The workaround was to always use the manual partitioner to switch the default device for bootloader installation to /dev/sda, after which the installation proceeds successfully.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

I changed that to verification-done based on testing Ubuntu 12.04.2 LTS "Precise Pangolin" - Release i386 (20121130) which I grabbed from the QA tracker. If other flavors or architectures require testing please change that back to verification-needed with a list of flavors and/or architectures that require testing.

That image does now default to selecting /dev/sda which is certainly more appropriate and less likely to place grub on an external device.

The verification of this Stable Release Update has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

[ Colin Watson ]
* Fix missing parentheses that caused removable installation media
sometimes to be selected as the default GRUB device (LP: #987418).
* Support UEFI Secure Boot (LP: #1075181):
- Try to install a signed kernel if base-installer asks for one, and
don't leave signed kernels installed if it doesn't.
- If the SecureBoot EFI variable is set, then ensure that
grub-efi-amd64-signed and shim-signed remain installed.
- Copy the signed kernel from /cdrom if it is not in the squashfs. If
there is a signed kernel there but no unsigned one, then use sbattach
to remove the signature and construct the unsigned kernel on the fly.
* Automatic update of included source packages: base-installer
1.122ubuntu7.2, grub-installer 1.68ubuntu5.1.