None, I use Docker for Linux, and Proton (Heroic) for Windows.
But if I had to pick a virtual machine: libvirt with virt-manager as a frontend, which uses KVM for virtualization.
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
None, I use Docker for Linux, and Proton (Heroic) for Windows.
But if I had to pick a virtual machine: libvirt with virt-manager as a frontend, which uses KVM for virtualization.
From my other comment:
Then I created a Docker image with Linux, Gnome, and novnc so I can spin one up instantly with little resource overhead and control it from any web browser.
Maybe I should release my Dockerfile.
I might actually be interested. It's like a lightweight alternative to Proxmox?
Sort of, Proxmox does use noVNC I think, but it's a lot of overhead. This is just a docker
command. I've finally put a page up for it: https://nowsci.com/webbian/
But if I had to pick a virtual machine: libvirt with virt-manager as a frontend, which uses KVM for virtualization.
Its fair bcs vmware workstation does not support gpu passthrough libvirt with virt-manager is the only way
Correct me I'd I'm wrong, but with docker you're limited to the filesyatems and the image of the OS you're installing. If you need to experiment with the pre-OS boot events, can that even be accomplished with docker? E.g., trying out different GRUB settings, setting up LUKS with dropbear etc. I think those things require a VM.
Yeah, you are correct. Docker shares the kernel with the host operating system, it doesn't use hardware virtualization. That's why it's so fast and simple, but it also means it's not a traditional VM and thus comes with some limitations.
GNOME Boxes because it doesn't require 5 academic degrees to set up and I'm a GNOME user.
Same.
The lack of graphics acceleration is a bit painful though.
VirtualBox won't work on Fedora 40 AFAICT, and once installed it can't be uninstalled.
Qemu/KVM and Virt Manager. I have three VMs that I pass my GPU to: a Hackintosh, a Windows 10, and and Windows 7.
virtmanager as frontend for qemu/kvm. I tried the commandline but it's too annoying
Usually VirtualBox. It's easy and free.
a rather odd choice given the alternatives
Besides VMWare it always seemed the easiest for me to quickly make a Windows VM or so. Everything else usually had more configuration steps. But that's been a while ago. There could very well have been easier tools available in the mean time. I never bothered to look.
I only ever used "permanent" virtualization once on my server. I think with Xen. But it didn't give me any benefits for my use case so I dropped it later on. Also probably at least ten years ago.
KVM
(VMware is proprietary software)
KVM + Qemu + libvirt + virt-manager = ❤️
I used KVM with virt-manager
for a long time. Even ran a gaming VM with GPU pass-through.
Then I created a Docker image with Linux, Gnome, and novnc so I can spin one up instantly with little resource overhead and control it from any web browser.
Virtmanger-kvm-qemu
I use virt-manager, aka Virtual Machine Manager. Using this specifically because of the winapps for Linux repo has instructions on how to get Windows apps to run through the VM to be integrated in a Linux environment.
How "scriptable" is virt-manager?
My biggest issue with VirtualBox is that I have to install OSes as if I'm actually installing them. There aren't any images (at least that I'm aware of) that can run with a command, like deploying an EC2.
Virt-manager isn't super scriptable but the underlying libvirt can be controlled by virsh which is a shell interface to libvirt. You can use both at the same time, e.g. start and stop via virsh and access to gui container via virt-manager/virt-viewer.
I'm kinda lazy so when I need one, I just use Gnome Boxes and it's pretty easy to setup.
Qemu+Kvm with virt-manager is my boy nowadays. But I'm not a heavy user of Vms, just experimented with this to build some Flatpak. But plan on trying out other distributions, just for science. It wasn't easy to figure out how to share a folder, and I could not get drag and drop or clipboard share to work. Still though, its faster than any other solution. I used VirtualBox in the past, which was easy to work with.
Proxmox seem powerfull
It's a Type1, not Type2
https://en.wikipedia.org/wiki/Hypervisor#Classification
I use Proxmox for the machine that I use to download all of the Linux ISOs I want. You know, with a VPN, through BitTorrent. Linux ISOs.
Proxmox isn't really its own hypervisor. It combines a few common projects to make a OS. It is pretty much KVM with corosync for clustering.
With that being said it is a solid platform. Just keep in mind it is just standard Linux virtualization and for single nodes you can get the exact same setup easily on any Linux system.
Gnome boxes.
Based on QEMU+KVM so it's quite robust. It works pretty well, plus it has various little features working out of the box that in some other software is a pain in the arse to configure.
Sticks out a bit on my system due to still being GTK3, but there is a GTK4 prototype out that usually works well.
E: downvoting anybody who says Gnome Boxes because you use a different virtual machine frontend is laughably pathetic lmao. Some people in the Linux community are such losers lol
Does it matter what front end it uses if the underlying environment is QEMU+KVM. Upvote for tha above.
I use libvirt to do all my kvm/qemu stuff on my server. Using cockpit-machines web UI as a frontend. On my workstation if I ever need a VM I usually turn to Gnome Boxes for simplicity
Virtmanager and qemu/kvm
Virt manager for qemu. I use docker and distrobox for Linux distros
I recently managed to use my windows partition (for dual boot) as a disk for a qemu. I don't use it but really cool trick anyways. Tutorial here
Also it's not very healthy for windows since it is not designed for constant hardware changes. But idc all my apps are installed on D: so I can just reinstall it without thinking about it much
So far I’ve been fine with some Oracle Virtualbox and some using the VM Manager that was in my distro or maybe I downloaded it. It’s just called Virtual Machine Manager made by Red Hat. Libvirt.
Between those I’ve been able to do everything I have needed.
Linux: qemu
OpenBSD: vmm, qemu when vmm isn't good enough
Virt-Manager, even works remotely via SSH.
Virtualbox
Owned by Oracle. Stay away from Oracle.
It also taints the kernel with a useless module and doesn't really offer much in the way of features over plain old kvm qemu