项目介绍
什么是 mkosi?
mkosi 是一个功能强大的工具,用于生成定制化的操作系统镜像。其名称来源于 "Make Operating System Images" 的缩写。mkosi 可以视为对一些常见包管理器命令(如 dnf --installroot
、apt
、pacman
和 zypper
)的高级封装,旨在以更智能和简便的方式生成操作系统磁盘镜像。
安装指南
mkosi 可以通过多种方式安装。用户可以通过发行版的包管理器直接安装 mkosi,如果要安装开发版本,可以从 git 仓库中获取。在开始安装前,确保安装的是至少 v16 或更高版本。版本检查可以通过 mkosi --version
命令来进行。
直接从仓库运行 mkosi
要从 mkosi 的 git 仓库直接运行它,可以使用下列步骤:
git clone https://github.com/systemd/mkosi
ln -s $PWD/mkosi/bin/mkosi /usr/local/bin/mkosi
mkosi --version
使用 Python 安装
除了从 git 仓库中进行安装,用户还可以利用 pipx
工具从 git url 中直接安装 mkosi。这将 mkosi 安装到 Python 的虚拟环境中,并将可执行文件放置到 ~/.local/bin
中。
pipx install git+https://github.com/systemd/mkosi.git
mkosi --version
用户还可以将 mkosi 打包成 zip 应用程序,并将其部署到系统的路径中。
作为 kernel-install 插件使用
mkosi 还可以作为 kernel-install
的插件用于构建 initrd。需要将 kernel-install/50-mkosi.install
文件复制到 /usr/lib/kernel/install.d
中以启用此功能。initrd 的额外发行版配置可以在 /usr/lib/mkosi-initrd
中进行。而用户的自定义配置可以放在 /etc/mkosi-initrd
。
开发和贡献
如果想参与 mkosi 的开发,可以使用 mypy
和 pytest
进行类型检查和测试。项目的测试和类型检查集成在持续集成 (CI) 流程中,但也可以在本地计算机上运行这些测试。
参考资料和社区
mkosi 的开发者和用户社区活跃于多个平台。主要的 git 仓库托管在 GitHub 上,相关的讨论和支持可以通过 Matrix 平台的 #mkosi:matrix.org 频道进行。
欢迎对 mkosi 项目感兴趣的用户和开发者加入我们的社区,共同探索定制化操作系统镜像生成的潜力。