Vagrant VS QEMU

Compare Vagrant vs QEMU and see what are their differences.

Vagrant

Vagrant is a tool for building and distributing development environments. (by hashicorp)

QEMU

Official QEMU mirror. Please see http://wiki.qemu.org/Contribute/SubmitAPatch for how to submit changes to QEMU. Pull Requests are ignored. Please only use release tarballs from the QEMU website. (by qemu)
Our great sponsors
  • InfluxDB - Access the most powerful time series database as a service
  • SonarLint - Clean code begins in your IDE with SonarLint
  • SaaSHub - Software Alternatives and Reviews
Vagrant QEMU
98 163
25,046 7,564
0.6% 3.1%
9.8 10.0
3 days ago 1 day ago
Ruby C
MIT License GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Vagrant

Posts with mentions or reviews of Vagrant. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-22.
  • Using a VM within Linux for programming?
    2 projects | reddit.com/r/linuxquestions | 22 Mar 2023
    You can give Vagrant a go (https://www.vagrantup.com). It is pretty handy for spinning up/down development VMs without even leaving your IDE.
  • How do hosting companies immediately create vm right after purchasing one?
    2 projects | reddit.com/r/linux | 5 Mar 2023
    Vagrant is a popular tool for launching virtual machines on your local desktop. https://www.vagrantup.com/
  • Installing Rust in a Raspberry Pi 3A+
    6 projects | reddit.com/r/rust | 27 Jan 2023
    And, for the record, if you ever need to do something cross falls down on and Docker isn't suited to (eg. some of my sites are on a shared webhost that uses FreeBSD), the simplest way I've found is to use Vagrant with a script like this to run inside Vagrant to copy the project in, trigger a build, and then copy the binary out.
  • Good Resources For Learning Intermediate and Advanced Linux Skills?
    2 projects | reddit.com/r/debian | 7 Jan 2023
    Have a look at vagrant to spin up VMs quickly, then use 'em to do stuff like configure a salt environment - you could incorporate cron jobs here ;)
  • Which technologies are usually overkill for a solo developer?
    3 projects | reddit.com/r/webdev | 15 Dec 2022
  • Virtualbox 7.0.4 kickstart issue
    5 projects | dev.to | 8 Dec 2022
    I was building a new version of YugabyteDB vagrant box with packer and virtual box. Because we (Yugabyte) have a new preview release out.
  • How would you set up your work laptop differently if you had to do it again?
    3 projects | reddit.com/r/devops | 29 Nov 2022
    I also suggest having a look at Vagrant (https://www.vagrantup.com/) for learning kind of work. It makes running isolated env easy and clean.
  • Is installing Linux as a second OS on a new PC worth it?
    2 projects | reddit.com/r/learnprogramming | 26 Nov 2022
  • How to choose the right API Gateway
    15 projects | dev.to | 22 Nov 2022
    Another point to consider is how difficult is it to install the API Gateway or redeploy the gateway when changes are made. Check what installation options are offered. Most modern API Gateways can be installed in many different ways(Package based, Docker, Helm, RPM) in any environment (Linux, Windows, macOS). For example, one of the biggest advantages of Kong is its wide range of installation choices, with pre-made containers such as Docker and Vagrant so you can get a deployment running quickly.
  • From WampServer, to Vagrant, to QEMU
    5 projects | dev.to | 8 Nov 2022
    Laravel wanted to make the entire PHP development process as seamless as possible. At the time, Laravel achieved this with Laravel Homestead, apre-packaged Vagrant box. Everything you would need would be bundled into a virtual machine, nice and neat, away from your OS. And this was how I was introduced to Vagrant. A means of packaging virtual machines into a portable format, so you could easily create local development environments. Vagrant worked by using a Vagrantfile to describe the virtual machine you would want to use, how it would be provisioned, the ports you would forward, and the filepaths you would want shared from host to guest. All of these tasks would be handled by the provider, the underlying virtual machine program itself, in my case, VirtualBox. Perhaps the one thing I liked the most about Vagrant, was the ability to provision my machine, clear down if I wanted to and have it back in a clean state for development.

QEMU

Posts with mentions or reviews of QEMU. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-20.
  • Ask HN: Where can I find a primer on how computers boot?
    12 projects | news.ycombinator.com | 20 Mar 2023
    The following is a pretty decent historical page about the pre-(U)EFI MBR (Master Boot Record) boot process:

    https://thestarman.pcministry.com/asm/mbr/STDMBR.htm

    Note that EFI/UEFI -- occurred much later in time than MBR...

    Related: https://en.wikipedia.org/wiki/Master_boot_record

    You might also wish to check out some emulators, most notably Bochs (https://bochs.sourceforge.io/) and QEMU (https://www.qemu.org/) because they simulate the boot process, and if you're in their debuggers, you should be able to inspect that process step by step -- but also more generally emulators for other machines/platforms/architectures (https://en.wikipedia.org/wiki/List_of_computer_system_emulat...) -- because in general, most of those emulators should simulate the given machine/platform/architecture's boot process...

  • Reverse Engineering and Customizing Hydrasynth Firmware
    8 projects | reddit.com/r/hydrasynth | 18 Mar 2023
    It's also possible to set up a little software-only debug environent based on an emulator like QEMU (https://www.qemu.org/) using gdb etc. but I haven't personally taken it far from there - yet? :)
  • Ask HN: Who is hiring? (March 2023)
    16 projects | news.ycombinator.com | 1 Mar 2023
    Qualcomm | Hyderabad, India | Full Time | ONSITE | QEMU

    My team is looking to hire a software developer to help us design and extend QEMU support [1] for the Hexagon DSP [2]. We're looking for candidates who have experience coding in C, C++ or Rust* and who aren't afraid of rolling up their sleeves and poring over disassembled code. This particular architecture is a bit more challenging than most, because it's a bit unique. It's a VLIW [3], so it's a great opportunity to learn about an interesting architecture. Millions of Hexagon DSPs are out there, most are found in Snapdragon SoCs for Android phones and more!

    We collaborate a lot with Open Source communities like QEMU, LLVM [4], the Linux kernel [5], and more. I love being able to work on Open Source software at my day job.

    You can contact me directly (email addr is in my HN user link). If you don't have experience with QEMU - don't worry! Most of us didn't have any experience with it until recently, too.

    The rest of the team you'd work with lives mostly in EU, US.

    * Rust experience may serve the role well but we don’t (yet) have any product software in Rust.

    [1] https://github.com/qemu/qemu/tree/master/target/hexagon

    [2] https://en.wikipedia.org/wiki/Qualcomm_Hexagon

    [3] https://en.wikipedia.org/wiki/Very_long_instruction_word

    [4] https://foundation.llvm.org/docs/sponsors/

    [5] https://www.linuxfoundation.org/our-members-are-our-superpow...

  • Linux software list. Discussion and advice welcome!
    36 projects | reddit.com/r/linuxquestions | 23 Feb 2023
    QEMU - machine emulator and virtualizer
  • Debugging FreeRTOS with QEMU in VSCode
    4 projects | dev.to | 15 Feb 2023
    In this post, I will step through an example setup that shows how to debug a FreeRTOS application in the Visual Studio Code (VSCode) editor using QEMU to emulate an Arm Cortex-M3 microcontroller. No actual hardware is required for this example, except a laptop or desktop as your development environment.
  • Dev C running .c programs problem/issue
    2 projects | reddit.com/r/linuxmint | 10 Feb 2023
    Your options are to use a toolchain available to you on Linux (e.g. LLVM), or to create a Windows VM and run Dev-C++ in the VM. (See https://www.virtualbox.org/wiki/Linux_Downloads or https://www.qemu.org/).
  • Suggestions for VGA mode
    2 projects | reddit.com/r/qemu_kvm | 5 Feb 2023
    #!/usr/bin/env bash # Special thanks to: # https://github.com/Leoyzen/KVM-Opencore # https://github.com/thenickdude/KVM-Opencore/ # https://github.com/qemu/qemu/blob/master/docs/usb2.txt # # qemu-img create -f qcow2 mac_hdd_ng.img 128G # # echo 1 > /sys/module/kvm/parameters/ignore_msrs (this is required) ############################################################################ # NOTE: Tweak the "MY_OPTIONS" line in case you are having booting problems! ############################################################################ MY_OPTIONS="+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check" # This script works for Big Sur, Catalina, Mojave, and High Sierra. Tested with # macOS 10.15.6, macOS 10.14.6, and macOS 10.13.6. ALLOCATED_RAM="7096" # MiB CPU_SOCKETS="1" CPU_CORES="8" CPU_THREADS="8" REPO_PATH="." OVMF_DIR="." # shellcheck disable=SC2054 args=( -enable-kvm -m "$ALLOCATED_RAM" -cpu Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,"$MY_OPTIONS" -machine q35 -usb -device usb-kbd -device usb-tablet -smp "$CPU_THREADS",cores="$CPU_CORES",sockets="$CPU_SOCKETS" -device usb-ehci,id=ehci # -device usb-kbd,bus=ehci.0 # -device usb-mouse,bus=ehci.0 -device nec-usb-xhci,id=xhci -global nec-usb-xhci.msi=off # -device usb-host,vendorid=0x8086,productid=0x0808 # 2 USD USB Sound Card # -device usb-host,vendorid=0x1b3f,productid=0x2008 # Another 2 USD USB Sound Card # -device vfio-pci,host=3:00.0,bus=pcie.0 -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" -drive if=pflash,format=raw,readonly=on,file="$REPO_PATH/$OVMF_DIR/OVMF_CODE.fd" -drive if=pflash,format=raw,file="$REPO_PATH/$OVMF_DIR/OVMF_VARS-1024x768.fd" -smbios type=2 -device ich9-intel-hda -device hda-duplex -device ich9-ahci,id=sata -drive id=OpenCoreBoot,if=none,snapshot=on,format=qcow2,file="$REPO_PATH/OpenCore/OpenCore.qcow2" -device ide-hd,bus=sata.2,drive=OpenCoreBoot -device ide-hd,bus=sata.3,drive=InstallMedia -drive id=InstallMedia,if=none,file="$REPO_PATH/BaseSystem.img",format=raw -drive id=MacHDD,if=none,file="$REPO_PATH/mac_hdd_ng.img",format=qcow2 -device ide-hd,bus=sata.4,drive=MacHDD # -netdev tap,id=net0,ifname=tap0,script=no,downscript=no -device virtio-net-pci,netdev=net0,id=net0,mac=52:54:00:c9:18:27 -netdev user,id=net0 -device virtio-net-pci,netdev=net0,id=net0,mac=52:54:00:c9:18:27 # -netdev user,id=net0 -device vmxnet3,netdev=net0,id=net0,mac=52:54:00:c9:18:27 # Note: Use this line for High Sierra -monitor stdio -device VGA,vgamem_mb=128 ) qemu-system-x86_64 "${args[@]}"
  • Ask HN: Who is hiring? (February 2023)
    14 projects | news.ycombinator.com | 1 Feb 2023
    Qualcomm | Hyderabad, India | Full Time | ONSITE | QEMU

    My team is looking to hire a software developer to help us design and extend QEMU support [1] for the Hexagon DSP [2]. We're looking for candidates who have experience coding in C, C++ or Rust* and who aren't afraid of rolling up their sleeves and poring over disassembled code. This particular architecture is a bit more challenging than most, because it's a bit unique. It's a VLIW [3], so it's a great opportunity to learn about an interesting architecture. Millions of Hexagon DSPs are out there, most are found in Snapdragon SoCs for Android phones and more!

    We collaborate a lot with Open Source communities like QEMU, LLVM [4], the Linux kernel [5], and more. I love being able to work on Open Source software at my day job.

    You can contact me directly (email addr is in my HN user link). If you don't have experience with QEMU - don't worry! Most of us didn't have any experience with it until recently, too.

    The rest of the team you'd work with lives mostly in EU, US.

    * Rust experience may serve the role well but we don’t (yet) have any product software in Rust.

    [1] https://github.com/qemu/qemu/tree/master/target/hexagon

    [2] https://en.wikipedia.org/wiki/Qualcomm_Hexagon

    [3] https://en.wikipedia.org/wiki/Very_long_instruction_word

    [4] https://foundation.llvm.org/docs/sponsors/

    [5] https://www.linuxfoundation.org/our-members-are-our-superpow...

  • Need help with running OpenBSD on VirtualBox
    3 projects | reddit.com/r/openbsd | 31 Jan 2023
    Give qemu a try.
  • Multi-Arch Docker Containers
    3 projects | dev.to | 29 Jan 2023
    Next, you need to enable Qemu support for your Docker host instance. Qemu is a generic machine emulator and virtualiser. In simple terms, it allows your machine with one type of processor to emulate other types of processor, allowing your machine to execute scripts on different processor architectures.

What are some alternatives?

When comparing Vagrant and QEMU you can also consider the following projects:

UTM - Virtual machines for iOS and macOS

Unicorn Engine - Unicorn CPU emulator framework (ARM, AArch64, M68K, Mips, Sparc, PowerPC, RiscV, S390x, TriCore, X86)

TermuxArch - Experience the pleasure of the Linux command prompt in Android, Chromebook, Fire OS and Windows on smartphone, smartTV, tablet and wearable https://termuxarch.github.io/TermuxArch/

Packer - Packer is a tool for creating identical machine images for multiple platforms from a single source configuration.

Ansible - Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems. https://docs.ansible.com.

xemu - Original Xbox Emulator for Windows, macOS, and Linux (Active Development)

Capistrano - Remote multi-server automation tool

em-dosbox - An Emscripten port of DOSBox

virt-manager - Desktop tool for managing virtual machines via libvirt

Puppet - Server automation framework and application

MicroPython - MicroPython - a lean and efficient Python implementation for microcontrollers and constrained systems