:: [devuan-dev] bug#697: /etc/default/…
Top Page
Delete this message
Reply to this message
Author: John E. Krokes
Date:  
To: Devuan Bug Tracking System
Subject: [devuan-dev] bug#697: /etc/default/grub.d/xen.cfg: Extraneous output line causes error message at boot
Package: xen-hypervisor-common
Version: 4.14.5+24-g87d90d511c-1
Severity: minor
File: /etc/default/grub.d/xen.cfg

Dear Maintainer,

When invoked via grub-mkconfig, xen.cfg outputs this as its first line:
        Including Xen overrides from /etc/default/grub.d/xen.cfg


The output of grub-mkconfig is expected to be redirected into a grub.cfg file.
Grub will read the grub.cfg at boot. Unfortunately, "Including" is not a
valid grub command. So when booting, grub emits this error message before
displaying its menu:
    error: can't find command `Including'.



The error message is obscured very quickly. It does not affect functionality
in any way. It requires booting on a VERY slow machine in order to read
the error message at all.


If I add a '#' to the start of the "Including", the resulting grub config file
boots with no error.
    echo "#Including Xen overrides from /etc/default/grub.d/xen.cfg"



I'm not sure if this line was intended to go into the generated config
file as a comment, or if it was intended to be shown to the user while
grub-mkconfig is running.


I have observed this and tested my fix against version
4.14.5+24-g87d90d511c-1 of xen-hypervisor-common. I have also checked
with the debian git at https://salsa.debian.org/xen-team/debian-xen/-/blob/master/debian/tree/xen-hypervisor-common/etc/default/grub.d/xen.cfg. This line
has not changed in a very long time.


I can also duplicate the behavior using grub-emu, with the output redirected
to a file.



Thanks for your time.

-Mag


-- System Information:
Distributor ID:    Devuan
Description:    Devuan GNU/Linux 4 (chimaera)
Release:    4
Codename:    chimaera
Architecture: x86_64


Kernel: Linux 5.10.0-16-amd64 (SMP w/2 CPU threads)
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

-- Configuration Files:
/etc/default/grub.d/xen.cfg changed:
echo "Including Xen overrides from /etc/default/grub.d/xen.cfg"
XEN_OVERRIDE_GRUB_DEFAULT=0
if [ "$XEN_OVERRIDE_GRUB_DEFAULT" = "" ]; then
    echo "WARNING: GRUB_DEFAULT changed to boot into Xen by default!"
    echo "         Edit /etc/default/grub.d/xen.cfg to avoid this warning."
    XEN_OVERRIDE_GRUB_DEFAULT=1
fi
if [ "$XEN_OVERRIDE_GRUB_DEFAULT" = "1" ]; then
    GRUB_DEFAULT=$( \
        printf "$(gettext "%s, with Xen hypervisor")" \
        "$GRUB_DISTRIBUTOR GNU/Linux")
fi



-- no debconf information