Virtual WorkStation (or Vitus Wagner's Spice) is set of script wrappers to QEMU/KVM intened to use on notebooks or developer's workstations, where few virtual machines exist, these machines are seldom created and guest OS configurations are carefully tuned.
News
17.jul.2018 Version 0.6 released
vws is distributed under terms of GNU Public License version 3 or above
Main objectives:
- Virtual machines should be kept as isolated as possible. One should be able to easily move them around, even to the hosts wbere no VWS installed.
- Most virtual machines are workstations, which means you need GUI, sound, USB devices etc on them.
- Networking is fully controlled by user.
- Use of our scripts shouldn't prevent users from operating directly with QEMU command line and monitor.
- Script layer should be as thin as possible, readable and understandable by almost anyoune
- No new hairy formats should be invented, just a simple conventions how to store VMs in filesystem to make in operable by scripts and how to put options into shell scripts to make them editable by wizard-like interface
- No attempt to support every virtualization technology out there. Concentrate on QEMU and do our best with it.
Current state
Now project reached stage, where simple scripts can be easily installed and manage collection of dozens of virtual machines.
For more than year it is used to maintain build farm for one big crossplatform project.
See Concepts for whole picture how to use it.
- We support easy interface for creating machine either by attaching installation iso-image and starting installation or by importing existing image. Any format supported by qemu-img (i.e. qemu native formats, vmware or virtial box images) can be used.
- There is support for autostart machines, which are started on system boot.
- On system shutown it tries to gracefuly shutdown all virtual machines including ones, started interactively.
- There is easy way to attach iso image to virtual cdrom
- USB devices can be connected to VM either via vws script (on host where machine is running) or via spice client (on the workstation where user is sitting).
Project Phases
- Collect Useful tips about QEMU - done, but additions are welcome
- Write simple scripts - done, but there is always room to perfection
- Write GUI to control virtual machine though monitor - future
- Add graphic console to GUI using pygtk spice widget - futire