Mike Gilbert posted on Mon, 25 Jun 2012 12:56:25 -0400 as excerpted:
> On Mon, Jun 25, 2012 at 11:19 AM, Doug Goldstein <firstname.lastname@example.org>
>> Since Grub Legacy and Grub 2 are slotted, Portage won't remove the
>> older version. Even if it removes the older one, everything necessary
>> is installed into /boot and the MBR already.
> Portage will remove the older slot the next time the user runs emerge
> --depclean unless sys-boot/grub:0 is added to the world file. I'm
> looking for a good way to communicate this to the user.
> How about this: For ~arch, we do an ewarn in pkg_postinst if grub:0 is
> installed. For stable, we do a news item.
Here's a bit of a different idea:
Changing the bootloader is really a profile level change. If appropriate
grub2-defaulted new profiles are created, and the old ones set to specify
grub:0 as their default bootloader and then deprecated, this will
automatically both provide the appropriate upgrade preparation required
hint, and allow users to upgrade on their own schedule during the usual
profile deprecation period.
Additionally, if there are continued issues with gcc building the old
grub, etc (as was complicating the gcc-4.6 upgrade), the old profile can
be set to mask new gcc, as well, thus providing additional encouragement
to upgrade for the new gcc, and allowing people to deal with that upgrade
at the same time, with their profile switch. As such, supporting the old
profiles during the deprecation period shouldn't be too bad, since slots,
version-ranges, etc, can be nailed down as necessary, and people will
automatically be prepared to deal with a bit of churn as they do their
Thinking back, that probably would have been the best way to handle the
baselayout-2/openrc upgrade as well, but that's rather behind us, now.
Duncan - List replies preferred. No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master." Richard Stallman