[Make Operating System Image]. Herramienta de Python diseñada para construir imágenes de sistemas operativos (SO) personalizadas, reproducibles y "legacy-free" [sin soporte para tecnologías antiguas], basándose principalmente en el ecosistema systemd. Solo admite sistemas EFI, no MBR/BIOS.
# mkosi
# mkosi -d debian -r bookworm --bootable
# mkosi --format=tar --output=mi-sistema.tar
Nota.- El formato de salida puede ser "directory" [directorio simple], "disk" [archivo de imagen con tabla de particiones GPT, por defecto] o "tar" [tarball de un directorio simple]
# mkosi -d fedora -p emacs -p nginx
Para construcciones más complejas y reproducibles, se recomienda usar un archivo de configuración, típicamente llamado `mkosi.default`, en el mismo directorio donde se ejecuta `mkosi`.
# nano mkosi.default
[Distribution]
Distribution=ubuntu
Release=focal
#
[Output]
Format=disk
Output=ubuntu-vm.raw
RootSize=10G
Bootable=true
#
[Packages]
Packages=
python3
git
network-manager
# Se puede usar ! para eliminar un paquete base
# !unwanted-package
"mkosi" leerá la configuración de "mkosi.default" y construirá la imagen "ubuntu-vm.raw".
# mkosi clean