如何将图标添加到自定义 grub 启动脚本?

如何将图标添加到自定义 grub 启动脚本?

我下载了普里奥斯并将system.sfs,,,从 ISO 复制到并创建一个ramdisk.img kernel名为的空目录。install.imginitrd.img~/primeos~/primeos/data

PrimeOS为了启动,我创建了一个具有以下启动顺序*的自定义菜单条目:grub 定制器

insmod part_gpt
search --file --no-floppy --set=root /home/joe/primeos/system.sfs
linux /home/joe/primeos/kernel root=/dev/ram0 androidboot.selinux=permissive buildvariant=userdebug SRC=/home/joe/primeos
initrd /home/joe/primeos/initrd.img
  • 我在用着Tela GRUB 主题
  • elementary 5.1, Windows 10&Parrot 4.7位于不同分区,而位于的磁盘PrimeOS上。elementary
  • 由于 Tela 主题没有用于Parrot 4.7输入的图标,我添加了一个 32 x 32 大小的图标/boot/grub/themes/Tela/icons/parrot.png,它工作得很好。

Grub 定制器

  • PrimeOS 运行得很好。

我的问题是如何添加PrimeOS自定义启动项的图标?

我尝试过分别添加 32 x 32prime.pngprimeos.pngat /boot/grub/themes/Tela/icons/,但它们似乎都不起作用。 grub 菜单项可以工作,但没有图标。

编辑:这是我当前的启动菜单的样子 在此输入图像描述


系统信息

joe in ~ at eOS via 

答案1

很抱歉很长时间没有人回答,但我在自己寻找答案时遇到了您的问题。

你应该阅读这篇文章: https://superuser.com/questions/1559269/customize-icons-in-a-grub-theme

我假设您的 primeos 条目是此文件中的自定义菜单条目:

/etc/grub.d/40_custom

如果是这种情况,您将需要向菜单项添加一个 --class 属性,如下所示

menuentry 'PrimeOS' --class primeos {
...
}

其中 primeos 与图标集中的文件名匹配:

/boot/grub/themes/Tela/icons/primeos.png

编辑 /etc/grub.d/40_custom 后,运行此命令来更新 grub 以使更改生效

sudo update-grub

我必须做类似的事情来将自定义 tela 图标添加到 grub 配置中的自定义 Windows 和 MacOSX 条目,这将菜单条目映射到主题中的图标:

menuentry 'Windows 10' --class windows {
    search --fs-uuid --no-floppy --set=root BCD4-0123
    chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}

menuentry 'Mac OSX Big Sur' --class macosx {
    search --fs-uuid --no-floppy --set=root 26BA-E00C
    chainloader (${root})/EFI/BOOT/BOOTx64.efi
}

希望这可以帮助!

相关内容