【小白课程】如何在openKylin上个性化定制开关机动画
开关机动画是Linux系统的重要组成部分,其主要功能是在Linux内核启动的早期遮盖内核打印日志,并在内核刷新屏幕分辨率时保证屏幕显示的流畅性。
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