Initially I started this project shortly after I moved from virtualbox to qemu. The move was really a long term task. Even if I wasn't satisfied with virtualbox anymore - as long as it was running somehow there was no urgent necessity. However, one day was the day I started to move. It was triggered as I got a new powerful computer and I wanted to use PCI passthru - thus there was no alternative to qemu.
Like with every new software the first steps with qemu were really hard. I checked out some tools like aqemu and libvirt. But at the end I decided to using a shell script to run a virtual machine. It was the most optimal method to me. Shortly after there came up the wish to be able to work more comfortable with the virtual machines. Additional there was the question how to automatically start/stop virtual machines if the host does shutdown or start. Now, libvirt can do this but was out already. Even I prefer simple solutions. So I started with a simple script called qemu-init to handle all virtual machines the same way. And keeping the usage of multiple virtual machines in mind a small wrapper qemud was followed quickly.
Through the time I increased the functionality by adding more (small) tools. Unfortunately the complexity of code increases too. And like every growing project things changed. The code was made more flexible and efficient, some functionality was redesigned. At some point I decided to put all control function into one tool: qemu-adm. All the others will be handled as libraries, except qemud which acts like a stop/start daemon. Thus to the user side there is one tool (qemu-adm) left only. With multiple tools one have to know which tool will do the a specific task. One single tool is a step to simplicity, isn't it? Another goal is to make the start with qemu for newcomers not only easy but easiest and as far as possible intuitive. A (default) virtual machine can be created very quickly and easily. Have a look at the Quickstart page. Afterwards there is a good starting point to go more familiar with qemu.
Even if the initial tool qemu-init is now a library, the project name qemu-init will be kept. It is still a good descriptive name for the package. The main task was and is to start and stop qemu virtual guests. qemu-init is under active development - there are enough ideas of improvements in the future.
Overall I think it is not so bad .