# euri-mklive universal CLI iso builder. any distro, from any distro. build a debian iso on arch. an arch iso on fedora. an artix iso on ubuntu. doesn't matter. ## install ```bash pip install . # or pipx install . ``` ## usage ```bash # see what's supported euri-mklive supported # build from a config euri-mklive build my-config.yaml -o ./output ``` ## config yaml config that defines everything: ```yaml distro: artix # debian | ubuntu | arch | artix | void | alpine | fedora arch: x86_64 init: dinit # dinit | openrc | runit | s6 hostname: mydistro iso: name: My Distro version: "1.0" label: MYDISTRO users: - name: user shell: /bin/bash groups: [wheel] packages: - linux - plasma-desktop - nano - git services: - connmand - sddm ``` ## supported distros | distro | bootstrap tool | init systems | |--------|---------------|--------------| | debian | debootstrap | systemd | | ubuntu | debootstrap | systemd | | arch | pacstrap | systemd | | artix | basestrap | openrc, runit, s6, dinit | | void | xbps-install | runit, dinit | | alpine | apk | openrc | | fedora | dnf | systemd | ## how it works 1. reads your yaml config 2. bootstraps the target distro into a temporary rootfs 3. installs your packages 4. configures users, services, hostname 5. installs the bootloader 6. squashes the rootfs into an ISO 7. done. ## license GPL-2.0