[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How to change menu entries in grub?



Kindly inform, what files to change, if we are using grub 2. Thanks. 

gSM

On Sat, May 2, 2020, 22:00 <jnqnfe@gmail.com> wrote:
Ah, you speak of "boot/grub/menu.list", which is the configuration file for grub-legacy. I presumed that you meant grub2 (grub-pc|grub-efi).

The grub-legacy support is largely unmaintained, and their is no **config option** for replacing the "Debian" text in the grub-legacy menus. That's not to say it's impossible though, it **is** possible.

Since this is just text in text based files, you can easily enough construct a "hook" that you can place in your config to make the necessary modification to the binary contents before it is finally wrapped up as an ISO/IMG/whatever.

So:
1. You create a small "hook" script in your config directory which does text replacement on the binary/boot/grub/menu.list file.
2. You execute the build.

What happens:
1. When the build reaches the grub-legacy setup stage, it writes the config with "Debian" strings.
2. A little later the binary hooks stage is reached, and your hook gets run, which modifies that file to replace those strings as you desire.
3. After this the stage for wrapping things up as an ISO or whatever is reached, completing your image.

You should find instructions for writing hooks in the `live-manual`.

Alternatively, stop using grub-legacy.

Regards,
Lyndon

On Sat, 2020-05-02 at 21:52 +0530, Harshad Joshi wrote:
No it is not about the graphics that are displayed on grub menu. I have my own kernel and set of binaries that don't have debian license so calling my live+install CD as debian os would be wrong. 

Hence I want to rename the debian entry in grub as something else. I had previously done this by editing /boot/grub/menu.lst in 2013-14 but now a lot has changed underneath both the debian live wrapper and grub itself. 

So please assist me in making those required changes that will reflect my os name after live CD installation on hdd. 

--sent from OnePlus device--

On Sat, 2 May, 2020, 5:10 AM , <jnqnfe@gmail.com> wrote:
I presume that what you really mean is the text at the top of the screen in the bootloader? Like "Debian GNU/Linux 10 (buster)".

If that's what you mean, it's a part of the background image (splash), automatically generated from an SVG, with the text hard coded into live-build.

At the current time the only solution available to you, besides hacking live-build, is to use a custom bootloader splash, which involves:
1. making a "bootloaders" directory within your config.
2. copying the folders for the bootloaders you're using from /usr/share/live/build/bootloaders into it.
3. replacing the splash.
4. doing a build of course.

Note that you can throw away the SVG file in your syslinux (isolinux|syslinux|extlinuz|pxelinux) folder and replace with a PNG instead. grub only takes a PNG.

Note that grub (default used for EFI) has a wierd thing in its config where it actually uses the syslinux (default used for BIOS) splash if present instead of the one in its folder, but you're probably going to replace both anyway... This was probably added because only the syslinux code has the code for converting an SVG splash.

Expect this to improve in future.
1. In the next version of live-build (being worked on) the bootloader files in your config are merged with the default ones, so you only need a copy of the files you want to replace (splash).
2. Some work has been done to remove some old derivative distro hacks mess, and more is to be done, including ensuring that a proper mechanism exists for users to override strings like the one you refer to.

I personally introduced change #1 (completed) and I personally am intending to take care of change #2 in the near future (it's on my todo list [1]).


Regards,
Lyndon

Help support my work
---------------------
Please consider supporting my work. My links are below.
(please also consider the team's work reviewing my work)


On Mon, 2020-04-27 at 12:06 +0530, Harshad Joshi wrote:
My CD contains non debian components and hence I want to change its name from debian to something else. 

Currently live installer shows menuentry as debian. 

Current grub2 settings don't have any settings for same. 

--sent from OnePlus device--

Reply to: