I like the sound of it, especially the compact single-file executable with minimal dependency. Forgive me for my ignorance, I may not fit the target user profile - I'm not familiar with KVM, and have only occasionally used QEMU. I read briefly about Cloud Init when setting up Multipass for creating new Ubuntu VMs.
What is KVM? - https://www.redhat.com/en/topics/virtualization/what-is-KVM
Can this tool `flint` replace some uses of Docker? I'm curious if I can use it for local development purpose, or for running stuff in production like isolating applications.
flint launch [image-name]
Launch a new VM with smart defaults. Supports launching from images or templates.
Is there a registry of images, like OS versions? Or maybe it's more decentralized than that. It also sounds related to OCI (Open Container Initiative) format that Podman supports, and qcow2 images for QEMU.Could you give a brief summary of what this tool enables, for a potential user who doesn't know much about KVM?
Quick summary of the technology is that there is two software parts for virtualization, the hypervisor and the virtual machine monitor.
First is the hypervisor that uses the hardware virtualization features of your cpu to emulate hardware interrupts and virtual memory paging. This part is usually buint into the operating system kernel and one will be prefered per operating system. Common ones are Hyper-V on Windows, Virtualization.Framework on Mac and KVM on Linux
With the kernel handling the low level virtualization you need a Virtual Machine Monitor to handle the higher level details. The VMM will manage what vm image mounted and how the packets in and out of the vm are routed. Some example of VMMs are QEMU, VirtualBox and libVirt.
Flint, the app being shown is a vibe coded web app wrapper around libVirt. On the bright side this app should be safe to use but it also does not do much beyond launching pre made virtual machines. As a developer the work you need to do is provide an Linux distribution (Ubuntu, etc), a container manager (Kubernetes, Docker) and launch your own containers or pre made ones from the internet (Dev Containers).
That's a very helpful summary, much appreciated. It helped me understand the layers involved.
KVM is just your Linux Kernel Virtual Machine. So you can manage VM's on Linux. It is not related to Docker.
Docker products are a maze of naming confusion. If comparing to Docker Desktop (which exists for Linux too) then it's related since that's also a virtual machine system.
It's also the technology that many (most?) VPS providers use, eg Digital ocean, Vultr, Linode, etc.