无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 39326|回复: 120
打印 上一主题 下一主题

[分享] Grub2主题应用

    [复制链接]
1#
发表于 2020-5-14 18:49:28 | 显示全部楼层
回复

使用道具 举报

2#
发表于 2020-5-16 14:03:36 | 显示全部楼层
楼主还在写吗?
我也更新了一下我这边的文档。
https://a1ive.github.io/grub2_gfx_zh.html

点评

在写的,写到进度条进度环,这刚好是我不怎么用的,所以写得不是很耐心,这两天也没空,就趁机歇一歇再继续写。  详情 回复 发表于 2020-5-17 16:50

评分

参与人数 1无忧币 +5 收起 理由
2011cwj6958 + 5 很给力!

查看全部评分

回复

使用道具 举报

3#
发表于 2020-5-28 18:54:36 | 显示全部楼层
支持!

点评

借贴接前话题反馈下,用grub2_0527(progress: disable by default)及以后新版本测试 slack、elegant两款主题实机启动后黑屏,如加enable_progress_indicator=1 则可显示画面但背景零乱。建议progress恢复以前默认  详情 回复 发表于 2020-6-2 02:44
回复

使用道具 举报

4#
发表于 2020-6-2 09:24:06 | 显示全部楼层
ksafei 发表于 2020-6-2 02:44
借贴接前话题反馈下,用grub2_0527(progress: disable by default)及以后新版本测试 slack、elegant两 ...

不能重现。
应该是你的菜单不对。

点评

菜单: set default=0 set fallback=2 set timeout=5 #enable_progress_indicator=0 cat --set=modlist ${prefix}/insmod.lst; set locale_dir=/boot/grub/locale set lang=zh_CN set gfxmode=1024x768,  详情 回复 发表于 2020-6-2 10:34
回复

使用道具 举报

5#
发表于 2020-6-2 16:27:14 | 显示全部楼层
ksafei 发表于 2020-6-2 15:15
注释掉还是不行
确实有点奇怪,同样的菜单配置grub2_0526版本可以,换了新版就不行(启动到界面时能看到 ...

在 set gfxmode 前随便往屏幕上输出点什么东西试试,
比如 echo abcdefg

点评

折腾了一下午,刚找到原因了,原来新版要求引导配置文件编码必须为UTF-8-ROM,0526版以前要求UTF-8兼容UTF-8-ROM。 现在把文件编码改为UTF-8-ROM显示正常了  详情 回复 发表于 2020-6-2 16:35
回复

使用道具 举报

6#
发表于 2020-12-29 21:11:34 | 显示全部楼层
本帖最后由 wintoflash 于 2021-1-22 14:07 编辑

最近一段时间稍微增强了 label 组件的功能。
现在 label 组件可以动态地显示一些信息了。
1. 选中菜单项的帮助信息
菜单项的帮助信息用 "--help-msg" 设置。例如
  1. menuentry "test menu“ --class=win --help-msg="Boot Windows PE" {...}
复制代码

在主题中,使用 id = "__help__" 来指定显示帮助信息
  1. + label {id = "__help__" color = "#fff"}
复制代码

图像模式下的效果:

文本模式下的效果:


2. 选中菜单项的标题 (可能没什么用)
在主题中,使用 id = "__title__" 来指定显示帮助信息
  1. + label {id = "__title__" color = "#fff"}
复制代码



3. 显示变量 (不随变量值的改变而改变)
在主题中,使用 text = "@@变量名" 来显示变量的值。
注意,即使变量的值改变了也不会刷新显示。
  1. + label {text = "@@gfxmode" color = "#ffffff"}
复制代码


4. 显示变量 (随变量值的改变而改变)
在主题中,使用 var = "变量名" 来显示。
  1. + label {var = "SECOND" color = "#ffffff"}
复制代码


5. 显示变量 (自动执行命令以刷新变量的值)
在主题中,使用 var = "变量名" 来设置要显示的变量名,用 hook = "简单命令" 来设置刷新命令。
这个命令每秒执行一次,以动态修改变量的值。注意,只支持简单的单句命令,复杂的 if for while function 都不支持。
示例1: 显示当前时间 (每秒刷新)
  1. + label {var = "var_time" hook = "date --human --set=var_time" color = "#ffffff"}
复制代码

示例2: 显示当前 CPU 温度 (只支持较新的 Intel CPU,需加载 cpuid 模块)
  1. + label {var = "cpu_temp" hook = "cputemp cpu_temp" color = "#ffffff"}
复制代码

评分

参与人数 1无忧币 +5 收起 理由
hilsonma + 5 赞一个!

查看全部评分

回复

使用道具 举报

7#
发表于 2023-3-28 09:49:05 | 显示全部楼层
azu2019 发表于 2023-3-27 17:17
感谢楼主分享这么详细的教程,非常强大!!请问grub主题可以使用鼠标点击吗

不可以
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-4-26 22:23

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表