[Bug 1199731] Re: config script thinks grub.d contains all variables

Colin Watson cjwatson at canonical.com
Wed Jul 10 11:01:45 UTC 2013


** Changed in: grub2 (Ubuntu)
       Status: Triaged => Fix Committed

** Changed in: grub2 (Ubuntu)
     Assignee: (unassigned) => Colin Watson (cjwatson)

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2 in Ubuntu.
https://bugs.launchpad.net/bugs/1199731

Title:
  config script thinks grub.d contains all variables

Status in “grub2” package in Ubuntu:
  Fix Committed

Bug description:
  TL;DR: grub maintainer scripts endup writing an empty linux_cmdline if
  /etc/default/grub.d/* is present from another package.

  At least grub-pc's config script thinks that the presence of /etc/default/grub.d/* means that GRUB_CMDLINE_* is defined in there and tries to read it from grub.d/ for usage in a *newly* created config. However in Kubuntu we have one file in grub.d/ and that file only sets GRUB_DISTRIBUTOR.
  The config script will - when present - try to read deafult/grub and grub.d/* and then carry the read values into the new deafult/grub. It does however not check whether the read values are null/nil/undefined such that it ends up writing an empty cmdline into default/grub by default.

  --- code ----

  for x in /etc/default/grub /etc/default/grub.d/*.cfg ; do
    if [ -e "$x" ]; then
      DEFAULT_FOUND="yes"
      . "$x"
    fi
  done

  if [ "$DEFAULT_FOUND" = "yes" ]; then
    db_set grub2/linux_cmdline "$GRUB_CMDLINE_LINUX"
    db_set grub2/linux_cmdline_default "$GRUB_CMDLINE_LINUX_DEFAULT"

  --- code ----

  In combination with an issue in ubiquity/d-i which also prevents a
  default cmdline by default. Put together these issues cause bug
  1171099 (no plymouth after installation in kubuntu).

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1199731/+subscriptions




More information about the foundations-bugs mailing list