无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: 2011yaya2007777
打印 上一主题 下一主题

[发布] 增强 GRUB4DOS 菜单编辑功能,支持动画,支持精简字库,支持图形菜单

    [复制链接]
1#
发表于 2021-8-16 19:07:30 | 显示全部楼层
hhh333 发表于 2021-8-16 18:18
yaya,有不有32位的外部命令的了?总觉得不够全

别催了。没有。
目前32位外部命令无法从g4e获取正确的efi系统表和镜像句柄,所有要调用uefi功能的外部命令都没法用。
我也很怀疑是否有必要支持 IA32 UEFI。毕竟 win11 都不支持了。
这玩意根本不重要,我觉得解决现有的问题优先级应该更高。
回复

使用道具 举报

2#
发表于 2023-1-29 11:16:58 | 显示全部楼层
求道者 发表于 2023-1-29 11:06
linux下用lzma压了字体,还真就乱码了。
在现在这阶段gzip确实不是最好的选择,但g4d扩展麻烦确实是这样 ...

linux下lzma压缩好像要开什么“记录文件原始大小”之类的选项,记不清了。
-----
我的grub2分支是有ud支持的。zstd压缩支持也移植过,不过没推送到我的github上。
zstd确实不错。

点评

g4d用的lzma必须要求记录文件原始大小。好像当年采用lzma时说的一个意义就是文件大小在开头,很方便。zstd感觉可能确实加一下比较好,(如果像我这样用来启动linux/windows/pe三合一的人多的话),zstd似乎现在linux  详情 回复 发表于 2023-1-29 12:08
老实说,我觉得主线自己就应该放弃现有的类bash语法,随便找个现代点的脚本语言解析器,grub2又没有为其开发的脚本只有些乱七八糟的配置文件。 重写配置没什么包袱。 为其开发的mod,又是调用的API,完全不存在什  详情 回复 发表于 2023-1-29 11:24
回复

使用道具 举报

3#
发表于 2023-1-29 11:29:44 | 显示全部楼层
求道者 发表于 2023-1-29 11:24
老实说,我觉得主线自己就应该放弃现有的类bash语法,随便找个现代点的脚本语言解析器,grub2又没有为其 ...

我当然支持。早就想把这个傻逼bash解析器删了。
我的grub2分支是支持lua的,以前还尝试移植过python。
个人觉得lua/micropython都行。
grub2的gfxmenu主题系统我也不喜欢。我去年试过移植lvgl,后来太监了。
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=431866

点评

导入图形库固然是不错,但grub2现有的主题不是天文数字?用户能复用这些主题的话,可以省很多事。  详情 回复 发表于 2023-1-29 11:37
现在grub2不也不支持函数吗? 现代脚本语言最显著的特征就是支持函数了吧。 c++不是还有对象吗?  详情 回复 发表于 2023-1-29 11:33
类bash连bash都没完全支持就很可笑。  详情 回复 发表于 2023-1-29 11:30
回复

使用道具 举报

4#
发表于 2023-1-29 11:39:11 | 显示全部楼层
求道者 发表于 2023-1-29 11:33
现在grub2不也不支持函数吗?
现代脚本语言最显著的特征就是支持函数了吧。
c++不是还有对象吗?

grub2那个类bash也支持函数啊。
https://github.com/supergrub/sup ... nus/sgd/autoiso.cfg

点评

grub2能搞的东西太少了。 高级功能我几乎没用过。 他这个语法和资源匮乏度。 就把人劝退。 我对GRUB2的了解仅限于模组多。  详情 回复 发表于 2023-1-29 11:53
回复

使用道具 举报

5#
发表于 2023-1-29 11:41:07 | 显示全部楼层
求道者 发表于 2023-1-29 11:37
导入图形库固然是不错,但grub2现有的主题不是天文数字?用户能复用这些主题的话,可以省很多事。

想顺便支持鼠标/触摸屏。
gfxmenu那一套东西太僵硬了,而且bug太多。

点评

我就猜到你想用图形库写GUI,但这不应该第一阶段该做的东西。 gfxmenu他是主题模块,易用就够了。 开发好不好用就没所谓。 而且这显然不是第一阶段该做的工作。  详情 回复 发表于 2023-1-29 11:47
回复

使用道具 举报

6#
发表于 2023-1-29 11:53:47 | 显示全部楼层
求道者 发表于 2023-1-29 11:47
我就猜到你想用图形库写GUI。
gfxmenu他是主题模块,易用就够了。
开发好不好用就没所谓。

gfxmenu也是可以和图形库共存的,将来等到lvgl成熟了,可以解析主题之后直接送给lvgl绘制就行。
gfxmenu的主要问题还是它绘制图像的部分有很多bug,不能稳定复现,也不好调试。
这个的优先级确实不高。

点评

直接重构GFXMENU嘛,反正新的图形库移植了,怎能不试试? 但这显然没啥优先度。 G4D的特性与兼容手段移植,和脚本引擎移植才是第一阶段该做的工作。  详情 回复 发表于 2023-1-29 11:56
回复

使用道具 举报

7#
发表于 2023-1-29 12:23:48 | 显示全部楼层
求道者 发表于 2023-1-29 11:56
直接重构GFXMENU嘛,反正新的图形库移植了,怎能不试试?
但这显然没啥优先度。
G4D的特性与兼容手段移 ...

主线是不接受这些想法的。以前bean移植过lua,进了主线。后来官方又把lua从主线里面删了,弄得bean很不高兴。
你所说的g4d的特性,也就是bios下的map吧,这个超出了我的能力。
其他我没看出有啥特别的。

点评

从保守的角度来讲。 这种破坏性的更新,那是不可能会出现在小更新里的。 怕不是下个大版本才有可能。  详情 回复 发表于 2023-1-29 12:28
回复

使用道具 举报

8#
发表于 2023-1-29 12:24:33 | 显示全部楼层
sunsea 发表于 2023-1-29 12:08
g4d用的lzma必须要求记录文件原始大小。好像当年采用lzma时说的一个意义就是文件大小在开头,很方便。zst ...

uefi下不存在这个问题。

点评

那就挺好。  详情 回复 发表于 2023-1-29 12:29
回复

使用道具 举报

9#
发表于 2023-1-29 12:47:09 | 显示全部楼层
求道者 发表于 2023-1-29 12:28
从保守的角度来讲。
这种破坏性的更新,那是不可能会出现在小更新里的。
怕不是下个大版本才有可能。

bean移植lua的时候grub2的版本是1.9x,在2.0发布前被官方删了。他们都是一些gnu旧时代的老古董,比较排斥非gnu的东西。
所以bean后来不鸟官方了,弄了个burg。

点评

难说,毕竟在过国外许可证问题是真的会引来官司。  详情 回复 发表于 2023-1-29 13:07
回复

使用道具 举报

10#
发表于 2023-1-29 14:38:47 | 显示全部楼层
求道者 发表于 2023-1-29 13:07
难说,毕竟在国外许可证问题是真的会引来官司。
大清自有国情在此。
开源协议有没法律效力。

grub官方不接受lua不是许可证的问题。
他们就是不想在项目的关键部分引入一个外部的项目。(虽然说lua就是适合这种情况的)
比如Linux的使用这么广泛,GNU他们就是看不顺眼,觉得Linux还是不够“清真”,非得再搞个半死不活的GNU Hurd。

点评

引入二进制黑盒子确实不清真,总有人不会妥协的。 但大部分人肯定能够忍受。 比方说,商业级的GPU有SR-IOV,而消费级有芯片相同的卡。 AMD这种对开源友好的厂商,都会用驱动里二进制bold和固件锁这部分功能。 其  详情 回复 发表于 2023-1-29 18:17
回复

使用道具 举报

11#
发表于 2023-1-29 19:00:11 | 显示全部楼层
本帖最后由 wintoflash 于 2023-1-29 19:01 编辑
求道者 发表于 2023-1-29 18:54
wintoflash氏,你那个grub2分支停止维护是了吧?
但是wimboot还能编译吗?
移植到更新版的GRUB2能搞吗?

我的grub2分支里面wimboot是依赖于map的,不能独立出来用。
https://github.com/Mexit/MultiOS-USB/issues/4
这里面有我单独移植的一个uefi下用的wimboot模块,官方grub2 20.4/2.06, redhat grub2 应该都可以用。当然,功能少了很多,和原版wimboot基本上一样。

点评

顺便问一下,grub2没法从iso9660引导BOOTMGR.EFI吗? [attachimg]518851[/attachimg]  详情 回复 发表于 2023-1-29 19:02
回复

使用道具 举报

12#
发表于 2023-1-29 19:13:28 | 显示全部楼层
求道者 发表于 2023-1-29 19:02
顺便问一下,grub2没法从iso9660引导BOOTMGR.EFI吗?

我觉得这个帖子已经跑题了。
你这是启动loopback挂载的ISO里面的bootmgfw.efi?有啥用?

两方面的问题:1.官方grub2 chainloader加载efi时对根设备的处理有问题,这个我已经反馈给官方了,我的分支里面修了。2. bootmgfw.efi自己对光驱的处理有问题,启动后会报bcd错误。这个需要对传递的设备路径做特殊处理,我懒没做。

点评

对了这个补丁在哪? 干脆顺便编译了。  详情 回复 发表于 2023-1-29 19:45
我在做混合ISO。 用来在UEFI下做USB-CDROM启动。 现在这个情况。 wimboot能抢救吗?  详情 回复 发表于 2023-1-29 19:19
回复

使用道具 举报

13#
发表于 2023-1-29 19:27:47 | 显示全部楼层
求道者 发表于 2023-1-29 19:19
我在做混合ISO。
用来在UEFI下做USB-CDROM启动。(U盘量产了一个CD-ROM的LUN)。
几乎所有的文件都塞在 ...

可以。我当初移植wimboot就是为的这个。

点评

行吧,我编译看看。  详情 回复 发表于 2023-1-29 19:36
回复

使用道具 举报

14#
发表于 2023-1-29 20:04:06 | 显示全部楼层

点评

打了补丁了似乎没用。 此BUG似乎只出现在iso9660下。 还是同样的报错。 然后我把ISO刻录到U盘上,在实体机里能启动到LBA1的GRUB里,但是GRUB似乎无法检测到iso9660。  详情 回复 发表于 2023-1-30 00:06
编译还蛮费时间的。  详情 回复 发表于 2023-1-29 21:58
回复

使用道具 举报

15#
发表于 2023-3-18 09:40:26 | 显示全部楼层
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-12 19:42

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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