【小白课程】如何在openKylin上个性化定制开关机动画

开关机动画是Linux系统的重要组成部分,其主要功能是在Linux内核启动的早期遮盖内核打印日志,并在内核刷新屏幕分辨率时保证屏幕显示的流畅性。

其中,openKylin操作系统使用plymouth组件作为开关机动画显示程序。Linux系统在启动时,从加载内核到进入登录界面时会进行多次屏幕刷新,影响观感,plymouth通过内核中对“内核模式设置”(Kernel Mode-Setting),能够向用户提供一个更加流畅和连续的开关机观感体验。

一、plymouth的功能

plymouth支持开关机动画定制,通过添加自定义的图片和脚本,用户可以使用自己定制的开关机动画,实现多样化的开关机体验。同时,当需要进行长时间的后台操作(如系统安装、备份)时,可以手动执行命令启动plymouth程序显示动画界面,实时显示进度等信息,同时能够避免在后台操作运行期间用户进行其他操作,保证后台操作不受干扰。

二、如何自定义开关机动画

1.查看plymouth主题相关内容的存放位置

/usr/share/plymouth/themes/目录下存放了各个主题包的素材,以openKylin-logo主题为例,下图是/usr/share/plymouth/themes/openkylin-logo下的内容:

其中,所有的png文件为plymouth动画显示需要的序列帧和显示其他信息(如进度)所需的素材:

openkylin-logo.plymouth文件记录了openKylin-logo主题所需的图片和脚本的路径,如图:

openkylin-logo.script为openkylin-logo主题的运行脚本,包含了该主题的所有显示逻辑。

2.创建自己的主题目录

创建目录:

mkdir /usr/share/plymouth/themes/mytheme

3.在新添加的主题目录中添加自己的素材

添加动画所需的png图片,创建mytheme.plymouth,如图:

创建mytheme.script,内容可参考openkylin-logo.script内容。

4.修改配置文件和显示脚本

在mytheme.plymouth中,指定/usr/share/plymouth/themes/mytheme为图片存放路径,指定/usr/share/plymouth/themes/mytheme.script为显示脚本。根据实际需要,修改mytheme.script脚本。

5.注册配置文件信息

执行命令:

sudo update-alternatives --install /usr/share/plymouth/themes/default.plymouth default.plymouth /usr/share/plymouth/themes/mytheme/mytheme.plymouth 160
sudo update-alternatives --set default.plymouth /usr/share/plymouth/themes/mytheme/mytheme.plymouth

6.更新initramfs

执行命令:

sudo update-initramfs -u

7.重启系统

重启系统后即可使新的自定义主题生效

8.修改前后对比

修改前的开关机动画:

修改后的开关机动画:

三、如何快速修改系统开关机主题

如果需要快速修改系统开关机主题,可以直接将自定义的序列帧图片1.png~72.png复制到/usr/share/plymouth/themes/openkylin-logo/下,替换原有图片(注意,自定义图片数量和序号要和原有文件数量和序号一致,如果原主题有1.png~100.png共一百张图片,则自定义的图片也需要有命名为1.png~100.png的一百张图片),然后执行sudo update-initramfs -u,重启后即可使新主题生效。需要说明的是,这样修改后,旧主题的内容将会被覆盖,不能恢复。

参考资料

plymouth官方网站:

https://www.freedesktop.org/wiki/Software/Plymouth/

plymouth脚本语法:

https://www.freedesktop.org/wiki/Software/Plymouth/Scripts/

plymouth源代码地址:

https://gitlab.freedesktop.org/plymouth/plymouth

  • 9
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值